天天看點

android usb attached,Android USB主機模式服務 – 基于USB_DEVICE_ATTACHED啟動

我想在Android中編寫一個基于USB_DEVICE_ATTACHED意圖啟動的服務.是以,基本上我的服務應該在連接配接特定USB裝置(FT232C – VID:PID 0403:6010)時啟動,并在分離USB裝置時停止.是否可以這樣做,還是應該總是有一個Activity來啟動這項服務,以防它尚未啟動?最終服務的目的是根據從該USB裝置提供的位置,使用TEST_PROVIDER更新LocationProvider上的位置.

我已經嘗試在AndroidManifest.xml中使用此配置建立服務

package="com.testlocservice"

android:versionCode="1"

android:versionName="1.0">

android:icon="@drawable/ic_launcher"

android:theme="@style/AppTheme">

android:resource="@xml/device_filter" />

xml / device_filter.xml包含此内容

我的LocationService類已重寫onStartCommand(),它處理USB_DEVICE_ATTACHED意圖

解決方法:

根據我的經驗,< service>無法接收USB意圖.我通過建立一個隐藏的活動來接收意圖并重新廣播它來克服這個問題.當然,此活動也可以處理啟動/停止服務.

标簽:android,usb,host

來源: https://codeday.me/bug/20190620/1246838.html