findNetworkStackApk returns an array of files (2/n)

This change handles the case of split APKs. All files starting with
"NetworkStack" will be returned as split APKs.

See b/159978937#comment6. NetworkStack is changed from a single APK to
split APKs. We need this change for install to succeed.

Bug: 159978937
Test: atest NetworkStagedRollbackTest
Change-Id: I20f5fee08ea208ba4dc7711d82a1718239c647c2
This commit is contained in:
JW Wang
2020-06-29 16:16:10 +08:00
parent 46986caa19
commit f3a85cdee9

View File

@@ -61,11 +61,12 @@ public class NetworkStagedRollbackTest {
private static final TestApp NETWORK_STACK = new TestApp("NetworkStack",
getNetworkStackPackageName(), -1, false, findNetworkStackApk());
private static File findNetworkStackApk() {
private static File[] findNetworkStackApk() {
for (String name : NETWORK_STACK_APK_NAMES) {
final File apk = new File("/system/priv-app/" + name + "/" + name + ".apk");
if (apk.isFile()) {
return apk;
final File dir = new File("/system/priv-app/" + name);
return dir.listFiles((d, f) -> f.startsWith(name));
}
}
throw new RuntimeException("Can't find NetworkStackApk");