簡體   English   中英

``Cordova run android --device''命令的BLE訪問問題?

[英]BLE access issue with `Cordova run android --device' command?

我正在使用cordona / phonegap構建一個簡單的BLE應用程序。

我以BLE鎖為例。 使用“ cordova服務”,一切都可以正常工作:cordova可以使用Phonegap Android應用程序掃描和訪問可用的BLE設備。

在此處輸入圖片說明 在此處輸入圖片說明

但是,使用“ cordova run android --device”,我可以構建一個獨立的Android應用程序,將該應用程序下載到我的Android設備上; 但是當我在Android設備上執行下載的應用程序時,沒有顯示BLE設備。

在此處輸入圖片說明

有什么不同呢? 我是否需要做更多的事情以使獨立應用程序訪問Android BLE功能?

您需要將Cordova 藍牙插件安裝到Cordova應用程序中。

cordova plugin add cordova-plugin-ble-central

如果您正在使用phonegap cli,請嘗試

phonegap plugin add cordova-plugin-ble-central

該應用程序在PhoneGap Developer應用程序中運行時可以運行,因為該應用程序中已預先安裝了藍牙插件。 當您直接在Cordova中運行時,您需要自己安裝插件。

在安裝插件之前,您可以使用Chrome瀏覽器查看錯誤。 要從Android設備上的應用程序獲取堆棧跟蹤:在計算機上打開Chrome,輸入chrome:// inspect,然后選擇您的設備。 您應該在控制台中看到類似這樣的消息。

chrome dev工具中的stacktrace顯示ble未定義

安裝插件並重新部署項目后,掃描應該可以進行。

 cordova plugin add cordova-plugin-ble-central
 cordova run android --device

找到藍牙設備的更新的android應用的屏幕截圖

Don的答案對我來說(幾乎)是完美的,但是我認為我需要添加更多內容,以防萬一。

插件安裝

我實際使用的命令是phonegap plugin add cordova-plugin-ble-central從此站點 phonegap plugin add cordova-plugin-ble-central

之后,我有一個使用BLE庫創建的插件目錄。

修改config.xml(?)

我認為沒有必要執行此步驟,但是該站點說應在config.xml中添加這兩行,但是我可以在沒有此步驟的情況下構建應用程序。

<gap:plugin name="cordova-plugin-ble-central" source="npm" /> <preference name="phonegap-version" value="cli-6.1.0" />

執行

我可以使用此命令來構建和安裝應用程序。

cordova platform add android cordova run android --device

問題的原因

當我嘗試一些BLE插件時,我想我安裝了其他插件。 結果,我的插件目錄中有com.megster.rordova.blecordova-plugin-ble-central 我還猜測config.xml和package.json可能包含一些錯誤信息,以不包含正確的BLE庫。

因此,當我全新安裝BLE鎖定程序並安裝BLE插件並構建應用程序時,一切似乎都很好。

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM