在Linux上模拟Android应用程序的3种方法

如果您是Android的忠实拥护者,您可能会意识到自己喜欢的移动操作系统是Linux衍生的。过去我们介绍了Android如何基于开源组件,而Linux内核就是其中之一。可以推断,如果它们如此接近,那么在Linux上运行Android应用应该相对容易。

事实证明,这是正确的。通常,在另一个操作系统上为一个操作系统运行应用程序会很棘手。但是,Linux用户有两种方法可以运行Android应用程序,从而使事情变得相对容易。让我们看一下。

其他操作系统上Android的现有方法

我们过去介绍了几种在其他操作系统上运行Android或其应用的方法。这些通常采用两种形式之一:

  • 第一种是使用某种类型的虚拟机(VM),有时也称为仿真器。简而言之,它是模拟整个Android系统的软件,是针对Windows的此方法的更优化示例。
  • 第二种方法是使用兼容性软件。尽管它们的精确方法有所不同,但它们旨在将Android软件的输入和输出转换为主机可以理解的内容。一种方法是使用Chrome浏览器和名为ARChon的附加组件来实现此效果。
  • 在以下各节中,我们将探索以下Linux原生解决方案,它们在不同程度上使用上述选项:<

  • Anbox,它使用Ubuntu的Snap软件包格式。它的运作更像是一个兼容层,并从各种“控制面板"启动应用程序。
  • Shashlik,它使用基于QEMU的优化VM。它会在常规系统启动器中为Android应用程序创建条目。
  • Genymotion,它使用基于VirtualBox的优化VM。它运行一个完整的虚拟设备界面。
  • 我们将在下面详细介绍每个选项。

    1。 Anbox

    Anbox顾名思义就是将自己标为“盒子里的Android"。这是一个Linux应用程序,它在容器中提供了完整的Android软件堆栈,类似于Docker的运行方式-幸运的是,大多数主要的Docker都可以运行。

    您可以在软件中心中进行搜索,或者对Ubuntu使用以下命令提示符:

    sudo apt install snapd

    现在, Snap系统已安装,请使用Anbox网站上的命令下载并安装它:

    snap install --classic anbox-installer && anbox-installer

    基于终端的安装程序脚本将为您获取所有内容。首先执行一些管理功能,例如添加新的软件存储库和安装必备软件。然后,它将下载Anbox Snap软件包(如下图所示)并安装它。

    一旦安装,您可以使用以下命令确认其正在运行:

    安装Anbox后,您可以从主菜单启动它。它显示在我的“失物招领处"类别中,但应与文本搜索一起出现。片刻之后,屏幕上将弹出“ Anbox应用程序管理器"。

    该项目的网站表示,该项目仍处于开发初期。当您要安装第一个应用程序时,会感觉到这种情况。没有很好的图形化拖放方法,您需要使用Android调试桥(ADB)。该工具是Android Studio的一部分,因此,如果已经安装,则一切就绪。如果没有,您可以安装Android Studio(因为它提供了自己的模拟器,另一个选项),或者可以从程序包管理器中查看它们。

    在Ubuntu上,以下内容将为您提供所需的工具:

    sudo apt install android-tools-adb

    现在,您可以安装一个方便使用APK文件的应用。以下命令将安装Orgzly(做笔记和待办事项的应用程序):

    最后,您会在Anbox窗口中看到该应用程序的图标弹出。点击它会打开您想要的应用程序(下图显示了我们在上方安装的Orgzly应用程序):

    Esc 键的作用类似于后退按钮,允许您关闭应用。

    2。 Shashlik

    Shashlik是另一个选项,类似于Anbox。虽然后者使用Snap软件包的容器技术,但Shashlik实际上包括了一个基于QEMU的轻量级虚拟机。

    下载庞大的DEB软件包后,可以使用以下命令将其安装在Ubuntu系统中:<

    dpkg -i shashlik_0.9.3.deb

    在Shashlik中安装应用程序也在进行中。但是安装命令更加简单:

    /opt/shashlik/bin/shashlik-install name_of_app_file.apk

    完成后,您会看到一个漂亮的小弹出窗口,表示安装成功。

    您还将获得一个输入项在启动器菜单中(“ Android应用"类别下),然后单击该应用将启动。 Shashlik的启动时间明显比Anbox长,因为它实际上是在启动适当的VM:

    最后,您的应用程序可能会在一个很小的窗口中打开。 * / opt / shashlik / android / hardware-qemu.ini 中有一些QEMU设置,您可以进行调整以获取更大的屏幕。

    总体而言,体验似乎是如果您可以接受较慢的启动速度,则可以轻松安装Shashlik并设置一些应用程序。

    3。 Genymotion

    Genymotion与上述两个选项略有不同。

    首先,它是一种商业产品,因此,如果要长期使用它,则需要将其小马化。现金。这也意味着您需要拥有Genymotion帐户才能下载试用版。最后,它被定位为开发人员工具,这意味着它并不是真正的启动应用程序的便捷方式,而是完全可用于测试的系统。如果没有上述任何一项,可以先填写一个简单的表格并注册一个帐户:

    重新登录帐户后,单击右上角的“试用"按钮页面。它将带您到下载页面,您可以在其中为系统选择Genymotion的版本。下载此文件时,还应确保已安装VirtualBox,因为Genymotion使用了它。

    完成后,请确保您赋予BIN文件可执行特权,然后以root身份运行它(如

    简单设置将很快完成,并通知您可用的“ / opt / genymobile / genymotion / genymotion"命令。运行此命令将启动应用程序:

    将出现试用版,要求提供身份验证或许可证。选择登录并提供您的帐户凭据。接受EULA后,系统会要求您创建虚拟设备:

    该应用提供了一些旧设备和新设备。选择一个并单击两次 Next ,将启动该过程,下载并设置新设备。

    安装完成后,您只需从列表中选择新设备即可。应用程序的主窗口,然后单击开始按钮:

    运行后,您将在窗口中看到功能齐全的Android设备。

    但是起初它仅包含少量应用程序。幸运的是,有了Genymotion,您可以使用图形方法(拖放)来安装新方法。将APK文件拖放到窗口上会自动将其传输到虚拟设备,进行安装并运行。在下图中,我们可以再次(再次)看到Orgzly,这一次的分辨率更高:

    那么哪一个最好?

    答案很简单:运行您需要的应​​用。而且通常情况下,不要以为只选择一个。如果您拥有一款应用程序,如Anbox中的超级按钮,另一个在Shashlik中嗡嗡作响的应用程序以及另一个需要Genymotion强大功能的应用程序,请全部使用它们!也可以随意将Android Studio仿真器放到那里!

    您有桌面上绝对必须具备的所有Android应用吗?您是否使用了以上任何解决方案?它们与BlueStacks的同类产品相比如何?

    标签: 进一步了解以下内容:Android Emulation Linux