免费注册 查看新帖 |

Chinaunix

  平台 论坛 博客 文库
最近访问板块 发新帖
查看: 2444 | 回复: 0
打印 上一主题 下一主题

android模拟器中提取文件 [复制链接]

论坛徽章:
0
跳转到指定楼层
1 [收藏(0)] [报告]
发表于 2011-12-22 08:51 |只看该作者 |倒序浏览
android模拟器中提取文件

1.先进入/media/STUDY/android/code/android_src-2.2/out/host/linux-x86/sdk/android-sdk_eng.root_linux-x86/tools目录。
    #cd /media/STUDY/android/code/android_src-2.2/out/host/linux-x86/sdk/android-sdk_eng.root_linux-x86/tools
2.再创建一个名为myAndroid的虚拟设备。
    #./android create avd -n myAndroid -t 1

3.启动名为myAndroid的虚拟设备并进入shell。并规定系统,数据等的映象文件路径,模拟器内核采用prebuild/android-arm/kernel/kernel-qemu。
    #./emulator -avd myAndroid -sysdir /media/STUDY/android/code/android_src-2.2/out/target/product/generic -data /media/STUDY/android/code/android_src-2.2/out/target/product/generic/userdata.img  -ramdisk  /media/STUDY/android/code/android_src-2.2/out/target/product/generic/ramdisk.img -kernel /media/STUDY/android/code/android_src-2.2/prebuilt/android-arm/kernel/kernel-qemu -shell

4.打开一个新的终端进行操作。进入工具目录:
    #cd /media/STUDY/android/code/android_src-2.2/out/host/linux-x86/sdk/android-sdk_eng.root_linux-x86/platform-tools/

5.使用adb工具的pull指令将虚拟器中的指定目录及其下文件复制到主机的指定目录下
   #./adb pull /system /home/zl/build_android_fs/rootfs/system
   #./adb pull /data /home/zl/build_android_fs/rootfs/data

网上搜一通后发现,更多的是用tar打包后再将文件取出的:
启动名为myAndroid的虚拟设备后,需要:
1.用adb工具的remount指令将/system目录重新挂载成可读写,这一步必须,否则文件传不到/system目录上:
  root@android:/ # mount
  rootfs / rootfs ro 0 0
  tmpfs /dev tmpfs rw,mode=755 0 0
  devpts /dev/pts devpts rw,mode=600 0 0
  proc /proc proc rw 0 0
  sysfs /sys sysfs rw 0 0
  none /acct cgroup rw,cpuacct 0 0
  tmpfs /mnt/asec tmpfs rw,mode=755,gid=1000 0 0
  none /dev/cpuctl cgroup rw,cpu 0 0
  /dev/block/mtdblock0 /system yaffs2 ro 0 0
  /dev/block/mtdblock1 /data yaffs2 rw,nosuid,nodev 0 0
  /dev/block/mtdblock2 /cache yaffs2 rw,nosuid,nodev 0 0
  root@android:/ #
#./adb remount
2.将busybox中的tar通过adb工具的push指令将tar传入到虚拟器的/system/bin目录中
#./adb push /home/zl/s3c2440_nfs/bin/tar /system/bin
3.进入到Android模拟器的shell中将要提取的数据打包。操作如下:
    #tar -czf /cache/system.tar.gz /system
    #tar -czf /cache/userdata.tar.gz /data
4. 使用adb工具的pull指令将打包的文件取出
    #./adb pull /cache/system.tar.gz .
    #./adb pull /cache/data.tar.gz .
5.再将其解压到/home/zl/build_android_fs/rootfs下相应的目录中
   tar xf system.tar.gz -C /system /home/zl/build_android_fs/rootfs
   tar xf data.tar.gz -C /system /home/zl/build_android_fs/rootfs
 
您需要登录后才可以回帖 登录 | 注册

本版积分规则 发表回复

  

北京盛拓优讯信息技术有限公司. 版权所有 京ICP备16024965号-6 北京市公安局海淀分局网监中心备案编号:11010802020122 niuxiaotong@pcpop.com 17352615567
未成年举报专区
中国互联网协会会员  联系我们:huangweiwei@itpub.net
感谢所有关心和支持过ChinaUnix的朋友们 转载本站内容请注明原作者名及出处

清除 Cookies - ChinaUnix - Archiver - WAP - TOP