gpt4 book ai didi

android - 允许在所有 CPU 上安装 apk,应用程序中只有一个 ARM 库

转载 作者:行者123 更新时间:2023-11-30 00:17:30 25 4
gpt4 key购买 nike

我正在使用一些 C++ 功能(通过 NDK)构建一个 Android 应用程序。这些功能不是强制性的(我有一个较慢的回退解决方案,不使用 NDK)。为了保持 apk 轻便,我想只为 ARM 构建我的 ndk 库,并将我的后备解决方案用于其他平台。

这有可能吗?如果是这样,如何?默认情况下,如果我只为 ARM 提供我的库,则运行 x86(例如)设备的用户将无法安装该应用程序。

最佳答案

我曾经对类似的情况感到好奇,并通过在其他 cpu 架构中放置空文件并将其重命名为正确的 .so 格式来处理它,并在加载库时捕获异常。

try{
System.loadLibrary("some_library");
} catch (Throwable e){
//switch to fallback mode
}

您可能还需要在调用 native 方法时捕获异常。

我不确定 0 kB 文件是否有效。但是小文件> 0KB 有效。至少通过删除所有代码来构建不同的 .so 文件应该会生成非常小的 .so 文件,这肯定会起作用。

关于android - 允许在所有 CPU 上安装 apk,应用程序中只有一个 ARM 库,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/46990605/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com