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
相关推荐
草上爬1 小时前
OpenWrt:使用ALSA实现边录边播
ubuntu·openwrt·record·alsa·play
apocelipes5 小时前
Linux c 运行时获取动态库所在路径
linux·c语言·linux编程
努力学习的小廉6 小时前
深入了解linux系统—— 进程池
linux·运维·服务器
秃头菜狗6 小时前
各个主要目录的功能 / Linux 常见指令
linux·运维·服务器
2301_793102496 小时前
Linux——MySql数据库
linux·数据库
jiunian_cn7 小时前
【Linux】centos软件安装
linux·运维·centos
藥瓿亭7 小时前
K8S认证|CKS题库+答案| 6. 创建 Secret
运维·ubuntu·docker·云原生·容器·kubernetes·cks
程序员JerrySUN7 小时前
[特殊字符] 深入理解 Linux 内核进程管理:架构、核心函数与调度机制
java·linux·架构
孤寂大仙v8 小时前
【计算机网络】非阻塞IO——select实现多路转接
linux·计算机网络
派阿喵搞电子8 小时前
Ubuntu下有关UDP网络通信的指令
linux·服务器·网络