Loading src/com/android/permissioncontroller/permission/data/CarrierPrivilegedStatusLiveData.kt +7 −6 Original line number Diff line number Diff line Loading @@ -24,26 +24,27 @@ import com.android.permissioncontroller.PermissionControllerApplication * A LiveData which represents the carrier privileged status for a package * * @param app The current application * @param uid The uid of the package * @param packageName The name of the package */ class CarrierPrivilegedStatusLiveData private constructor( private val app: Application, private val uid: Int private val packageName: String ) : SmartUpdateMediatorLiveData<Int>() { val telephonyManager = app.getSystemService(TelephonyManager::class.java)!! override fun onUpdate() { value = telephonyManager.getCarrierPrivilegeStatus(uid) value = telephonyManager.checkCarrierPrivilegesForPackageAnyPhone(packageName) } /** * Repository for [CarrierPrivilegedStatusLiveData]. * <p> Key value is a package uid, value is its corresponding LiveData. * <p> Key value is a package name, value is its corresponding LiveData of * [android.telephony.Annotation.CarrierPrivilegeStatus] */ companion object : DataRepository<Int, CarrierPrivilegedStatusLiveData>() { override fun newValue(key: Int): CarrierPrivilegedStatusLiveData { : DataRepository<String, CarrierPrivilegedStatusLiveData>() { override fun newValue(key: String): CarrierPrivilegedStatusLiveData { return CarrierPrivilegedStatusLiveData(PermissionControllerApplication.get(), key) } } Loading src/com/android/permissioncontroller/permission/service/AutoRevokePermissions.kt +1 −2 Original line number Diff line number Diff line Loading @@ -114,7 +114,6 @@ import com.android.permissioncontroller.permission.utils.Utils.PROPERTY_AUTO_REV import com.android.permissioncontroller.permission.utils.Utils.PROPERTY_AUTO_REVOKE_UNUSED_THRESHOLD_MILLIS import com.android.permissioncontroller.permission.utils.application import com.android.permissioncontroller.permission.utils.forEachInParallel import com.android.permissioncontroller.permission.utils.getUid import com.android.permissioncontroller.permission.utils.updatePermissionFlags import kotlinx.coroutines.Dispatchers.Main import kotlinx.coroutines.GlobalScope Loading Loading @@ -461,7 +460,7 @@ suspend fun isPackageAutoRevokePermanentlyExempt( } return true } val carrierPrivilegedStatus = CarrierPrivilegedStatusLiveData[user.getUid(pkg.uid)] val carrierPrivilegedStatus = CarrierPrivilegedStatusLiveData[pkg.packageName] .getInitializedValue() if (carrierPrivilegedStatus != CARRIER_PRIVILEGE_STATUS_HAS_ACCESS && carrierPrivilegedStatus != CARRIER_PRIVILEGE_STATUS_NO_ACCESS) { Loading src/com/android/permissioncontroller/permission/utils/LocationUtils.java +10 −4 Original line number Diff line number Diff line Loading @@ -27,6 +27,8 @@ import android.content.DialogInterface.OnClickListener; import android.content.Intent; import android.content.IntentFilter; import android.location.LocationManager; import android.os.Handler; import android.os.Looper; import android.os.UserHandle; import android.provider.Settings; import android.util.Log; Loading @@ -43,6 +45,8 @@ public class LocationUtils { public static final String LOCATION_PERMISSION = Manifest.permission_group.LOCATION; private static final String TAG = LocationUtils.class.getSimpleName(); private static final long LOCATION_UPDATE_DELAY_MS = 1000; private static final Handler sMainHandler = new Handler(Looper.getMainLooper()); public static void showLocationDialog(final Context context, CharSequence label) { new AlertDialog.Builder(context) Loading Loading @@ -121,11 +125,13 @@ public class LocationUtils { @Override public void onReceive(Context context, Intent intent) { boolean isEnabled = intent.getBooleanExtra(EXTRA_LOCATION_ENABLED, true); sMainHandler.postDelayed(() -> { synchronized (sLocationListeners) { for (LocationListener l : sLocationListeners) { l.onLocationStateChange(isEnabled); } } }, LOCATION_UPDATE_DELAY_MS); } }; Loading Loading
src/com/android/permissioncontroller/permission/data/CarrierPrivilegedStatusLiveData.kt +7 −6 Original line number Diff line number Diff line Loading @@ -24,26 +24,27 @@ import com.android.permissioncontroller.PermissionControllerApplication * A LiveData which represents the carrier privileged status for a package * * @param app The current application * @param uid The uid of the package * @param packageName The name of the package */ class CarrierPrivilegedStatusLiveData private constructor( private val app: Application, private val uid: Int private val packageName: String ) : SmartUpdateMediatorLiveData<Int>() { val telephonyManager = app.getSystemService(TelephonyManager::class.java)!! override fun onUpdate() { value = telephonyManager.getCarrierPrivilegeStatus(uid) value = telephonyManager.checkCarrierPrivilegesForPackageAnyPhone(packageName) } /** * Repository for [CarrierPrivilegedStatusLiveData]. * <p> Key value is a package uid, value is its corresponding LiveData. * <p> Key value is a package name, value is its corresponding LiveData of * [android.telephony.Annotation.CarrierPrivilegeStatus] */ companion object : DataRepository<Int, CarrierPrivilegedStatusLiveData>() { override fun newValue(key: Int): CarrierPrivilegedStatusLiveData { : DataRepository<String, CarrierPrivilegedStatusLiveData>() { override fun newValue(key: String): CarrierPrivilegedStatusLiveData { return CarrierPrivilegedStatusLiveData(PermissionControllerApplication.get(), key) } } Loading
src/com/android/permissioncontroller/permission/service/AutoRevokePermissions.kt +1 −2 Original line number Diff line number Diff line Loading @@ -114,7 +114,6 @@ import com.android.permissioncontroller.permission.utils.Utils.PROPERTY_AUTO_REV import com.android.permissioncontroller.permission.utils.Utils.PROPERTY_AUTO_REVOKE_UNUSED_THRESHOLD_MILLIS import com.android.permissioncontroller.permission.utils.application import com.android.permissioncontroller.permission.utils.forEachInParallel import com.android.permissioncontroller.permission.utils.getUid import com.android.permissioncontroller.permission.utils.updatePermissionFlags import kotlinx.coroutines.Dispatchers.Main import kotlinx.coroutines.GlobalScope Loading Loading @@ -461,7 +460,7 @@ suspend fun isPackageAutoRevokePermanentlyExempt( } return true } val carrierPrivilegedStatus = CarrierPrivilegedStatusLiveData[user.getUid(pkg.uid)] val carrierPrivilegedStatus = CarrierPrivilegedStatusLiveData[pkg.packageName] .getInitializedValue() if (carrierPrivilegedStatus != CARRIER_PRIVILEGE_STATUS_HAS_ACCESS && carrierPrivilegedStatus != CARRIER_PRIVILEGE_STATUS_NO_ACCESS) { Loading
src/com/android/permissioncontroller/permission/utils/LocationUtils.java +10 −4 Original line number Diff line number Diff line Loading @@ -27,6 +27,8 @@ import android.content.DialogInterface.OnClickListener; import android.content.Intent; import android.content.IntentFilter; import android.location.LocationManager; import android.os.Handler; import android.os.Looper; import android.os.UserHandle; import android.provider.Settings; import android.util.Log; Loading @@ -43,6 +45,8 @@ public class LocationUtils { public static final String LOCATION_PERMISSION = Manifest.permission_group.LOCATION; private static final String TAG = LocationUtils.class.getSimpleName(); private static final long LOCATION_UPDATE_DELAY_MS = 1000; private static final Handler sMainHandler = new Handler(Looper.getMainLooper()); public static void showLocationDialog(final Context context, CharSequence label) { new AlertDialog.Builder(context) Loading Loading @@ -121,11 +125,13 @@ public class LocationUtils { @Override public void onReceive(Context context, Intent intent) { boolean isEnabled = intent.getBooleanExtra(EXTRA_LOCATION_ENABLED, true); sMainHandler.postDelayed(() -> { synchronized (sLocationListeners) { for (LocationListener l : sLocationListeners) { l.onLocationStateChange(isEnabled); } } }, LOCATION_UPDATE_DELAY_MS); } }; Loading