ubuntu中使用安卓模拟器

本文这里介绍 使用 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
相关推荐
不会就选b3 分钟前
linux之进程管理(二)--替换
linux·运维·服务器
倔强的石头1068 分钟前
【Linux指南】动静态库系列(二):从源码复用到目标文件复用:为什么需要把 .o 打包成库
linux·运维·服务器
HLC++12 小时前
Linux的进程间通信
android·linux·服务器
华清远见IT开放实验室13 小时前
实验室建设案例 | 石家庄科技信息职业学院嵌入式实验室——从底层硬件到系统应用,一所应用型高校的嵌入式人才培养这样落地
linux·arm开发·stm32·嵌入式硬件·高校·实验室建设
爱笑鱼16 小时前
Binder(二):AIDL 生成的 Proxy、Stub 和 Parcel 到底在做什么?
android
groundhappy16 小时前
idalib安装和codex ida-mcp配置
linux·开发语言·python
爱笑鱼16 小时前
Binder(一):一次方法调用,究竟怎样跨进程执行?
android
通信小小昕17 小时前
Ubuntu 26.04 中文输入法安装
linux·运维·ubuntu
壮哥_icon17 小时前
【Android 系统开发】使用 BAT 脚本高效自动化管理 /system/priv-app/ 系统应用(安装与卸载)
android·运维·自动化