【问题标题】:Android Studio AVD Manager Creating AVDs in root directoryAndroid Studio AVD Manager 在根目录中创建 AVD
【发布时间】:2014-09-14 02:46:20
【问题描述】:

我在 Ubuntu 上使用 Android Studio,它不会创建 AVD。在我的 ~/.android/avd 目录中没有创建任何内容。相反,在我的 /root 目录中创建了一些东西。我想我不会在意,当然,如果 AVD 在我的根文件夹中,它当然不能为这些 AVD 运行模拟器。我认为这是因为要在 Linux 中访问 Android SDK 管理器,Android Studio 必须使用 sudo 运行...但是它会将 AVD 放在根目录而不是 home...

我有几张图片非常清楚地概述了这个问题,但是如果没有 10 个代表,stackoverflow 甚至不允许我链接到它们,这是多么令人讨厌的限制。

编辑:这是我尝试执行位于/opt/android-studio/sdk/tools/ 中的 android bash 脚本时在终端中遇到的错误。 Android Studio 是否打开都是同样的错误。

 ss108 tools$ bash android 
java.lang.NullPointerException
at java.io.File.<init>(File.java:277)
at com.android.sdklib.internal.avd.AvdManager.parseAvdInfo(AvdManager.java:1516)
at com.android.sdklib.internal.avd.AvdManager.buildAvdList(AvdManager.java:1492)
at com.android.sdklib.internal.avd.AvdManager.<init>(AvdManager.java:346)
at com.android.sdklib.internal.avd.AvdManager.getInstance(AvdManager.java:369)
at com.android.sdklib.internal.repository.updater.UpdaterData.initSdk(UpdaterData.java:252)
at com.android.sdklib.internal.repository.updater.UpdaterData.<init>(UpdaterData.java:120)
at com.android.sdkuilib.internal.repository.SwtUpdaterData.<init>(SwtUpdaterData.java:61)
at com.android.sdkuilib.internal.repository.ui.SdkUpdaterWindowImpl2.<init>(SdkUpdaterWindowImpl2.java:104)
at com.android.sdkuilib.repository.SdkUpdaterWindow.<init>(SdkUpdaterWindow.java:88)
at com.android.sdkmanager.Main.showSdkManagerWindow(Main.java:407)
at com.android.sdkmanager.Main.doAction(Main.java:390)
at com.android.sdkmanager.Main.run(Main.java:150)
at com.android.sdkmanager.Main.main(Main.java:116)

【问题讨论】:

  • 你现在有 10 个代表,所以请随意张贴这些照片。
  • @Code-Apprentice 谢谢!大声笑

标签: android android-studio avd


【解决方案1】:

AVD 在/root 下创建,因为您使用sudo 启动Android Studio。您需要配置权限,这样就不需要了。我找到的最简单的解决方案是以我的普通用户身份安装 Android Studio 和 Android SDK。我将它们安装到$HOME/bin 中,这样我就完全不用担心权限问题了。当一切都安装好后,我的普通用户帐户对我需要的所有文件都有执行权限。

或者,您可以使用chmod(手动或使用find)设置Android Studio 和Android SDK 文件的权限。

【讨论】:

  • 感谢您的帮助,抱歉直到现在我才能够感谢您并尝试一下。我的 android-studio 文件夹在我的 Home 下的目录中解压缩。我使用 bash 脚本 studio.sh 运行 Android Studio,正如他们的 Linux 安装说明所说的那样。问题是如果不以 root 身份运行 Android Studio,我将无法启动 AVD 或 SDK 管理器。在我尝试运行的 AVD 的 .avd 和 .ini 文件上运行 chmod +u 没有帮助。运行 chmod +x 也没有
  • @ssaeed 您需要更改 SDK 安装中文件的权限,特别是 toolsplatform-tools 子目录下的可执行文件。 AVD 和 SDK 管理器使用 tools/android bash 脚本启动。确保您有权执行此文件。
  • 我在 tools/android.sh 上运行了sudo chmod +x。平台工具中没有这样的文件。不幸的是,我仍然遇到同样的问题。我想我现在只想使用 Windows。我更愿意使用 Linux,但我不能因为这个操作问题而耽误我的学习。希望 Google 和/或 JetBrains 尽快将其整合在一起。感谢您的帮助!
  • 现在,当我双击 SDK 管理器时,它会给我加载模式,并且栏完成,但在那之后实际上没有任何反应。 AVD 管理器仍然完全没有响应。如果我尝试从终端运行 android shell 脚本,我会在 Java 中得到一个空指针异常。
  • @ssaeed 请用确切的错误消息更新您的原始问题
猜你喜欢
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 2017-05-08
  • 2018-06-27
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
相关资源
最近更新 更多