diff options
author | Ricky Wai <rickywai@google.com> | 2019-03-18 19:19:08 +0000 |
---|---|---|
committer | Ricky Wai <rickywai@google.com> | 2019-03-28 14:50:11 +0000 |
commit | 2452e2d068de90a601ba8bbe0cd20da0b098af16 (patch) | |
tree | 868551a093ee2f92df92cbe4bcb941fea0707a46 /services/companion | |
parent | d08df8bd9f20fb4c1b793b5632320370028975a3 (diff) |
Allow associated companion app to start background activity
Bug: 123272462
Test: Able to compile, will have a follow up CTS
Change-Id: Ic8d6f0df95b426a87711f5432dd7d5aec5a17886
Diffstat (limited to 'services/companion')
-rw-r--r-- | services/companion/java/com/android/server/companion/CompanionDeviceManagerService.java | 11 |
1 files changed, 11 insertions, 0 deletions
diff --git a/services/companion/java/com/android/server/companion/CompanionDeviceManagerService.java b/services/companion/java/com/android/server/companion/CompanionDeviceManagerService.java index 3865b2779466..a7404bc63e2a 100644 --- a/services/companion/java/com/android/server/companion/CompanionDeviceManagerService.java +++ b/services/companion/java/com/android/server/companion/CompanionDeviceManagerService.java @@ -72,7 +72,9 @@ import com.android.internal.util.ArrayUtils; import com.android.internal.util.CollectionUtils; import com.android.internal.util.function.pooled.PooledLambda; import com.android.server.FgThread; +import com.android.server.LocalServices; import com.android.server.SystemService; +import com.android.server.wm.ActivityTaskManagerInternal; import org.xmlpull.v1.XmlPullParser; import org.xmlpull.v1.XmlPullParserException; @@ -84,6 +86,7 @@ import java.io.FileInputStream; import java.io.IOException; import java.nio.charset.StandardCharsets; import java.util.ArrayList; +import java.util.HashSet; import java.util.List; import java.util.Objects; import java.util.Set; @@ -519,6 +522,11 @@ public class CompanionDeviceManagerService extends SystemService implements Bind if (size(old) == size(associations)) return; Set<Association> finalAssociations = associations; + Set<String> companionAppPackages = new HashSet<>(); + for (Association association : finalAssociations) { + companionAppPackages.add(association.companionAppPackage); + } + file.write((out) -> { XmlSerializer xml = Xml.newSerializer(); try { @@ -542,6 +550,9 @@ public class CompanionDeviceManagerService extends SystemService implements Bind } }); + ActivityTaskManagerInternal atmInternal = LocalServices.getService( + ActivityTaskManagerInternal.class); + atmInternal.setCompanionAppPackages(userId, companionAppPackages); } } |