后来发现Android下,SocketException是没有网络权限,BindException才是没有系统权限!
尝试root,发现hosts什么的还是不能改,明天再搞吧!
今天咨询了一个做Android的朋友,原来su只能赋予被外部执行的程序的权限,而app本身并不会因此获得权限。所以app中想要使用1024以下端口会失败。朋友他们执行需要root权限的操作,都是使用su加上外部命令来做。没有想象中的那么简单,而且Android环境不熟,开发起来各种调不通,很恼人,看来需要很多时间投入,最近也挺忙的,有大项目要上线了,因此hostd for Android暂时搁置,等有空了再搞吧。
今天买了一个反和谐工具,了解到了gfw通过DNS污染来拦截的事情。可以使用BlackHole来做一个防止DNS污染的小工具?
最近要做的东西好多啊,暂时就这样吧。BlackHole写了有三周了,业务时间每天没有间断过,过程中也有不少提升。找机会再更新吧。