我有一個要求,我必須從我的Android手機的USB連接到GPS設備的數據,數據應遞歸可用,只要我的任何應用程序要求它。GPS服務在後臺運行
像這樣的東西應該作爲位置偵聽器。
我可以在android中使用什麼,以便這個從這個USB獲取數據的任何時間的要求是可能的。
我有一個要求,我必須從我的Android手機的USB連接到GPS設備的數據,數據應遞歸可用,只要我的任何應用程序要求它。GPS服務在後臺運行
像這樣的東西應該作爲位置偵聽器。
我可以在android中使用什麼,以便這個從這個USB獲取數據的任何時間的要求是可能的。
這是進程間通信。在android系統的IPC的主要方法是使用服務,看到https://developers.android.com/guide/components/processes-and-threads.html#IPC
https://developers.android.com/guide/components/bound-services.html#Binding
您可以在後臺運行Service
或IntentService
,然後綁定(bindService()
)或解除綁定(unbindService()
)的服務,當您需要GPS位置
一個例如使用機器人系統使用內部GPS在背景[!]服務LocationListener
是http://www.stackoverflow.com/questions/28535703/best-way-to-get-user-gps-location-in-background-in-android
你必須要做到這一點不同,因爲你的服務是不是系統服務
所以寫一個後臺GPS服務(這是谷歌說的是最好的做法,我會用服務代替IntentService - >https://developers.android.com/training/best-background.html),那麼你(自寫的)應用程序可以綁定到GPS服務以獲取數據。你有一些應用程序或在啓動時
啓動服務一般外置GPS實現USB CDC類,所以你應該看到它在/dev/tty(USB | ACM ,...)
這是你如何與它進行通信或者你檢查它是否有事件/dev/input/eventx
(需要root爲此)
謝謝我會嘗試這個並回到you.I使用D2xx的API [鏈接](https://github.com/ksksue/ Android-FTDI-UART-Sample).Reference [link](http://www.ftdichip.com/Android.htm)從USB獲取數據,有沒有任何android項目的例子從USB讀取數據。 – RShenoy
取決於外部GPS實現的USB類。如果它實現CDC,則可以使用串口命令或捕獲事件或.... android低級別usb位於'android.hardware.usb.UsbDeviceConnection'中。示例在https://developer.android.com/reference/android/hardware/usb/UsbDeviceConnection.html和http://www.programcreek.com/java-api-examples/index.php?api=android.hardware .usb.UsbDeviceConnection –
這個例子是「如何在一個活動和一個服務之間發送消息」我想單獨運行我自己的服務,說'A'(它接收來自USB的數據),並從這個服務'A'到另一個或不同的應用程序。請幫助我這一點。 – RShenoy