由于某些原因,可能需要指定域名对应的IP地址,因此要配置 /etc/hosts 文件。

Android是基于Linux的系统,与Linux类似,通过hosts文件来设置。 在Android下,/etc是软链接到/system/etc的,因此需要修改/system/etc/hosts来实现。

但是这个文件是只读,不能通过shell直接修改,于是可以通过连接到PC上使用adb来修改。

步骤如下:

1、获得root权限:adb root

2、设置/system为可读写:adb remount

3、将hosts文件复制到PC:

        adb pull /system/etc/hosts     hosts        # PC机上文件名

4、修改PC机上文件 5、将PC机上文件复制推送到手机:

        adb push  hosts    /system/etc/hosts

如果要查看是否修改成功,可以在PC上:

1) 执行 adb shell

2) 运行 cat /system/etc/hosts

或者在手机上:

运行cat /system/etc/hosts

 

------------------ 

???????????? no permissions解决方法

当出现????????????    no permissions时,正确的做法。

#lsusb

Bus 001 Device 011: ID 0bb4:0cca High Tech Computer Corp.

#vi /etc/udev/rules.d/51-android.rules

添加

SUBSYSTEM=="usb", ATTR{idVendor}=="0ff9",MODE="0666",GROUP="plugdev"
SUBSYSTEM=="usb", ATTR{idVendor}=="0cca",MODE="0666",GROUP="plugdev"

#/etc/init.d/udev restart

如果还是找不到设备,继续:

# which adb

#cd adb_path      // 进入adb的路径下

#sudo su

#./adb kill-server

#./adb start-server

#./adb devices

 

adb 重启脚本

#!/bin/bash

if [ $# -lt 1 ];then
        echo "please input adb command as arguments"
        exit 1
fi

source /etc/profile

echo "restart udev"
#/etc/init.d/udev restart
service udev restart

str=$(which $1) > /dev/null  #找到adb命令路径,注意bash等号两边不能有空格,否则会
找不到命令
echo $str > /dev/null

$1 kill-server
$1 start-server

 

优化版:

#!/bin/bash

#if [ $# -lt 1 ];then
#       echo "please input adb command as arguments"
#       exit 1
#fi

source /etc/profile

echo "restart udev"
#/etc/init.d/udev restart
service udev restart

str=$(which $1) > /dev/null  #找到adb命令路径,注意bash等号两边不能有空格,否则会
找不到命令
echo $str > /dev/null

adb kill-server
adb start-server

 

如果是小米手机,可能找不到设备,在拨打电话盘上输入: *#*#717717#*#*