如何在linux中使用基于windows的android模拟器avd数据?

如何在linux中使用基于windows的android模拟器avd数据?

我的机器之前运行的是 Windows 10,然后我决定再次切换回 Arch Linux。在安装 Arch Linux 之前,我备份了隐藏的 Android 目录,其中包含 AVD 数据目录,该目录位于:

C:\Users\Khalid\.android

切换到Arch后,我在上面安装了android模拟器,并将android模拟器所需的所有环境变量添加到.bashrc中,这些是定义的环境变量:

export EXTERNAL_DRIVE=/run/media/user12/EXTERN_DRIVE/Android
export ANDROID_HOME=/opt/android-sdk
export ANDROID_EMULATOR=$ANDROID_HOME/emulator
export ANDROID_EMULATOR_HOME=$EXTERNAL_DRIVE/.android/
export ANDROID_AVD_HOME=$ANDROID_EMULATOR_HOME/avd/
export ANDROID_TOOLS=$ANDROID_HOME/cmdline-tools/tools
export ANDROID_CMDLINE_TOOLS=$ANDROID_HOME/cmdline-tools/tools/bin
export ANDROID_PLATFORMS=$EXTERNAL_DRIVE/android-sdk/platforms
export ANDROID_PLATFORM_TOOLS=$ANDROID_HOME/platforms

之后,我通过执行以下命令列出了可用的 avd:

avdmanager list avd

但我收到一个错误:

    The following Android Virtual Devices could not be loaded:
        Name: Nexus_5X_API_26_Google_Play
        Path: /run/media/user12/EXTERN_DRIVE/Android/.android/avd/Nexus_5X_API_26_Google_Play.ini
       Error: Corrupted AVD ini file: /run/media/user12/EXTERN_DRIVE/Android/.android/avd/Nexus_5X_API_26_Google_Play.ini
    ---------
        Name: Nexus_5_API_23_Marshmallow
        Path: /run/media/user12/EXTERN_DRIVE/Android/.android/avd/Nexus_5_API_23_Marshmallow.ini
       Error: Corrupted AVD ini file: /run/media/user12/EXTERN_DRIVE/Android/.android/avd/Nexus_5_API_23_Marshmallow.ini

我还尝试看看我是否要通过执行以下操作来模拟机器:

emulator -avd Nexus_5X_API_26_Google_Play

但我收到以下错误:

PANIC: Cannot find AVD system path. Please define ANDROID_SDK_ROOT

谁能告诉我这可能出了什么问题或者为什么我会收到此错误?

答案1

我认为你应该使用导入而不是导出。您也可以使用已经运行的 Android studio 来完成此操作,因为它提供从 GUI 界面导入和导出图像的功能。你可以参考这里

https://developer.android.com/studio/run/managing-avds#importexporthp

https://developer.android.com/studio/run/managing-avds#selecthardwarepage

相关内容