diff options
| author | 2021-02-10 01:20:26 +0000 | |
|---|---|---|
| committer | 2021-02-10 01:20:26 +0000 | |
| commit | f3421c57d4adf24873d99044bd428b798ca108b6 (patch) | |
| tree | a1ecaf9b93e07a7b42b68005a9eb3ae7b57e5ba7 | |
| parent | faad7c721dea5d521ecba0171689cdb1ceb2b332 (diff) | |
| parent | 79593fb955f77312fc6538e760bb40effdc20161 (diff) | |
Merge "VIMS: Helper method for InteractionService query." into sc-dev
| -rw-r--r-- | services/voiceinteraction/java/com/android/server/voiceinteraction/VoiceInteractionManagerService.java | 33 |
1 files changed, 17 insertions, 16 deletions
diff --git a/services/voiceinteraction/java/com/android/server/voiceinteraction/VoiceInteractionManagerService.java b/services/voiceinteraction/java/com/android/server/voiceinteraction/VoiceInteractionManagerService.java index be36f82cce7d..f687e4bb9567 100644 --- a/services/voiceinteraction/java/com/android/server/voiceinteraction/VoiceInteractionManagerService.java +++ b/services/voiceinteraction/java/com/android/server/voiceinteraction/VoiceInteractionManagerService.java @@ -581,17 +581,24 @@ public class VoiceInteractionManagerService extends SystemService { } } - VoiceInteractionServiceInfo findAvailInteractor(int userHandle, String packageName) { - List<ResolveInfo> available = - mContext.getPackageManager().queryIntentServicesAsUser( - new Intent(VoiceInteractionService.SERVICE_INTERFACE) - .setPackage(packageName), - PackageManager.GET_META_DATA - | PackageManager.MATCH_DIRECT_BOOT_AWARE - | PackageManager.MATCH_DIRECT_BOOT_UNAWARE, userHandle); + private List<ResolveInfo> queryInteractorServices( + @UserIdInt int user, + @Nullable String packageName) { + return mContext.getPackageManager().queryIntentServicesAsUser( + new Intent(VoiceInteractionService.SERVICE_INTERFACE).setPackage(packageName), + PackageManager.GET_META_DATA + | PackageManager.MATCH_DIRECT_BOOT_AWARE + | PackageManager.MATCH_DIRECT_BOOT_UNAWARE, + user); + } + + VoiceInteractionServiceInfo findAvailInteractor( + @UserIdInt int user, + @Nullable String packageName) { + List<ResolveInfo> available = queryInteractorServices(user, packageName); int numAvailable = available.size(); if (numAvailable == 0) { - Slog.w(TAG, "no available voice interaction services found for user " + userHandle); + Slog.w(TAG, "no available voice interaction services found for user " + user); return null; } // Find first system package. We never want to allow third party services to @@ -1643,13 +1650,7 @@ public class VoiceInteractionManagerService extends SystemService { String pkg = roleHolders.get(0); // Try to set role holder as VoiceInteractionService - List<ResolveInfo> services = mPm.queryIntentServicesAsUser( - new Intent(VoiceInteractionService.SERVICE_INTERFACE).setPackage(pkg), - PackageManager.GET_META_DATA - | PackageManager.MATCH_DIRECT_BOOT_AWARE - | PackageManager.MATCH_DIRECT_BOOT_UNAWARE, userId); - - for (ResolveInfo resolveInfo : services) { + for (ResolveInfo resolveInfo : queryInteractorServices(userId, pkg)) { ServiceInfo serviceInfo = resolveInfo.serviceInfo; VoiceInteractionServiceInfo voiceInteractionServiceInfo = |