在cmd中进入tools这个文件夹后,输入
adb shell
cat /data/data/com.android.launcher/databases/launcher.db > /sdcard/launcher.db上面两行命令的作用是把launcher.db这个文件从手机中的/data/data/com.android.launcher/databases目录下拷贝到sdcard中!
请问高人,这两句命令如何在Eclipse下新建一个应用程序以代码的形式实现?

解决方案 »

  1.   

            //执行cmd命令,命令格式为("cmd /c" + 你要操作的命令)或者("cmd.exe /c"+ 你要操作的命
             //令)
            Process p=Runtime.getRuntime().exec("cmd /c "+strcmd);        BufferedReader br=new BufferedReader(new InputStreamReader  
           (p.getInputStream   ()));
            while((Result=br.readLine())!=null)
            {
                  //可以打出命令执行的结果
            }
            
      

  2.   

    泪流满面...
       可能我描述的有问题吧,adb(android debug bridge)是android SDK里的一个工具,用这个工具可以直接操作管理android模拟器或者真实的andriod设备,它的主要功能有:
       运行设备的shell(命令行)
       管理模拟器或设备的端口映射 
        计算机和设备之间上传/下载文件
        将本地apk软件安装至模拟器或android设备 
    现在在命令行环境下,使用adb shell相关命令后,可以把/data/data目录下的相关文件拷贝到sdcard中,我现在想知道的是,这个功能能不能不用命令行的方式实现,而是在project中用代码实现。
    实际上问题就是在没有root权限下一个应用程序怎样去获取另一个应用程序中的文件(包含数据库文件和其他文件);注:所需要获取的数据库文件并没有做成ContentProvider供其他应用程序访问(或者有做成ContentProvider,但是给隐藏了)
        不过还是非常感激楼上这位仁兄...
      

  3.   

    cmd /c 是window客户端用java代码执行的方式在android程序中运行命令行可以有Runtime.getRuntime.exec(commmand)及ProcessBuilder.start()两种方式。效果都是一样的。
    例子可参考
    http://blog.csdn.net/sodino/archive/2010/10/14/5941308.aspx
      

  4.   

    权限不允许,不可能,倒是可以备份apk
      

  5.   


    实际上在命令行下输入adb shell 和 cat 相关指令来从/data/data目录下拷贝系统自带应用程序下的文件到/sdcard中是需要root权限的(没有root权限的话,会抛出permission denied),但是存在/data/app/下的apk文件,不需要root权限就能拷贝到/sdcard目录下吗?? 求真相,我顺便去试下..
      

  6.   

    感激涕零,我在自己建的app中以绝对路径去获取/data/app/下的apk文件,居然没有抛出FileNotFoundException异常!
    不过其实想想也是,放在/data/app/下的第三方app没有理由需要root权限才能获得它的安装文件..launcher.db这个数据库文件下favorites这个表中存放的是手机主界面上app的快捷方式信息,官方文档并没有给出获取这个表的ContentProvider URI,看了package com.android.launcher
    这个包的源码也没有找到,只发现final Uri uri = Uri.parse("content://" + Settings.AUTHORITY + "/old_favorites?notify=true");这个URI貌似和favorites有着很大关系,但是我在app中query过这个uri,返回NULL,也没有打印出任何该表属性值信息,不知道是不是我用的API版本问题,求高人赐教(给点思路就行)...
      

  7.   

    楼主,如何将android adb命令用java代码实现?有没有具体的代码?