【问题标题】:application with zebra jar failed to build on non zebra device with INSTALL_FAILED_NO_MATCHING_ABIS带有斑马 jar 的应用程序无法在带有 INSTALL_FAILED_NO_MATCHING_ABIS 的非斑马设备上构建
【发布时间】:2018-05-14 17:45:46
【问题描述】:

我开发了一个在 zebra TC70 上运行的应用程序。 主要原因是该设备内置了二维条码扫描器。

现在我还想在应用商店中发布相同的应用,而不需要 zebra。我已经内置了一个检查,检查设备是否是斑马设备(如 Zebra 的here 所述)

现在,当我在 doogee s60 上构建此应用程序时,它可以正常工作。 该应用程序使用相机而不是条形码扫描仪。 当我想在我的 Sony Xperia XZ Premiumn 上安装时,我在 android studio 中收到以下错误

现在我对 android 中的“ABIS”并不是很熟悉。 我尝试了一些谷歌搜索,这给了我按 CPU 型号拆分 APK 的提示,但我没有得到它的工作。

最终目标是我可以让这个应用程序在“每一个”android 设备上运行,而无需将我的所有代码复制到没有 zebra jar 的第二个项目中。

Android 清单

  • 最小 SDK:16
  • 目标 SDK:19
  • Zebra 设备我运行的是 Android 4.4 或 android 5.1
  • 使用权限 android:name="com.symbol.emdk.permission.EMDK"

build.grade(应用程序)

  • provided fileTree(include: ['com.symbol.emdk.jar'], dir: 'libs') // 这需要提供,否则应用程序将无法构建

结束状态:

  • TC70:应用正在使用内置扫描仪
  • Doogee S60:应用正在使用相机
  • Sony Xperia XZ Premium:应用构建失败并出现错误。

【问题讨论】:

  • 我不肯定,但我相信“ABIS”指的是二进制接口。当您在处理器/平台上运行本机代码时,它必须遵守二进制接口规范。对我在这里断言的内容进行搜索/验证 - 这可能就像添加一个额外的库一样简单(可能以静态库的形式等),但毫无疑问你需要联系 Xperia 社区.

标签: java android barcode-scanner failed-installation


【解决方案1】:

我终于找到了答案。

显然它只是一个特定的库。

我换了:

compile 'org.apache.directory.studio:org.apache.commons.io:2.4'

作者:

compile group: 'commons-io', name: 'commons-io', version: '2.5'

这解决了我的问题。它与斑马图书馆无关。 另外:implementation group: 'commons-io', name: 'commons-io', version: '2.5' //Works.

感谢这篇文章中的“sweisgerber.dev”INSTALL_FAILED_NO_MATCHING_ABIS error on Android 8 解决了这个问题

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2011-04-04
    • 2014-04-09
    • 1970-01-01
    • 2016-08-12
    • 1970-01-01
    • 2017-09-29
    相关资源
    最近更新 更多