首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >安卓JNI: 32位兼容64位设备?

安卓JNI: 32位兼容64位设备?
EN

Stack Overflow用户
提问于 2015-11-25 14:35:08
回答 1查看 2.2K关注 0票数 1

我有一些使用本机组件的库,这些库是用NDK为32位Arm架构构建的。

现在我们在现代设备上有了64位处理器,所以我想知道库是否能工作。在我的情况下,我没有本机库的源代码文件,只有SO文件,我不能为64位构建它们。

那么32位库会在64位处理器上运行吗?还是我得重新建造它们?

**

编辑

**在我的设想中,我有以下几点:

我手动分发APK,还没有发布到Google Play。

这个项目有两个本地库,一个支持64 &32位,另一个只支持32位。

有没有办法让应用程序在64位设备上工作,而不必发布到Google上呢?我可以删除64位库来强制包管理器加载32位的库吗?

EN

回答 1

Stack Overflow用户

回答已采纳

发布于 2015-11-25 14:45:43

32位库将在64位处理器上正常工作。

只要以正确/正式的方式安装库(即,不是手动下载或从APK中的某些非标准部件中提取,而是正确地打包在APK中),包管理器就会检测到流程使用32位库,进程应该以32位模式启动。如果没有,进程将以64位模式启动,以后将无法加载32位库。(如果您的APK将包含一些.so文件,但不是全部,在64位模式下,它只会安装它们,进程将在64位模式下启动。因此,除非所有.so文件都可用于特定的ABI,否则不要包含其中任何一个)。

因此,如果您有一个本机库的64位版本,只需删除该版本并只发布32位版本,直到您拥有所有这些库的64位版本为止。

票数 2
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/33919220

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档