我如何制作由 Android 为 AAB 提取的共享库?
How do i make shared libs extracted by Android for AAB?
我设置 android:extractNativeLibs="true"
并将目标设置为 Android 29 以使 Android 将我的共享库提取到 /data/app/%package%/...
。如果与 APK 一起正常工作到 问题。
最近我不得不切换到 AAB,因为我的 APK 大小超过 Google 100Mb 的播放限制,下载大小增加到 150Mb。从 AAB 测试 APK 安装时 [Android Studio 中的“来自应用程序包的 APK”部署选项] 我注意到 /data/app/%package%/..
是空的 (与纯单个 APK 安装形成对比) 这是一个问题,因为我需要它们能够作为可执行文件执行(请参阅解决方法中的详细信息)。我检查了构建目录中的拆分 apk,它们包含适合我的测试设备的设置:
/out/base-arm64_v8a_2.apk
/out/base-ru.apk
/out/base-master_2.apk
/out/base-xxhdpi.apk
而且我可以在 apk 中看到共享库。
然而 android:extractNativeLibs="true"
被 AAB 忽略。
这是错误还是功能?我如何强制提取 AAB 的库?
PS。在 gradle.properties 中使用 Gradle 插件 5.6 和 android.enableAapt2=true
。尝试了 Release 和 Debug 变体。
对不起 。
简而言之:只需在“gradle.properties”中使用 android.bundle.enableUncompressedNativeLibs=false
。
我设置 android:extractNativeLibs="true"
并将目标设置为 Android 29 以使 Android 将我的共享库提取到 /data/app/%package%/...
。如果与 APK 一起正常工作到
最近我不得不切换到 AAB,因为我的 APK 大小超过 Google 100Mb 的播放限制,下载大小增加到 150Mb。从 AAB 测试 APK 安装时 [Android Studio 中的“来自应用程序包的 APK”部署选项] 我注意到 /data/app/%package%/..
是空的 (与纯单个 APK 安装形成对比) 这是一个问题,因为我需要它们能够作为可执行文件执行(请参阅解决方法中的详细信息)。我检查了构建目录中的拆分 apk,它们包含适合我的测试设备的设置:
/out/base-arm64_v8a_2.apk
/out/base-ru.apk
/out/base-master_2.apk
/out/base-xxhdpi.apk
而且我可以在 apk 中看到共享库。
然而 android:extractNativeLibs="true"
被 AAB 忽略。
这是错误还是功能?我如何强制提取 AAB 的库?
PS。在 gradle.properties 中使用 Gradle 插件 5.6 和 android.enableAapt2=true
。尝试了 Release 和 Debug 变体。
对不起
简而言之:只需在“gradle.properties”中使用 android.bundle.enableUncompressedNativeLibs=false
。