Fix NPE in updateActivityRecognizerTags().

ServiceInfo.metadata may be null when empty and we shouldn't crash the
system for this.

Test: presubmit
Change-Id: I8b1d458e8cccb911b3bfebfb86851dc1d71d72cf
This commit is contained in:
Hai Zhang
2022-02-17 06:22:35 +00:00
parent be992eb12a
commit 5c22e835fc

View File

@@ -33,6 +33,7 @@ import android.content.pm.ResolveInfo;
import android.location.LocationManagerInternal;
import android.net.Uri;
import android.os.Binder;
import android.os.Bundle;
import android.os.IBinder;
import android.os.PackageTagsList;
import android.os.Process;
@@ -342,8 +343,11 @@ public final class AppOpsPolicy implements AppOpsManagerInternal.CheckOpsDelegat
+ Intent.ACTION_ACTIVITY_RECOGNIZER + ", ignoring!");
return;
}
final String tagsList = resolvedService.serviceInfo.metaData.getString(
ACTIVITY_RECOGNITION_TAGS);
final Bundle metaData = resolvedService.serviceInfo.metaData;
if (metaData == null) {
return;
}
final String tagsList = metaData.getString(ACTIVITY_RECOGNITION_TAGS);
if (!TextUtils.isEmpty(tagsList)) {
PackageTagsList packageTagsList = new PackageTagsList.Builder(1).add(
resolvedService.serviceInfo.packageName,