在gradle中使用目标sdk版本23时,ZBAR条码扫描库不工作

2023-11-21

我在我的项目中使用 zbar 扫描仪库。更新到 sdk 23 后,棉花糖扫描仪无法工作。以下是 gradle 文件。扫描仪正在工作,如果我将 targetSdkVersion 设置为 23 以外的任何值。

以下是gradle文件:

    apply plugin: 'com.android.application'

    android {
    compileSdkVersion 15
    buildToolsVersion "23.0.1"

    defaultConfig {
        applicationId "net.sourceforge.zbar.android.CameraTest"
        minSdkVersion 9
        targetSdkVersion 23
    }

    buildTypes {
        release {
            minifyEnabled false
            proguardFiles getDefaultProguardFile('proguard-android.txt'),  'proguard-rules.txt'
        }
    }
  }

 dependencies {
    compile files('libs/zbar.jar')
 }

以下是我收到异常日志的唯一一行:

10-15 21:19:00.682 7719-7719/? E/AndroidRuntime: FATAL EXCEPTION: main
10-15 21:19:00.682 7719-7719/? E/AndroidRuntime: Process: net.sourceforge.zbar.android.CameraTest, PID: 7719
10-15 21:19:00.682 7719-7719/? E/AndroidRuntime: java.lang.UnsatisfiedLinkError: dlopen failed: /data/app/net.sourceforge.zbar.android.CameraTest-2/lib/arm/libiconv.so: has text relocations
10-15 21:19:00.682 7719-7719/? E/AndroidRuntime:     at java.lang.Runtime.loadLibrary(Runtime.java:372)
10-15 21:19:00.682 7719-7719/? E/AndroidRuntime:     at java.lang.System.loadLibrary(System.java:1076)
10-15 21:19:00.682 7719-7719/? E/AndroidRuntime:     at net.sourceforge.zbar.android.CameraTest.CameraTestActivity.<clinit>(CameraTestActivity.java:54)
10-15 21:19:00.682 7719-7719/? E/AndroidRuntime:     at java.lang.Class.newInstance(Native Method)
10-15 21:19:00.682 7719-7719/? E/AndroidRuntime:     at android.app.Instrumentation.newActivity(Instrumentation.java:1067)
10-15 21:19:00.682 7719-7719/? E/AndroidRuntime:     at android.app.ActivityThread.performLaunchActivity(ActivityThread.java:2317)
10-15 21:19:00.682 7719-7719/? E/AndroidRuntime:     at android.app.ActivityThread.handleLaunchActivity(ActivityThread.java:2476)
10-15 21:19:00.682 7719-7719/? E/AndroidRuntime:     at android.app.ActivityThread.-wrap11(ActivityThread.java)
10-15 21:19:00.682 7719-7719/? E/AndroidRuntime:     at android.app.ActivityThread$H.handleMessage(ActivityThread.java:1344)
10-15 21:19:00.682 7719-7719/? E/AndroidRuntime:     at android.os.Handler.dispatchMessage(Handler.java:102)
10-15 21:19:00.682 7719-7719/? E/AndroidRuntime:     at android.os.Looper.loop(Looper.java:148)
10-15 21:19:00.682 7719-7719/? E/AndroidRuntime:     at android.app.ActivityThread.main(ActivityThread.java:5417)
10-15 21:19:00.682 7719-7719/? E/AndroidRuntime:     at java.lang.reflect.Method.invoke(Native Method)
10-15 21:19:00.682 7719-7719/? E/AndroidRuntime:     at com.android.internal.os.ZygoteInit$MethodAndArgsCaller.run(ZygoteInit.java:726)
10-15 21:19:00.682 7719-7719/? E/AndroidRuntime:     at com.android.internal.os.ZygoteInit.main(ZygoteInit.java:616)
10-15 21:19:00.688 804-6706/? W/ActivityManager:   Force finishing activity net.sourceforge.zbar.android.CameraTest/.CameraTestActivity
10-15 21:19:00.700 9581-9650/? E/Surface: getSlotFromBufferLocked: unknown buffer: 0x9664a7f0

如何解决这个问题有帮助吗?我想根据新的 Marshmallow 功能使用目标 sdk 23 来处理相机权限。

以下是加载库的代码中使用的行:

static {
    System.loadLibrary("iconv");
}

对我有用的解决方案是@Arst 在上面答案的评论中提到的,下载 jniLibs 文件夹并将其放入您的应用程序中here。我还替换了zbar.jar。

本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)

在gradle中使用目标sdk版本23时,ZBAR条码扫描库不工作 的相关文章

