如何在适用于 Linux 的 Genymotion Android 模拟器上安装应用

问题描述

好吧,我已经花了一周的时间,我真的很沮丧。当我终于找到一些似乎可用的 linux 安卓模拟器时,它不可能在那里安装应用程序。我付出了很多努力让 Genymotion 在我的 linux debian 系统上运行,但当它最终运行时,我无法在其上安装应用程序。

我正在运行 Genymotion 3.1.2。创建虚拟移动设备三星 S7,使用 Android 8.0 和 API 版本 26(如果我没记错的话)。

我现在想做的是安装一个名为 Astrokings 的游戏并尝试玩它。

“安装 Open GAPPS”按钮当然坏了,不能用(发现一个 FAQ 文件说它目前坏了,可以在新版本中使用,很棒)。

所以,我在我的 linux 上安装了 ADB 来手动安装应用程序。当我继续 https://apkcombo.com/en-sk/apk-downloader/ 时,有很多选择。我选择的设备是电话。安卓 8.0。但我真的不知道该选择哪种架构。

我已经测试过:“认”、“x86”和“x86_64”。它们都不起作用。他们每次都返回错误 113:

rrr@rrr-hp:~/Downloads$ adb install astrokings-space-battles-real-time-strategy-mmo_1.25-1086.apk 
Performing Streamed Install
adb: Failed to install astrokings-space-battles-real-time-strategy-mmo_1.25-1086.apk: Failure [INSTALL_Failed_NO_MATCHING_ABIS: Failed to extract native libraries,res=-113]
rrr@rrr-hp:~/Downloads$

但是,我注意到,当尝试不同的架构时,下载按钮显示不同的大小(108 MB - 140MB)。但是一旦文件开始下载,它的大小总是相同的 140MB。如果我真的尝试过不同的架构,这让我有点怀疑。

几次尝试后,我发现在我的设备上安装 apk 文件的指南很少:https://apkcombo.com/en-sk/how-to-install/

所以,我使用 adb 来安装那个安装工具包,效果很好:

rrr@rrr-hp:~/Downloads$ adb install apkcombo-installer.apk 
Performing Streamed Install
Success
rrr@rrr-hp:~/Downloads$

(这让我相信我的 ADB 和模拟器连接运行良好) 但是,当我在模拟器上打开它时,我不知道如何安装这些东西。 我一直在尝试从模拟器下载 .apk 并将其安装在那里。但是,当我按下下载按钮时,没有任何反应。没有对话窗口,没有下载通知,什么都没有。

我如何知道哪种架构适合我的模拟器?我确实浏览了模拟器中的所有选项,但没有找到此信息。 老实说,我用什么方式安装 .apk 并不重要,我只想要那个应用程序,因为我已经投入了这么多精力,它让我发疯。

有人可以给我一些提示我做错了什么,或者告诉我正确的方法吗? (我什至不拒绝为 linux 使用不同的 Android 模拟器,但从我搜索内容来看,这是最好的选择)

解决方法

您不需要使用 ADB 来安装 APK:只需将 APK 文件拖放到设备显示屏上即可(请参阅 https://docs.genymotion.com/desktop/3.1/03_Virtual_devices/032_Deploying_an_application.html#deploying-an-application)。此外,Genymotion 桌面 VD 架构是 x86,而不是 x86_64,因此 x86 APK 应该“按原样”安装。请勿使用 APK 下载器之类的 3rd 方工具,否则会失败。

Moireover,我可以在 apkpure 上看到 Astrokings 没有 x86 变体,很可能安装失败,因为您正在尝试为 ARM 安装 APK。您需要安装 ARM 翻译工具来模拟 ARM CPU。有关详细信息,请参阅 https://docs.genymotion.com/desktop/3.1/03_Virtual_devices/032_Deploying_an_application.html#applications-with-arm-code

“安装 Open GAPPS”按钮当然坏了,不能用(发现一个 FAQ 文件说它目前坏了,可以在新版本中使用,很棒)。

您可以使用 Genymotion Desktop 3.2.0 测试版来解决此问题,或者只需手动安装 opengapp。见https://docs.genymotion.com/desktop/3.1/03_Virtual_devices/033_Emulating_sensors_and_features.html#alternative-method-from-the-opengapps-website

请记住,Genymotion 是一款面向开发人员或希望学习 Android 开发的人的工具;它不适用于休闲用户,例如游戏玩家。 Bluestacks、Nox 或 MEmu 更适合在 PC 上玩 Android 游戏。

相关问答

Selenium Web驱动程序和Java。元素在(x,y)点处不可单击。其...
Python-如何使用点“。” 访问字典成员?
Java 字符串是不可变的。到底是什么意思?
Java中的“ final”关键字如何工作?(我仍然可以修改对象。...
“loop:”在Java代码中。这是什么,为什么要编译?
java.lang.ClassNotFoundException:sun.jdbc.odbc.JdbcOdbc...