为usb网卡设置ip地址之一
当连接usb网卡时会弹出此界面(需内核usb网卡驱动支持)
<activity android:name=".MainActivity" android:label="@string/app_name" android:launchMode="singleInstance" android:screenOrientation="landscape"> <intent-filter> <action android:name="android.hardware.usb.action.USB_DEVICE_ATTACHED" /> </intent-filter> <meta-data android:name="android.hardware.usb.action.USB_DEVICE_ATTACHED" android:resource="@xml/device_filter" /> </activity>
<resources> <usb-device vendor-id="1060" product-id="38144" /></resources>
private static final String ETH0 = "eth0";protected void onResume() { ... UsbDevice device = (UsbDevice)getIntent().getParcelableExtra(UsbManager.EXTRA_DEVICE); if (device != null) { printf("first connect"+device.toString()) } else if (isEth0Connected()){ printf("had connected already") } ...} private boolean isEth0Connected() { IBinder b = ServiceManager.getService(Context.NETWORKMANAGEMENT_SERVICE); INetworkManagementService service = INetworkManagementService.Stub.asInterface(b); String[] currentIfaces = new String[0]; try { currentIfaces = service.listInterfaces(); } catch (Exception e) { Log.w(TAG, "listInterfaces="+e); return false; } boolean found = false; for (String currIface: currentIfaces) { if (currIface.equals(ETH0)) { Log.d(TAG, "eth0 iface found"); found = true; break; } } return found; }