随机推荐

  • io.BufferedReader peek 函数返回缓冲区中的所有文本

    我在 Windows 8 上使用 Python 3 4 1 我想读取一个带有缓冲接口的文件 该接口允许我提前查看一定数量的字节以及读取字节 io BufferedReader似乎是正确的选择 很遗憾 io BufferReader peek
  • 三种 .htaccess 过期规则之间的区别

    以下三个 htaccess 规则之间有什么区别以及何时使用每个规则 是否有任何特殊用例更喜欢其中一个 Header set Cache Control max age 290304000 Header set Expires Thu 15
  • 安装plpython时Postgres数据库崩溃

    我试图在 Postgres 9 1 中安装 plpython 但它使服务器崩溃 postgres dataserver1 gt opt postgres 9 1 bin psql d mydb psql bin 9 1 4 Type hel
  • Android Studio Gradle 未能完成 Gradle 执行

    我正在尝试运行 appengineUpdate 来部署我的后端 但收到以下错误消息 Failed to complete Gradle execution Cause Gradle build daemon disappeared unex
  • 如何在sitemesh装饰器中获取模型属性或spring的bean?

    我正在使用 Spring 3 和 sitemesh 我想参考 sitemesh 中定义的装饰器页面中的 spring 上下文 bean 问题是 SiteMesh 过滤器在 Spring 上下文之外工作 因此 sitemesh 装饰器 jsp
  • 从多元正态分布中有效地随机抽取

    只是想知道是否有人遇到过这样的问题 他 她需要从非常高维的多元正态分布 假设维度 10 000 中随机抽取 因为rmvnorm的功能mvtnorm包对此来说是不切实际的 我知道这个article has an Rcpp实施dmvnorm的功
  • R 可以读取 html 编码的表情符号字符吗?

    Question 我的问题如下 如何使用 R 读取包含 HTML 表情符号代码的字符串 例如 55358 56599 我想 1 表示表情符号 例如 作为 unicode 符号 在解析后的字符串中 OR 2 将其转换为等效文本 hugging
  • 如何在 Java 中将分数格式的字符串转换为 Decimal 或 Float?

    我从数据库中获取的字符串值很少 例如 1 4 2 3 但是在显示为 Android ListView 内容时 我需要将其显示为0 25 0 66 现在我不想分割字符串 然后将单个字符串转换为数字 然后 然后将它们分开即可得到结果 有谁知道
  • 如何确保我的 bash 脚本尚未运行?

    我有一个 bash 脚本 我想从 cron 每 5 分钟运行一次 但是该脚本的上一次运行可能尚未完成 在这种情况下 我希望新的运行退出 我不想只依赖 tmp 中的锁定文件 我想确保在执行锁定文件 或其他文件 之前该进程实际上正在运行 这是到
  • 为什么 [-1] 不返回文件中该行的最后一个字符?

    我想打印 python 中从文件中读取的字符串的最后一个字符 我打电话作为str 1 但它没有按预期工作 t txt 包含 Do not laugh please 9 Are you kidding me 4 我的代码是 with open
  • 如何使用 FLAG_GRANT_READ_URI_PERMISSION 授予对自定义内容提供程序的临时访问权限

    我正在尝试从另一个应用程序 应用程序 B 查询自定义内容提供程序 应用程序 A 当内容提供商没有权限保护时我可以这样做 具体来说 我在应用程序 A 上构建自定义内容提供程序 并将包含 URI 的意图发送到应用程序 B 这是App A中的意图
  • GCM 无效发件人错误

    我被一个神秘的问题困扰了一段时间 所以我在我的 Android 应用程序中实现了 GCM 但收到 INVALID SENDER 错误 我的SENDER ID是来自google项目的url的id Android 推送通知已开启 奇怪的是我已经
  • 如何卸载Python和所有包

    我希望卸载 Python 2 7 以及与其连接的所有包 我最初从官方网站安装了Python 并使用 pip install 命令安装了所有软件包 从控制面板卸载Python也会自动卸载所有包吗 我之所以要卸载Python 是因为我想使用An
  • 避免在 Kubernetes 中为一个 cron 执行点运行多个 cron 作业

    编辑 问题已解决 这是我的错误 我只是使用了错误的 cron 设置 我假设 2 每天只会在 2 点运行一次 但实际上它在 2 点之后每分钟都会运行一次 因此 Kubernetes 的行为是正确的 我一直在一个 cron 执行点运行多个作业
  • 如何使用 scipy.ndimage.filters.gereric_filter?

    我正在尝试使用 scipy ndimage filters generic filter 来计算邻域的加权和 邻域在某些时候会发生变化 但目前我正在努力实现 3x3 到目前为止 这就是我所在的地方 def Func a a np resha
  • Swift 中的数字四舍五入到小数点后两位

    我得到了一个数字值 我试图将其转换为小数点后两位 但是当我转换它时 结果变为 0 00 数字是这样的0 24612035420731018 当得到它的 2f 值时 它显示 0 00 我尝试过的代码是这样的 let digit FindRes
  • 如何获取外键引用的表

    我有一个小问题 但尚未找到答案 如何在 C 中使用 Microsoft SqlServer Smo 外键列所引用的表 foreach Column column in currentTable Columns if column IsFor
  • 如何压缩两个非连续的提交?

    我对 git 中的整个变基功能有点陌生 假设我做出了以下承诺 A gt B gt C gt D 后来我意识到D包含一个修复程序 该修复程序依赖于添加的一些新代码A 并且这些提交属于一起 我该如何压扁A D一起离开B C alone 你可以运
  • 如何从 LLVM 中的 CallInst 获取间接调用的函数名称

    Function fun call gt getCalledFunction getCalledFunction 如果是间接调用则返回 null 如何获取函数的名称或指针的名称 我发现Stack Overflow中与此问题相关的所有问题都谈
  • 在gradle中使用目标sdk版本23时,ZBAR条码扫描库不工作

    我在我的项目中使用 zbar 扫描仪库 更新到 sdk 23 后 棉花糖扫描仪无法工作 以下是 gradle 文件 扫描仪正在工作 如果我将 targetSdkVersion 设置为 23 以外的任何值 以下是gradle文件 apply