首页 诗词 字典 板报 句子 名言 友答 励志 学校 网站地图
当前位置: 首页 > 教程频道 > 移动开发 > 移动开发 >

替usb网卡设置ip地址之一

2012-06-29 
为usb网卡设置ip地址之一当连接usb网卡时会弹出此界面(需内核usb网卡驱动支持)activity android:name.M

为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>

device_filter.xml,指定要监视的usb网卡设备
<resources>    <usb-device vendor-id="1060" product-id="38144" /></resources>

MainActivity.java
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;    }

热点排行