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
相关推荐
XIAOHEZIcode10 小时前
Ubuntu 终端美化全栈指南:Bash 到 Kitty 踩坑实录
linux·ubuntu·命令行
恋猫de小郭11 小时前
Amper 正式转正 Kotlin Toolchain ,Gradle 未来何去何从
android·前端·flutter
plainGeekDev12 小时前
ButterKnife → ViewBinding
android·java·kotlin
唐青枫12 小时前
别再只会用 cron:Linux systemd Timer 定时任务实战详解
linux
成都大菠萝1 天前
Android Car CarProperty 车辆信号链路
android
敲代码的鱼1 天前
PDF 预览与签名批注写回 支持安卓 iOS 鸿蒙 UTS插件
android·前端·ios
时光足迹1 天前
uni-app 视频通话实战:康复师与患者视频问诊的 6 个致命 Bug 与解决方案
android·ios·uni-app
Coffeeee1 天前
闲聊几句,Android老哥们,你们多久没做技改需求了
android·程序员·代码规范
萝卜er1 天前
Fragment 生命周期与状态恢复-《Android深水区(四)》
android
萝卜er1 天前
Intent 显式、隐式与 PendingIntent-《Android深水区(五)》
android