出于商业和政策原因,国内手机厂商都阉割掉了Google play,致使Android许多付费应用无法下载,国外最新app也很难下到。
获取root权限
小米开发板已经有root权限了,方便一点
安装Google服务
需要依次安装服务框架,方便起见,可直接用工具.
注册Google账号
PC挂VPN或直接改hosts,去墙外注册一个。
已经有Google账号了,Google play还是访问不了,一直白屏。
在Android开VPN或改hosts,我云梯太慢,这里详细说改hosts。
设备:小米3移动版
hosts文件
github上好多相关项目。老D整理的也很方便:
利用adb push yourHosts /system/etc/hosts
1. /system为readonly分区,需要重新挂载。
adb shell 进去,mount ,看到mount的完整地址:
shell@pisces:/ $ mount
rootfs / rootfs ro,relatime 0 0
tmpfs /dev tmpfs rw,seclabel,nosuid,relatime,mode=755 0 0
devpts /dev/pts devpts rw,seclabel,relatime,mode=600 0 0
proc /proc proc rw,relatime 0 0
sysfs /sys sysfs rw,seclabel,relatime 0 0
selinuxfs /sys/fs/selinux selinuxfs rw,relatime 0 0
debugfs /sys/kernel/debug debugfs rw,relatime 0 0
none /acct cgroup rw,relatime,cpuacct 0 0
none /sys/fs/cgroup tmpfs rw,seclabel,relatime,mode=750,gid=1000 0 0
none /sys/fs/cgroup/memory cgroup rw,relatime,memory 0 0
tmpfs /mnt/asec tmpfs rw,seclabel,relatime,mode=755,gid=1000 0 0
tmpfs /mnt/obb tmpfs rw,seclabel,relatime,mode=755,gid=1000 0 0
none /dev/cpuctl cgroup rw,relatime,cpu 0 0
/dev/block/platform/sdhci-tegra.3/by-name/system /system ext4 ro,seclabel,relatime,data=ordered 0 0
/dev/block/platform/sdhci-tegra.3/by-name/userdata /data ext4 rw,seclabel,nosuid,nodev,noatime,discard,noauto_da_alloc,data=ordered 0 0
/dev/block/platform/sdhci-tegra.3/by-name/cache /cache ext4 rw,seclabel,nosuid,nodev,relatime,noauto_da_alloc,data=ordered 0 0
/dev/block/platform/sdhci-tegra.3/by-name/persist /persist ext4 rw,seclabel,nosuid,nodev,relatime,noauto_da_alloc,data=ordered 0 0
/dev/block/platform/sdhci-tegra.3/by-name/storage /storage_int ext4 rw,seclabel,nosuid,nodev,relatime,noauto_da_alloc,data=ordered 0 0
/dev/fuse /mnt/shell/emulated fuse rw,nosuid,nodev,relatime,user_id=1023,group_id=1023,default_permissions,allow_other 0 0
shell@pisces:/ $
- 切换用户角色到root。
Android的root用法和Linux的sudo不一样,详细一点参考
这里直接su就变成root了。
mount -o remount /dev/block/platform/sdhci-tegra.3/by-name/system /system
参照上面的具体system分区信息进行重新mount。之后/system分区属性会从ro变成rw,即可读写。
这时候就可以修改hosts文件了。adb shell里竟然没有vi~~怪不得Linux把它除名了。busybox的vi不知道是什么鬼,不会用。
从Mac下编辑好hosts文件保存,比如放在 ~/hosts 。
adb push 没有权限直接把文件push到/system下面,就中间暂存一下,先放到sdcard里。『注意:push的第二个参数是 目录名/文件名』
再以su身份cp 这个文件到/system/etc/hosts。『cp实际上调用的是toolbox的功能,adb shell下面连cp也没有的~』这一步也可以用ES在手机端操作。
不需要重启,Google已经可以访问,Google play已经可用。
最后推荐一个app,AirDroid。