Some words about me

Lorem ipsum dolor sit amet, consectetur adipiscing elit. Maecenas a urna sit amet leo sagittis cursus a at lectus. Donec bibendum facilisis ultricies. Maecenas nec arcu dui, ut lobortis erat. In nec condimentum quam. Vivamus euismod scelerisque ligula vitae fermentum. Nulla dignissim rutrum eleifend.

Donec mi eros, congue ut consectetur eget, pretium vitae orci. Aliquam pharetra ultricies lobortis. Morbi eget nisi lectus. Maecenas felis augue, molestie in vestibulum et, lacinia et leo. Suspendisse potenti. Maecenas eget est augue. Donec tincidunt mollis fermentum.

Contact me?

 
 
 

Donec mi eros, congue ut consectetur eget, pretium vitae orci. Aliquam pharetra ultricies lobortis. Morbi eget nisi lectus. Maecenas felis augue, molestie in vestibulum et, lacinia et leo. Suspendisse potenti. Maecenas eget est augue. Donec tincidunt mollis fermentum.

Send the message
 

关于Host的修改

。。。哈哈,hello,最近总是工作效率低得很厉害哦。随便一个东西都可以让我为难很久,这不是,一个权限的问题,结果呢,自己总是不是很明白。。。。记下来咯,说不定下次会有用呢。。。、

    hosts文件!就是在系统底层的一个文件,没有任何的后缀名字。。

    然后我们这边的机顶盒总是在dns的时候,一部分呢,会出现解析不了的情况,所以呀,就像根据程序最原始的走法了,既然都会自己去读一下系统里面的hosts里面的ip地址的话,不如我们就自己写进去,这样就不用程序老去自己解析什么的咯,而且这样服务器可能也是很受不了的。。。。

   好了,麻烦开始来了,开始会简单的在配置文件里面写了权限的什么,但是基本上都是关于SD卡可读或者可写的权限,根本就没有什么多大的作用。。。

。。。然后在安装的时候,问题又来咯,结果说是要获得系统签名,就是androidshareid="com.uid.system"什么的东西,记得不是很清楚咯,可是这个就无关紧要咯,其实有了这个,在安装apk的时候,就需要跟程序一样的签名咯。。。

    。。。。。

刷机后又不行了,为什么了,原来hosts有个坏脾气,就是如果你想要用代码修改他呢,必须要是他之前被你修改过,不然就这样那原始固件里面的,真的没办法改动嘛。。。。然后。。。。针对如果就拿原始的出来改动,现在还没有找到问题,如果有angel,就请给出回答吧。

   这里其实还是有一部分代码是需要注意的:

       获得root权限:

Process process = null;
DataOutputStream os = null;
try {
 String hostPath = context.getFilesDir() + "/" + hostName;
    String cmd="/system/xbin -f " + hostPath + " " + "/etc/hosts";
    process = Runtime.getRuntime().exec("su"); //切换到root帐号
    os = new DataOutputStream(process.getOutputStream());
    os.writeBytes(cmd + "\n");
    os.writeBytes("exit\n");
    os.flush();
    process.waitFor();
} catch (Exception e) {
    return false;
} finally {
    try {
        if (os != null) {
            os.close();
        }
        process.destroy();
    } catch (Exception e) {
    }
}

当然会有好几种写法:

public static void modifyFile(File file) {
        Process process = null;
        try {
            String command = "chmod -R 777 " + file.getAbsolutePath();
            Runtime runtime = Runtime.getRuntime();
            process = runtime.exec(command);
            process.waitFor();
        } catch (Exception e) {

        }
    }

。。。。。等等。。。。。

当然还会遇到关于权限EACCES的这个警告,但是不可小觑哦,就是它害得我现在还没捣鼓出来。。。。

     大神见着,一定要相助于我哦!-

posted @ 2014-07-16 23:33  Catherine_Brain  阅读(238)  评论(0编辑  收藏  举报