原文出处:http://rensanning.iteye.com/blog/2034026javascript
谈谈我使用这个的体会吧;java
git地址 https://github.com/wildabeast/BarcodeScanner.gitandroid
我试过按照他的方法直接安装git,后来发觉有写文件不对应老是报错,因而我采用最原始的方法,git
1.访问插件地址https://github.com/wildabeast/BarcodeScanner,直接下载到本地 经过“cordova plugin add 插件本地地址”github
2. 打开文件目录 platforms\android\res\menu\encode.xml 替换成以下代码spa
<menu xmlns:android="http://schemas.android.com/apk/res/android"> <item android:id="@+id/menu_share" android:title="@string/menu_share" android:icon="@android:drawable/ic_menu_share" android:orderInCategory="1" android:showAsAction="withText|ifRoom"/> <item android:id="@+id/menu_encode" android:title="@string/menu_encode_vcard" android:icon="@android:drawable/ic_menu_sort_alphabetically" android:orderInCategory="2" android:showAsAction="withText|ifRoom"/> </menu>
3.扫码调用插件
<a href="#" class="btn" onclick="scanCode();">Scan Code</a> <script type="text/javascript"> function scanCode() { cordova.plugins.barcodeScanner.scan( function (result) { alert("We got a barcode\n" + "Result: " + result.text + "\n" + "Format: " + result.format + "\n" + "Cancelled: " + result.cancelled); }, function (error) { alert("Scanning failed: " + error); } ); } </script>
4.纯文本设计
<a href="#" class="btn enc" onclick="encodeText();">Encode Text</a> <script type="text/javascript"> function encodeText() { cordova.plugins.barcodeScanner.encode( "TEXT_TYPE", "http://www.baidu.com", function(success) { alert("encode success: " + success); }, function(fail) { alert("encoding failed: " + fail); } ); } </script>
5.Email地址code
<a href="#" class="btn enc" onclick="encodeEmail();">Encode Email</a> <script type="text/javascript"> function encodeEmail() { cordova.plugins.barcodeScanner.encode( "EMAIL_TYPE", "qwe123@qq.com", function(success) { alert("encode success: " + success); }, function(fail) { alert("encoding failed: " + fail); } ); } </script>
6.电话号码orm
<a href="#" class="btn enc" onclick="encodePhone();">Encode Phone</a> <script type="text/javascript"> function encodePhone() { cordova.plugins.barcodeScanner.encode( "PHONE_TYPE", "131-1111-1111", function(success) { alert("encode success: " + success); }, function(fail) { alert("encoding failed: " + fail); } ); } </script>
7.短信地址
<a href="#" class="btn enc" onclick="encodeSMS();">Encode SMS</a> <script type="text/javascript"> function encodeSMS() { cordova.plugins.barcodeScanner.encode( "SMS_TYPE", "An imeone.", function(success) { alert("encode success: " + success); }, function(fail) { alert("encoding failed: " + fail); } ); } </script>
安装完了AndroidManifest.xml会出现一个错误,只须要把设计错误的稍微改一下就ok;
说完了我说说我走过的坑吧,但愿你们能绕过,
最开始我导入插件的时候,发觉zxing的部分找不到,因而我在网上查了一下zxing的功能,就下载了一个别人写好的,我运行了一下,能够运行,可是有个问题 sdk6.0就会报错
并且发觉一个问题,phonegap相机插件最新版本必需要6.0因此,我当时就陷入了两难的境地,最后我试着将项目还原到5.0,最后成功了,可是插件调用的时候少了几个参数,又要报错,纠结了一上午,
下午忽然就想到了刚才我将的那个步骤,就去尝试了一下,打包完了是没报错了,可是编译的时候又报错,缘由就是AndroidManifest.xml中,若是你们遇到了就稍微改动一下就行了,你们看了若是有什么不明白的能够给我留言