summaryrefslogtreecommitdiff
path: root/services/companion
diff options
context:
space:
mode:
authorRicky Wai <rickywai@google.com>2019-03-18 19:19:08 +0000
committerRicky Wai <rickywai@google.com>2019-03-28 14:50:11 +0000
commit2452e2d068de90a601ba8bbe0cd20da0b098af16 (patch)
tree868551a093ee2f92df92cbe4bcb941fea0707a46 /services/companion
parentd08df8bd9f20fb4c1b793b5632320370028975a3 (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.java11
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);
}
}