android - 可选的共享库
问题描述
我正在开发一个必须与所有 Android 设备架构兼容的应用程序。此外,其中一些设备可能具有我想要利用的 UHF 阅读器功能。
armeabi
对于这些特殊设备,我有一个架构的共享库。在具有这种架构的设备中,应用程序可以正常工作(无论它们是否具有 UHF 阅读器)。但是,对于其他架构的设备,甚至没有安装应用程序,出现INSTALL_FAILED_NO_MATCHING_ABIS
错误。
我想知道是否有任何方法可以使库成为可选,以便其他架构的设备简单地忽略它。如果我可以使用显式加载库(或不加载,取决于架构)就可以了
System.loadLibrary("DeviceAPI");
但我不知道如何解决安装问题。我想避免生成多个 APK。
解决方案
好的,这肯定不是最好的方法,但它似乎有效。armeabi
我只是为每个缺失的平台创建了一个虚拟共享库,并用与我的库文件相同的名称重命名了 .so文件。该应用程序现在安装在每个平台上,我只需要在初始化时捕获适当的异常或检查设备架构。
推荐阅读
- cordova - cordova-plugin-printer @ionic-native/printer 错误错误:未捕获(承诺):NullInjectorError
- php - 创建新的 Composer 虚拟包类型
- html - 链接后的文本的 XPath?
- javascript - 如何在 JavaScript 中创建动态超时句柄?
- vue.js - 在计算属性中使用地图时的意外行为
- google-apps-script - 在 Google 表单上提交显示链接以下载您的格式化回复
- javascript - 为什么拖动完成后输入框会阻塞
- docker - 运行.net核心应用程序时如何在docker中进行端口映射?
- python - 遍历字典 x 次
- python - 如何连接两个数组的对应值?