将下面代码添加至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));
        }
        }

添加网络ADB的方法(含以太网和无线)的更多相关文章

  1. Android : 网络adb配置及有线端口占用解决方法

    一.调试环境: Android Debug Bridge version 1.0.40: Nexus6P平板(Android 8.0系统): 二.网络ADB调试: 1. Android设备除了用有线u ...

  2. 排错-Loadrunner添加Windows Resource计数器提示“找不到网络路径”解决方法

    Loadrunner添加Windows Resource计数器提示“找不到网络路径”解决方法 by:授客 QQ:1033553122 1.启动windows相关服务 win->services. ...

  3. Linux下多网卡同网段多IP网络分流设定方法

    Linux下多网卡同网段多IP网络分流设定方法 -- :: 标签:Linux下多网卡同网段多IP网络分流设定方法 当服务器需要较高的网络流量时,在其它资源不造成瓶颈的情况下无疑会用到多网卡. 第1选项 ...

  4. iphone抓取移动网络报文的方法

    iphone抓取移动网络报文的方法 对iPhone进行越狱,网上有很多教程,这里不做说明.越狱后会有cydia这个app,首先对用户身份进行设置,选用开发者身份.打开这个应用,搜索openssh,找到 ...

  5. Android 下使用tcpdump网络抓包方法

    Android 下使用tcpdump网络抓包方法 抓包需要tcpdump以及Root权限,tcpdump在本文后有下载. 首先把tcpdump传进手机,用adb命令(放SD卡有时会有问题,我一次可以用 ...

  6. swift网络数据请求方法

    搭建一个apache服务器,用php编写一个返回给客户端请求数据的脚本 <?php // header("Content-type:text/html;charset=utf-8&qu ...

  7. flask使用第三方云通讯平台时,出现{'172001':'网络错误'}解决方法

    问题描述:flask使用第三方云通讯平台时,出现{'172001':'网络错误'} 解决方法: 在sms.py文件中添加如下代码 import ssl # 取消证书验证ssl._create_defa ...

  8. Linux添加永久路由的方法

    通常我们使用route add -net添加临时路由.当系统重启,临时路由将丢失,重新配置路由带来了不必要的麻烦.可通过固化临时路由为永久路由的方法解决该问题. static-routes文件为路由固 ...

  9. 在html中添加script脚本的方法和注意事项

    在html中添加script脚本有两种方法,直接将javascript代码添加到html中与添加外部js文件,这两种方法都比较常用,大家可以根据自己需要自由选择 在html中添加<script& ...

随机推荐

  1. python3之subprocess常见方法使用

    一.常见subprocess方法 1.subprocess.getstatusoutput(cmd) 官方解释: Return (exitcode, output) of executing cmd ...

  2. Word打开时显示*模板*,删除模板

    XP系统, 找到目录 C:\Documents and Settings\Administrator\Application Data\Microsoft\Templates 删除里面的模板文件即可

  3. webpack(一) 安装使用 之css使用注意

    在webpackDemo 文件夹中新建 style.css,index.html style.css 中将背景色设为红色. body{ background-color: red; } he'llWo ...

  4. MVC学习(三)Code-First Demo

    前面两篇文章介绍了DataBase-First例子,这里就介绍Code-First. 个人简单理解:就是在程序中编写代码,然后在数据库中生成相应的表.字段.约束等等.听上去蛮神奇的.Now,begin ...

  5. mysql5.5以上my.ini中设置字符集

    在mysql5.1之前数据库设置字符集: [mysqld] default-character-set = utf8 mysql5.5以后[mysqld]中就不能使用default-character ...

  6. u-boot之内核是怎么启动的

    在u-boot之start_armboot函数分析已经分析过了整个程序框架,但只是说了下什么时候运行内核,并没有具体说明是怎么执行内核的.内核启动分以下几个步骤说明: 1.启动参数bootcmd=na ...

  7. 5F - Coin Change

    Suppose there are 5 types of coins: 50-cent, 25-cent, 10-cent, 5-cent, and 1-cent. We want to make c ...

  8. SqlServer添加触发器死锁的原因

    之前遇到过SqlServer添加触发器死锁的情况,纠结了很长时间 最近发现原来是因为我在建表的时候,把id设成主键后,系统默认了加一个聚集的索引 就是聚集索引把表锁住了

  9. Win32消息循环机制等【转载】http://blog.csdn.net/u013777351/article/details/49522219

    Dos的过程驱动与Windows的事件驱动 在讲本程序的消息循环之前,我想先谈一下Dos与Windows驱动机制的区别: DOS程序主要使用顺序的,过程驱动的程序设计方法.顺序的,过程驱动的程序有一个 ...

  10. oracle sqlplus操作

    步骤: su - oracle 切换到oracle用户 sqlplus /nolog 进入sqlplus命令行 conn cps/cps 连接到cps用户的数据库,cps/cps表示:用户/密码 执行 ...