2014-10-10 38 views
0

我安裝了Phonegap 3.5(最新版本,由npm)並在一個新項目中添加了barcodeScanner插件。Phonegap 3.5和BarcodeScanner 2.0

順便說一句,它不想工作。在這些日子裏,我遵循了許多教程/建議,遵循不同的指南,並嘗試使用不同的PG版本和(最重要的)插件的不同分支(由官方phonegap cli建議開始)。

問題總是相同的:cordova.plugins.barcodeScanner引發異常,因爲cordova.plugins似乎是未定義的。

這裏是最實惠的步驟,我跟着:

phonegap create barcodeapp 
cd barcodeapp 
phonegap plugin add com.phonegap.plugins.barcodescanner 
phonegap run android 

我使用的代碼是

try{ 
    cordova.plugins.barcodeScanner.encode("TEXT_TYPE", "http://www.nytimes.com", function(success) { 
     alert("encode success: " + success); 
    }, function(fail) { 
     alert("encoding failed: " + fail); 
    }); 
} catch (e) { 
    alert(e); 
} 

我把它通過www/index.html文件剛過

app.initialize(); 

你知道我失蹤的事嗎?

感謝

回答

0

我認爲你需要添加Android平臺和像運行前建立自己的科爾多瓦/的PhoneGap項目:

$ cordova create hello com.example.hello HelloWorld 
$ cd hello 
$ cordova platform add android 
$ cordova build 
$ cordova plugin add com.phonegap.plugins.barcodescanner 

請遵守本指南: http://cordova.apache.org/docs/en/3.5.0/guide_platforms_android_index.md.html#Android%20Platform%20Guide

+0

謝謝你的回答。順便說一下,結果是一樣的(使用phonegap似乎不需要添加平臺:phonegap文檔尚未對齊)。 – 2014-10-10 16:18:02

+0

您可以檢查以下內容: - 不要忘記在index.html中定義cordova.js腳本,並在使用barcodeScanner方法之前添加deviceready事件(http://docs.phonegap.com/en/3.5 .0/cordova_events_events.md.html#deviceready) - 如果在res/xml目錄中的config.xml文件中定義了barcodeScanner插件 - 如果barcodeScanner插件在assets/www目錄中的cordova_plugins.js中定義了 – user2516072 2014-10-11 22:31:03

+0

是,似乎永無止境。順便說一下,經過不同的嘗試,它的工作原理......我不知道是否可以,因爲我之前安裝了Camera插件(可能它是一個依賴項),或者因爲它需要一個空項目。在下一次,我希望有一點時間來嘗試不同的解決方案,以便在這裏留下完整的迴應。 – 2014-10-16 13:09:54