summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
-rw-r--r--services/core/java/com/android/server/ServiceWatcher.java43
-rw-r--r--services/core/java/com/android/server/location/LocationProviderManager.java6
2 files changed, 18 insertions, 31 deletions
diff --git a/services/core/java/com/android/server/ServiceWatcher.java b/services/core/java/com/android/server/ServiceWatcher.java
index 0038dc2e8da0..b78b5d945a08 100644
--- a/services/core/java/com/android/server/ServiceWatcher.java
+++ b/services/core/java/com/android/server/ServiceWatcher.java
@@ -238,24 +238,13 @@ public class ServiceWatcher implements ServiceConnection {
new PackageMonitor() {
@Override
- public void onPackageUpdateFinished(String packageName, int uid) {
- ServiceWatcher.this.onPackageChanged(packageName);
- }
-
- @Override
- public void onPackageAdded(String packageName, int uid) {
- ServiceWatcher.this.onPackageChanged(packageName);
- }
-
- @Override
- public void onPackageRemoved(String packageName, int uid) {
- ServiceWatcher.this.onPackageChanged(packageName);
+ public boolean onPackageChanged(String packageName, int uid, String[] components) {
+ return true;
}
@Override
- public boolean onPackageChanged(String packageName, int uid, String[] components) {
- ServiceWatcher.this.onPackageChanged(packageName);
- return super.onPackageChanged(packageName, uid, components);
+ public void onSomePackagesChanged() {
+ onBestServiceChanged(false);
}
}.register(mContext, UserHandle.ALL, true, mHandler);
@@ -320,7 +309,7 @@ public class ServiceWatcher implements ServiceConnection {
if (!mTargetService.equals(ServiceInfo.NONE)) {
if (D) {
- Log.i(TAG, "[" + mIntent.getAction() + "] unbinding from " + mTargetService);
+ Log.d(TAG, "[" + mIntent.getAction() + "] unbinding from " + mTargetService);
}
mContext.unbindService(this);
@@ -335,9 +324,7 @@ public class ServiceWatcher implements ServiceConnection {
Preconditions.checkState(mTargetService.component != null);
- if (D) {
- Log.i(TAG, getLogPrefix() + " binding to " + mTargetService);
- }
+ Log.i(TAG, getLogPrefix() + " binding to " + mTargetService);
Intent bindIntent = new Intent(mIntent).setComponent(mTargetService.component);
if (!mContext.bindServiceAsUser(bindIntent, this,
@@ -355,7 +342,7 @@ public class ServiceWatcher implements ServiceConnection {
Preconditions.checkState(mBinder == null);
if (D) {
- Log.i(TAG, getLogPrefix() + " connected to " + component.toShortString());
+ Log.d(TAG, getLogPrefix() + " connected to " + component.toShortString());
}
mBinder = binder;
@@ -379,7 +366,7 @@ public class ServiceWatcher implements ServiceConnection {
}
if (D) {
- Log.i(TAG, getLogPrefix() + " disconnected from " + component.toShortString());
+ Log.d(TAG, getLogPrefix() + " disconnected from " + component.toShortString());
}
mBinder = null;
@@ -392,13 +379,16 @@ public class ServiceWatcher implements ServiceConnection {
public final void onBindingDied(ComponentName component) {
Preconditions.checkState(Looper.myLooper() == mHandler.getLooper());
- if (D) {
- Log.i(TAG, getLogPrefix() + " " + component.toShortString() + " died");
- }
+ Log.i(TAG, getLogPrefix() + " " + component.toShortString() + " died");
onBestServiceChanged(true);
}
+ @Override
+ public final void onNullBinding(ComponentName component) {
+ Log.e(TAG, getLogPrefix() + " " + component.toShortString() + " has null binding");
+ }
+
void onUserSwitched(@UserIdInt int userId) {
mCurrentUserId = userId;
onBestServiceChanged(false);
@@ -410,11 +400,6 @@ public class ServiceWatcher implements ServiceConnection {
}
}
- void onPackageChanged(String packageName) {
- // force a rebind if the changed package was the currently connected package
- onBestServiceChanged(packageName.equals(mTargetService.getPackageName()));
- }
-
/**
* Runs the given function asynchronously if and only if currently connected. Suppresses any
* RemoteException thrown during execution.
diff --git a/services/core/java/com/android/server/location/LocationProviderManager.java b/services/core/java/com/android/server/location/LocationProviderManager.java
index c3532a84c42d..05aa3150cfef 100644
--- a/services/core/java/com/android/server/location/LocationProviderManager.java
+++ b/services/core/java/com/android/server/location/LocationProviderManager.java
@@ -229,7 +229,7 @@ class LocationProviderManager extends
// we cache these values because checking/calculating on the fly is more expensive
private boolean mPermitted;
private boolean mForeground;
- @Nullable private LocationRequest mProviderLocationRequest;
+ private LocationRequest mProviderLocationRequest;
private boolean mIsUsingHighPower;
protected Registration(LocationRequest request, CallerIdentity identity,
@@ -244,6 +244,8 @@ class LocationProviderManager extends
} else {
mWorkSource = identity.addToWorkSource(null);
}
+
+ mProviderLocationRequest = super.getRequest();
}
@GuardedBy("mLock")
@@ -313,7 +315,7 @@ class LocationProviderManager extends
@Override
public final LocationRequest getRequest() {
- return Objects.requireNonNull(mProviderLocationRequest);
+ return mProviderLocationRequest;
}
public final boolean isForeground() {