为什么RootTools cp命令不起作用?

时间:2013-09-11 17:17:32

标签: android command backup roottools

我正在尝试在etc文件夹中复制一个文件,因为我使用了按钮中的下一个代码:

changeNTP.setOnClickListener(new View.OnClickListener() {
                public void onClick(View v) {
                    File exists = new File("/etc/gps.conf");
                    if (exists.exists()) {
                        // We make a backup first
                        CommandCapture command = new CommandCapture(0, "cp -f /etc/gps.conf /etc/gps" + System.currentTimeMillis() + ".conf");
                        try {
                            RootTools.getShell(true).add(command);
                        } catch (IOException e) {
                            // TODO Auto-generated catch block
                            e.printStackTrace();
                        } catch (TimeoutException e) {
                            // TODO Auto-generated catch block
                            e.printStackTrace();
                        } catch (RootDeniedException e) {
                            // TODO Auto-generated catch block
                            e.printStackTrace();
                        }
                        // Last time that file was modified
                        //Date filedate = new Date(exists.lastModified());
                    }
                }

            });

嗯,问题是它不会复制任何东西。可能是什么问题?

感谢。

1 个答案:

答案 0 :(得分:1)

好的,下一个是最好的解决方案:

int date = (int) System.currentTimeMillis();
String source = "/system/etc/gps.conf";
String destination = "/system/etc/gps" + date + ".conf";

if(RootTools.remount("/system/etc/", "rw")){
   RootTools.copyFile(source, destination, true, true);
}

问题是以前我指向/ etc,但这个位置是符号链接,真正的路径是/ system / etc.显然我们无法更改符号链接的挂载类型,因此,我刚刚发布的前一个代码是一个很好的答案。

感谢。