CarPackageManager

public final class CarPackageManager
extends Object

java.lang.Object
   ↳ android.car.content.pm.CarPackageManager


Provides car specific API related with package management.

Summary

Constants

String MANIFEST_METADATA_TARGET_CAR_VERSION

Manifest metadata used to specify the minimum major and minor Car API version an app is targeting.

Public methods

CarVersion getTargetCarVersion()

Gets the Car API version targeted by app (as defined by MANIFEST_METADATA_TARGET_CAR_VERSION.

boolean isActivityDistractionOptimized(String packageName, String className)

Returns whether an activity is distraction optimized, i.e, allowed in a restricted driving state.

boolean isPendingIntentDistractionOptimized(PendingIntent pendingIntent)

Returns whether the given PendingIntent represents an activity that is distraction optimized, i.e, allowed in a restricted driving state.

boolean isServiceDistractionOptimized(String packageName, String className)

Check if given service is distraction optimized, i.e, allowed in a restricted driving state.

Inherited methods

Constants

MANIFEST_METADATA_TARGET_CAR_VERSION

Added in API level 33
public static final String MANIFEST_METADATA_TARGET_CAR_VERSION

Manifest metadata used to specify the minimum major and minor Car API version an app is targeting.

Format is in the form major:minor or major.

For example, for Android 13, it would be: <meta-data android:name="android.car.targetCarVersion" android:value="33"/>

Or: <meta-data android:name="android.car.targetCarVersion" android:value="33:0"/>

And for Android 13 first update: <meta-data android:name="android.car.targetCarVersion" android:value="33:1"/>

Constant Value: "android.car.targetCarVersion"

Public methods

getTargetCarVersion

Added in API level 33
public CarVersion getTargetCarVersion ()

Gets the Car API version targeted by app (as defined by MANIFEST_METADATA_TARGET_CAR_VERSION.

If the app manifest doesn't contain the MANIFEST_METADATA_TARGET_CAR_VERSION metadata attribute or if the attribute format is invalid, the returned CarVersion will be using the target platform version as major and 0 as minor instead.

Returns
CarVersion targeted Car API version (as defined above)

isActivityDistractionOptimized

Added in API level 29
public boolean isActivityDistractionOptimized (String packageName, 
                String className)

Returns whether an activity is distraction optimized, i.e, allowed in a restricted driving state.

Parameters
packageName String: the activity's PackageItemInfo.packageName.

className String: the activity's PackageItemInfo.name.

Returns
boolean true if the activity is distraction optimized, false if it isn't or if the value could not be determined.

isPendingIntentDistractionOptimized

Added in API level 30
public boolean isPendingIntentDistractionOptimized (PendingIntent pendingIntent)

Returns whether the given PendingIntent represents an activity that is distraction optimized, i.e, allowed in a restricted driving state.

Parameters
pendingIntent PendingIntent: the PendingIntent to check.

Returns
boolean true if the pending intent represents an activity that is distraction optimized, false if it isn't or if the value could not be determined.

isServiceDistractionOptimized

Added in API level 29
public boolean isServiceDistractionOptimized (String packageName, 
                String className)

Check if given service is distraction optimized, i.e, allowed in a restricted driving state.

Returns
boolean