添加網絡ADB的方法(含以太網和無線)


將下面代碼添加至packages/apps/Settings/src/com/android/settings/DevelopmentSettings.java

結合之前的添加wifi adb的博客

也要仿照着在xml文件中添加以太網相關的變量接口直接使用網絡adb

else if (preference == mEnableWifiAdb) {
        if (mEnableWifiAdb.isChecked()) {
            Settings.Global.putInt(getActivity().getContentResolver(),ADB_WIFI_ENABLED_KEY, 1);
            android.os.SystemProperties.set("sys.connect.adb.wifi","1");

          EthernetManager mEthManager = (EthernetManager) getSystemService(Context.ETHERNET_SERVICE);
             int Ethenable = mEthManager.getEthernetIfaceState();
               if( Ethenable == EthernetManager.ETHER_IFACE_STATE_UP )
{
           IpAssignment mode =mEthManager.getConfiguration().getIpAssignment();
             String inetAddr;
            if (mode== IpAssignment.STATIC){    // 如果是靜態的
StaticIpConfiguration staticIpConfiguration=mEthManager.getConfiguration().getStaticIpConfiguration();

   LinkAddress ipAddress = staticIpConfiguration.ipAddress;
        inetAddr=ipAddress.getAddress().getHostAddress();
             }
          else{
        String iface = "eth0";
        inetAddr = SystemProperties.get("dhcp."+ iface +".ipaddress");
        }
              if ("0.0.0.0".equals(inetAddr)) {
                mEnableWifiAdb.setSummary(getResources().getString(R.string.enable_wifi_adb_openwifi));
}else{
    mEnableWifiAdb.setSummary(getResources().
            getString(R.string.enable_wifi_adb_connected_summary,inetAddr));
}

 }
else
{
            WifiManager wifiManager = (WifiManager)getSystemService(Context.WIFI_SERVICE);
            WifiInfo wifiInfo = wifiManager.getConnectionInfo();
            int ipAddress = wifiInfo.getIpAddress();
            String ipAddressString = (ipAddress & 0xFF ) + "." +((ipAddress >> 8 ) & 0xFF) + "." +
                    ((ipAddress >> 16 ) & 0xFF) + "." +( ipAddress >> 24 & 0xFF) ;
            Log.i(TAG, "ipAddress="+ipAddress);
            Log.i(TAG, "ipAddressString="+ipAddressString);
            if ("0.0.0.0".equals(ipAddressString)) {
                mEnableWifiAdb.setSummary(getResources().getString(R.string.enable_wifi_adb_openwifi));
}else{
    mEnableWifiAdb.setSummary(getResources().
            getString(R.string.enable_wifi_adb_connected_summary,ipAddressString));
}
    }    } else {
            Settings.Global.putInt(getActivity().getContentResolver(),ADB_WIFI_ENABLED_KEY, 0);
            android.os.SystemProperties.set("sys.connect.adb.wifi","0");
            mEnableWifiAdb.setSummary(getResources().getString(R.string.enable_wifi_adb_summary));
        }
        }

 


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM