我现在使用Phonegap Desktop和Phonegap Developer app。这对于快速测试我的开发非常有趣。 但我面临着嵌入式条形码扫描仪的局限性,该扫描仪全屏显示相机显示屏。 我需要将相机显示器嵌入容器中,这样我就可以在同一时间显示信息。
搜索了一段时间后,我发现用于PhoneGap的Scandit SDK是唯一允许裁剪相机显示的插件。
我花了很多时间尝试实现Scandit,但没有成功。至少我可以构建应用程序,但在使用它时,扫描仪无法正常工作......
以下是我遵循的步骤:
=>这时PG Dev运行良好,我的应用程序运行正常
然后,我继续说道:
==> PG Dev仍然正常工作,我的应用程序运行正常
后续步骤:
<resource-file src="src/ios/scanditsdk-community-ios_4.16.1/ScanditBarcodeScanner.bundle"/> <framework src="src/ios/scanditsdk-community-ios_4.16.1/ScanditBarcodeScanner.framework" custom="true"/>
==&GT; PG Dev仍然正常工作,我的应用程序工作正常(暂时不使用scandit)
后续步骤:
==&GT; PG Dev正常运行并下载Scandit Sample App。 但该应用程序不起作用。点击扫描按钮时,没有任何事情发生..
经过一番调查,我发现我在Scandit课上遇到了异常。 在命令'Scandit.License.setAppKey'上添加试一试允许我在PG Desktop日志中报告以下错误:
ReferenceError: Can't find variable: Scandit
添加此try / catch使应用程序在下一行引发异常:
var settings = new Scandit.ScanSettings();
在网上搜索我的错误后,有些帖子建议手动添加框架并捆绑到xcode中。
所以我通过拖放框架并将其捆绑到xcode项目的框架文件夹中来实现。
但是当我尝试构建我的项目时,它失败了许多错误...... 要解决这个问题,我必须手动将所有scandit插件文件(* .h和* .m)放入我的xcode项目中。
之前的所有错误都已解决,但新的错误已经出现。 这是由于一些其他缺少本机ios框架... 添加这些框架后,所有错误都得到了解决,我成功构建了应用程序。
但是在运行它时,我仍然有错误:“ReferenceError:找不到变量:Scandit”
我现在已经没想完了...... 我做错了什么? 是否有人设法构建了嵌入了Scandit的PG桌面?
感谢。
对于这篇长篇文章感到抱歉,只是试着让我更精确。
答案 0 :(得分:0)
这里的问题有两个方面。首先你需要知道Scandit Barcode Scanner插件使用本机代码,因此不能在Phonegap Developer应用程序中使用,因为唯一传递给它的是你的html / css / javascript和插件的javascript部分。要包含插件的本机部分,您必须自己构建和部署项目。在您尝试构建XCode项目时,您似乎正在这样做。
第二部分是你对添加插件过于复杂。您无需手动克隆git仓库,添加我们的库,调整plugin.xml等中的路径。您可以直接从scandit.com上的帐户下载整个插件,其中包含库和plugin.xml是正确的。之后,您只需通过CLI将插件添加到项目中(另请参阅我们在http://docs.scandit.com/stable/phonegap/cordova-integrate.html处的文档),除非您使用的是过时的Phonegap版本,否则无需手动执行任何操作处理plugin.xml。使用我们正确准备的插件zip以自动方式执行此操作将删除大多数错误源,请尝试这种方式。
答案 1 :(得分:0)
谢谢@moritzha。它帮助我找到了解决方案。 我在开始时遵循了这个文档,但它没有用。 添加插件并构建应用程序后,我从未设法在我的xcode项目中看到它。
我利用改变我的mac的机会从头开始重新启动所有东西,经过多次尝试,我发现了我错在哪里。 实际上,scandit提供的文档缺少一步。
命令&#39; phonegap插件添加&lt;下载和解压缩插件的路径&gt; &#39;正在做一半的工作。
该命令正在将插件文件正确复制到我的项目,但它没有更新config.xml。 因此,在构建应用程序之前,必须编辑位于项目文件夹根目录下的config.xml。 您需要使用以下内容手动引用该插件: 并用您将使用的sdk版本替换x。
更新config.xml后,您将能够为目标平台构建应用程序。
我现在拥有自己的Phonegap开发者应用程序版本,使用Scandit插件代替默认的条形码扫描程序插件。而且效果很好。 这个插件太棒了!
PhoneGap Developer App版本:1.7.2(采用Github)