本文这里介绍 使用 android studio Emulator ,
当然也有 Anbox (Lightweight),
Waydroid (Best for Full Android Experience),
首先确保自己安装了 android studio ;
c
sudo apt update
sudo apt install openjdk-11-jdk
sudo snap install android-studio --classic
之后启动 studio
bash
cd /media/respecting_/S2/17_deploy/android-studio-2022.2.1.20-linux/android-studio/bin
./studio.sh
1. 安装模拟器
1.1 安装 android 模拟器
Open Android Studio and go to Tools → Device Manager → Create Virtual Device.
打开 Android Studio 并转到工具 → 设备管理器 → 创建虚拟设备 。
Choose a virtual device, install an Android system image, and launch the emulator.
选择一个虚拟设备,安装一个 Android 系统映像,并启动模拟器。
这里需要注意在 先使用 unzip -l your.apk | grep lib
, 确认一下,你后续需要按照的.apk 所支持的 类型,
如果显示
✅ lib/armeabi-v7a/
✅ lib/x86/
则你只能选择其中的 x86, 或者是 arm 对应的型号, 而不能选择 andriod 的x86-64 等其他模拟器版本;

1.2 检查已经安装的模拟器
使用该命令可以检查 已经安装了哪些类型的模拟器
bash
~/Android/Sdk/emulator/emulator -list-avds
c
~/Android/Sdk/emulator/emulator -avd Pixel_6_API_30_and11x86 -gpu swiftshader_indirect
输出如下, 表明当前只安装了这一种 android 版本类型的模拟器;
Pixel_6_API_30_and11x86
1.3 启动对应的模拟器
尝试使用软件渲染启动模拟器:
bash
~/Android/Sdk/emulator/emulator -avd Pixel_6_API_33 -gpu swiftshader_indirect
其中, Pixel_6_API_33 代表的是你安装的模拟器android 版本的名称,
启动不同的模拟器时, 使用对应的版本;
2. apk 安装
最直接的方式,直接将 apk 拖入到 模拟器中, 他会自动安装, 但是也可以使用 adb 的方式安装
2.1 确认apk 支持的类型
c
unzip -l MeridianInside.apk | grep lib
It shows:它显示:
✅ lib/armeabi-v7a/
✅ lib/x86/
如果输出以上两种类型, 表示支持这两种架构的 android 系统;
如果安装的模拟器是 x86_64 ,它可能无法接受该 APK;
2.2 adb 方式安装 .apk 文件;
bash
adb install /path/to/your.apk
2.3 adb 的版本匹配问题
当出现如下 adb 版本不匹配的情况, 也会导致 apk 无法安装;
bash
adb server version (41) doesn't match this client (39); killing...
ADB version mismatch:但是,您仍然有一个 ADB 版本不匹配的问题 ;
bash
adb version
You'll likely see two different versions in your system (one from the SDK, another from another installation).您可能会在系统中看到两个不同的版本 (一个来自 SDK,另一个来自另一个安装)。
bash
Android Debug Bridge version 1.0.39
Version 1:8.1.0+r23-5ubuntu2
Installed as /usr/lib/android-sdk/platform-tools/adb
如果出现 上面的 两种版本,则表明
您似乎正在使用 Ubuntu 软件包管理器 ( /usr/lib/android-sdk/platform-tools/adb ) 安装的 ADB 版本 。此版本已过时,并且可能与 Android SDK 中的 ADB 版本冲突。
bash
~/Android/Sdk/platform-tools/adb version
To avoid conflicts, uninstall the old version
bash
sudo apt remove adb
删除旧版本后,更新 PATH 以使用 SDK ADB:
bash
export PATH=~/Android/Sdk/platform-tools:$PATH
最后重新安装
bash
adb install MeridianInside.apk