3

我似乎对Android模拟器有一些问题。我按照所有说明正确构建它,我可以像这样运行模拟器:

emulator -sysdir out/target/product/generic/ \
 -system out/target/product/generic/system.img \
 -ramdisk out/target/product/generic/ramdisk.img \
 -kernel kernel-goldfish-xattr-2.6.29 \ 
 -sdcard tdroidsd.img -skindir development/tools/emulator/skins \
 -data out/target/product/generic/userdata.img \
 -skin WVGA800 \
 -memory 512 -partition-size 500

这可以很好地启动模拟器。但是,每当我启动它时,都会收到以下警告:

WARNING: Data partition already in use. Changes will not persist!

这是一个很大的痛苦,因为每当我重新启动或杀死模拟器时,我安装的任何应用程序都会消失。

我看到在 stackoverflow 上有很多与此相关的主题,我检查了以下内容:

  • 锁定文件的存在:无
  • adb-server :杀死它并重新启动它并没有什么不同

我应该注意,我丝毫没有使用 Eclipse,而且我使用的是 Linux 机器(Gentoo)。

以详细方式运行显示以下内容:

emulator: autoconfig: -initdata out/target/product/generic/userdata.img
disk.ramdisk.path = out/target/product/generic/ramdisk.img
disk.systemPartition.initPath = out/target/product/generic/system.img
disk.systemPartition.size = 500m
disk.dataPartition.path = out/target/product/generic/out/target/product/generic/userdata.img
disk.dataPartition.size = 500m
avd.name = <build>

似乎 disk.dataPartition.path 设置以某种方式出现乱码,但我不知道为什么。我的 .bashrc 中有以下内容

 export PATH="~/bin:$PATH"
 export ANDROID_PRODUCT_OUT="~/tdroid/tdroid-4.1.1_r6/out/target/product/generic"
 export PATH="~/tdroid/tdroid-4.1.1_r6/system/core:$PATH"
 export ANDROID_BIN="~/tdroid/tdroid-4.1.1_r6/out/host/linux-x86/bin"
 export ANDROID_QTOOLS="~/tdroid/tdroid-4.1.1_r6/development/emulator/qtools"
 export ANDROID_TOOLCHAIN="~/tdroid/tdroid-4.1.1_r6/prebuilts/gcc/linux-x86/arm/arm-linux-androideabi-4.6/bin"
 export ANDROID_EABI_TOOLCHAIN="~/tdroid/tdroid-4.1.1_r6/prebuilts/gcc/linux-x86/arm/arm-linux-androideabi-4.6/bin"
 export ANDROID_HOST_OUT="~/tdroid/tdroid-4.1.1_r6/out/host/linux-x86"
 PATH=$ANDROID_BIN:$PATH
 PATH=$ANDROID_HOST_OUT:$PATH

如果有人能指导我解决这个问题,我将不胜感激!

4

2 回答 2

1

我发现这个问题正在寻找相同的问题。你提到的乱码disk.dataPartition.path导致我更多地玩弄路径。system.img我从和 中删除了 sysdir 路径userdata.imgramdisk.img请注意和仍然需要路径sdcard.img。一旦我做了这个改变,错误就消失了。这是我更新的脚本。

emulator \
   -sysdir img/ \
   -system system.img \
   -ramdisk img/ramdisk.img \
   -data userdata.img \
   -kernel prebuilts/qemu-kernel/arm/kernel-qemu-armv7 \
   -sdcard img/sdcard.img \
   -skindir sdk/emulator/skins \
   -skin WVGA800 \
   -memory 512 \
   -partition-size 1024
于 2014-01-07T15:28:55.793 回答
0

我有同样的问题,我使用 sysdir 的相对路径作为数据参数解决了它。

于 2013-05-21T13:45:50.927 回答