Merge "Add path to native libraries inside apk" into mnc-dev
This commit is contained in:
committed by
Android (Google) Code Review
commit
99fc7e95c5
@@ -55,6 +55,7 @@ import java.lang.ref.WeakReference;
|
||||
import java.lang.reflect.InvocationTargetException;
|
||||
import java.lang.reflect.Method;
|
||||
import java.net.URL;
|
||||
import java.util.List;
|
||||
import java.util.ArrayList;
|
||||
import java.util.Collections;
|
||||
import java.util.Enumeration;
|
||||
@@ -166,6 +167,7 @@ public final class LoadedApk {
|
||||
if (runtimeIsa.equals(secondaryIsa)) {
|
||||
final ApplicationInfo modified = new ApplicationInfo(info);
|
||||
modified.nativeLibraryDir = modified.secondaryNativeLibraryDir;
|
||||
modified.primaryCpuAbi = modified.secondaryCpuAbi;
|
||||
return modified;
|
||||
}
|
||||
}
|
||||
@@ -272,8 +274,9 @@ public final class LoadedApk {
|
||||
}
|
||||
}
|
||||
|
||||
final ArrayList<String> zipPaths = new ArrayList<>();
|
||||
final ArrayList<String> libPaths = new ArrayList<>();
|
||||
final List<String> zipPaths = new ArrayList<>();
|
||||
final List<String> apkPaths = new ArrayList<>();
|
||||
final List<String> libPaths = new ArrayList<>();
|
||||
|
||||
if (mRegisterPackage) {
|
||||
try {
|
||||
@@ -329,6 +332,8 @@ public final class LoadedApk {
|
||||
}
|
||||
}
|
||||
|
||||
apkPaths.addAll(zipPaths);
|
||||
|
||||
if (mSharedLibraries != null) {
|
||||
for (String lib : mSharedLibraries) {
|
||||
if (!zipPaths.contains(lib)) {
|
||||
@@ -346,6 +351,14 @@ public final class LoadedApk {
|
||||
}
|
||||
|
||||
final String zip = TextUtils.join(File.pathSeparator, zipPaths);
|
||||
|
||||
// Add path to libraries in apk for current abi
|
||||
if (mApplicationInfo.primaryCpuAbi != null) {
|
||||
for (String apk : apkPaths) {
|
||||
libPaths.add(apk + "!/lib/" + mApplicationInfo.primaryCpuAbi);
|
||||
}
|
||||
}
|
||||
|
||||
final String lib = TextUtils.join(File.pathSeparator, libPaths);
|
||||
|
||||
/*
|
||||
|
||||
Reference in New Issue
Block a user