QR Code Scanner App在Nougat中完美运行

问题描述 投票:0回答:1

自从我上次问这个问题以来已经有一段时间了。谷歌搜索,Stack-Overflowed等 - 感觉没有其他人有这个问题。

无论如何,我为客户创建了一个应用程序,该应用程序从员工的ID中读取QR码,以便将其计入或取出;带扭曲的捆绑时钟。我对Android编程不太熟悉,但我对编程很好;我的背景是Visual Basic和Java。我使用谷歌的Vision API作为相机,它的工作非常精彩。我使用API​​-17,因为我唯一可用的测试平板电脑在Jelly Bean上运行。

所以,我的客户为该应用程序购买了一个平板电脑,它在Nougat 7.0上运行。出于某种原因,SurfaceView就坐在那里。它可以“看到”,但它不读取QR码。我点击它进行自动对焦,甚至更改首选相机(我内置到我的代码中),它仍然没有读取任何QR码。我在运行Kitkat,Lollipop,Marshmallow,Oreo甚至Pie的设备上安装了我的应用程序,除了运行Nougat之外,它们都可以工作!我没有尝试在Nougat的另一台设备上安装它,我可能会在发布之后这样做 - 也许它就是设备本身?它是华为的Mediapad M3 Lite,可以在基于Nougat的自定义操作系统上运行,所以它也可以。

但是,万一我错过了一些东西,也许在Android编程方面拥有更多专业知识的人可以帮助解释这个谜团。

更新:我在Nougat-7.1设备中安装了我的应用程序,它运行正常。我重新安装了Mediapad M3 Lite中的应用程序,仍然无法正常工作。我倾向于认为这个问题可能与Nougat-7.0或华为的自定义操作系统(EMUI 5.1.3)有关。

android qr-code android-7.0-nougat
1个回答
0
投票

好的,我明白了。它与自定义操作系统 - EMUI有关。我玩平板电脑并在“设置”的“高级”部分找到了“附加权限”设置。我允许它运行“调试”应用程序,它工作。奇怪的是,该应用确实运行但只是没有阅读QR码。但是这个选项似乎修复了它并揭示了一个新选项。

我包括了应该读取的代码的REGEX验证,如果QR码无效则抛出错误。现在,它只读取任何QR码并跳过验证。我检查了我安装该应用程序的所有其他设备,所有来自Lollipop的Androids都有同样的问题 - 他们都跳过了验证。然而,Kitkat和Jelly Bean完美地完成了验证。这个我应该能够通过一些研究自己弄清楚。

对于那些阅读我的帖子并且也感到困惑的人,我道歉。

© www.soinside.com 2019 - 2024. All rights reserved.