ARM Chromebook上的Android开发环境?

时间:2016-12-20 04:03:43

标签: android android-studio arm chromebook

我已尝试多次在Android Studio上安装和使用ARM Chromebook (C100P),但安装始终失败,并显示failed to run mksdcard tool错误。我已经读到这是因为Android Studio依赖于与ARM处理器架构不兼容的本机二进制文件;即使在尝试各种黑客攻击或仅仅尝试使用这些库之后,我仍然无法在我的ARM Chromebook上设置Android开发环境。

1 个答案:

答案 0 :(得分:4)

原生结论:

我得出的结论是,你真的不能。 Android的编译工具依赖于本机库;具体而言,lib32stdc++6lib32z1。这些依赖于32位Intel二进制文件,因此在Google开始进行一些更改之前,不可能在ARM处理器上执行这些指令字(甚至不支持i386 multiarch支持)。

幸运的是,我在这里提出一个解决方法。我们要将计算委托给虚拟机;一个 与这些二进制文件兼容的文件。它将免费安全,因此您无需担心谁可以访问您的源代码。我们将使用Google App Engine来实现这一目标。

解决方法:

假设我们正在使用全新安装,我将开始本教程。

  1. 首先,下载latest Crouton installer,以便我们有一个完整的Ubuntu发行版。在Chromebook外壳中( Ctrl + Alt + T 并输入shell),执行安装程序。我选择安装最新版本的Ubuntu,Xenial,没有窗口管理器。我还启用了与Crouton Chrome扩展程序的集成,以启用共享剪贴板。

    sudo sh ~/Downloads/crouton -r xenial -t touch,audio,keyboard,extension

  2. 接下来,enter-chroot进入Ubuntu,并安装curl和python:

    sudo apt-get update sudo apt-get install curl python git

  3. 使用curl获取Google Cloud SDK。您可以将其解压缩到默认位置~/google-cloud-sdk或您想要的其他目录。

    curl https://sdk.cloud.google.com | bash

  4. 导航至您的Google Cloud SDK目录并执行安装程序。允许它更新您的$ PATH变量并启用对~/.bashrc文件的更新。
  5. 重启shell。使用logoutexit,然后使用sudo enter-chroot重新输入。这样,您就可以从命令行访问Google Cloud SDK安装。
  6. 使用gcloud auth login使用关联的Google帐户登录Google Cloud SDK。这需要你做两件事;首先,启用SDK以访问您的Google帐户。其次,您需要在提供的网址上从浏览器中复制验证密钥,您需要将其粘贴回控制台。
  7. 登录Google Cloud Console
  8. 创建一个新项目,例如 android-compile-worker ,并在该项目中创建一个新的存储库,例如的编译工具即可。我们将在此存储库中安装Android SDK Tools。当我们这样做时,我们实际上将它们放在一个虚拟机中,该虚拟机可以正确地解释它使用的本机32位二进制文​​件。
  9. 在网络浏览器中启动Google Cloud Console的终端。接下来,在Google Cloud Console终端和本地Chromebook外壳中复制您的存储库。

    gcloud init

    gcloud config set project project-name-here

    gcloud source repos clone repo-name-here

  10. 在Google Cloud Console终端中,移至您创建的存储库,下载并解压缩最新版本的Android Tools SDK。 wget https://dl.google.com/android/repository/tools_r25.2.3-linux.zip unzip tools_r25.2.3-linux.zip
  11. 现在我们已成功将Android SDK工具提取到Google Cloud计算机上;将PATH变量导出到此位置以启用它的利用率。 export ANDROID_HOME=path/to/unzipped/tools
  12. 安装我们笔记本电脑上无法使用的那些讨厌的二进制文件。由于在实例超时时此安装会丢失,因此您可以将命令附加到.bashrc以在新服务器实例之间保留安装。 sudo apt-get install lib32stdc++ lib32z1
  13. 返回Chromebook,安装以下实用程序以启用Android设备编程。 sudo apt-get install android-sdk-platform-tools-common android-tools-adb android-tools-adbd android-tools-fastboot
  14. 设计流程

    这就是一切!如果您已正确执行这些步骤,则您已成功配置了一个用于Android编译的Google虚拟机。通过Google Cloud Console终端,可以为您希望编译的各种API级别添加Android平台支持。

    在这里,我们添加API Level 25和Android Support Repositories,如下所示:

    ./android update sdk --filter android-25 --no-ui

    ./android update sdk -u -a -t android-25

    ./android update sdk --all --filter "extra" --no-ui

    现在,使用git pull origin mastergit push origin master,您可以将Chromebook上开发的代码上传到可以由Android SDK编译的存储库中。您可以通过执行项目的本地gradlew文件(即./gradlew build)来执行此操作。

    编译完成后,您可以使用pull将生成的二进制文件adb重新发送到开发计算机并使用Android设备桥(adb install path/to/apk)配置已连接的Android设备。