最近在做一個android App,用到串口通信。其他都正常,但是在真機除錯的時候,真機通過串口線連接外部設備來接收資料,當串口線拔掉之后,再重新插入就無法接收到資料了,監聽usb的插拔廣播沒有效果,求各位大佬指點迷津
uj5u.com熱心網友回復:
你有沒有注冊usb廣播<receiver android:name="com.coeus.screentapdemo.receiver.UsbConnectionReceiver" > <intent-filter android:priority="1000" > <action android:name="android.hardware.usb.action.USB_STATE" /> </intent-filter> </receiver>
uj5u.com熱心網友回復:
感謝指教,現在可以了,是獲取的廣播訊息不對
uj5u.com熱心網友回復:
你好,我現在也遇到同樣的問題,求教如何監聽uj5u.com熱心網友回復:
主要是2個事件:1,USB插入;2,USB授權。
//申請USB權限用
private static final String ACTION_USB_PERMISSION = "自定義的,隨便.USB_PERMISSION";
/**
* USB授權
*/
private final BroadcastReceiver usbPermissionReceiver = new BroadcastReceiver() {
@Override
public void onReceive(Context context, Intent intent) {
String action = intent.getAction();
if (ACTION_USB_PERMISSION.equals(action)) {//授權:還需要判斷是同意還是拒絕、是否針對當前設備
} else if (UsbManager.ACTION_USB_DEVICE_ATTACHED.equals(action)) {
Log.d(tag, "USB設備插入");
}
}
};
//在合適的地方做注冊
IntentFilter filter = new IntentFilter();
filter.addAction(ACTION_USB_PERMISSION);
filter.addAction(UsbManager.ACTION_USB_DEVICE_ATTACHED);
filter.addAction(UsbManager.ACTION_USB_DEVICE_DETACHED);
context.registerReceiver(usbPermissionReceiver, filter);
uj5u.com熱心網友回復:
有用!非常感謝您。轉載請註明出處,本文鏈接:https://www.uj5u.com/yidong/276403.html
標籤:Android
