前往小程序,Get更优阅读体验!
立即前往
首页
学习
活动
专区
工具
TVP
发布
社区首页 >专栏 >Ubuntu 18.04等Linux系统安装Anbox并使用它运行Android应用程序

Ubuntu 18.04等Linux系统安装Anbox并使用它运行Android应用程序

作者头像
用户8710643
修改2021-06-11 09:59:36
3.5K0
修改2021-06-11 09:59:36
举报
文章被收录于专栏:linux百科小宇宙

Android模拟器应用程序允许我们直接从Linux系统运行Android应用程序或游戏,本文介绍在Ubuntu Linux 18.04系统中安装Anbox的方法,包括其他Linux发行版上的安装方法,并且介绍启动及应用Anbox来运行Android应用程序。

Anbox简介

Anbox是一种基于容器的方法,用于在常规GNU/Linux系统上启动完整的Android系统,它是新的和现代的模拟器。相似但不同的项目还有Shashlik和Genimobile等。此方法使用snapcraft,同样可以按着QQ和微信等,也可以安装机器人操作系统ROS 1和2。

由于Anbox将核心Android操作系统放入使用Linux命名空间(LXE)的容器中,因此访问已安装的应用程序时不会出现慢速。Anbox将允许你在Linux系统上运行Android而不会降低虚拟化的速度,因为核心Android操作系统已经放入使用Linux命名空间(LXE)的容器中。

Android容器无法直接访问任何硬件,所有硬件访问都通过主机上的anbox守护程序进行。

每个应用程序将在一个单独的窗口中打开,就像其他本机系统应用程序一样,它可以在启动器中显示。

1、使用snap方式安装Anbox,只需要你的系统支持snap安装即可:

安装Anbox snap非常简单:

linuxidc@linuxmi:~/www.linuxidc.com$ snap install --devmode --beta anbox

如果尚未登录Ubuntu Store,则snap命令会要求你使用sudo snap ...以便安装snap:

linuxidc@linuxmi:~/www.linuxidc.com$ sudo snap install --devmode --beta anbox

[sudo] linuxidc 的密码:

anbox (beta) 4-56c25f1 from morphis installed

目前我们需要使用--devmode,因为Anbox snap尚未完全限制,上游snapd项目的工作已经开始,以获得对完全禁闭的支持。

作为使用--devmode的作用,snap不会自动更新,要更新到更新版本,可以运行:

linuxidc@linuxmi:~/www.linuxidc.com$ snap refresh --beta --devmode anbox

有关当前可用版本的snap的信息可通过以下方式获得:

linuxidc@linuxmi:~/www.linuxidc.com$ snap info anbox

name:      anbox

summary:  Android in a Box

publisher: morphis

contact:  https://anbox.io

license:  unset

description: |

  Runtime for Android applications which runs a full Android system

  in a container using Linux namespaces (user, ipc, net, mount) to

  separate the Android system fully from the host.

 

  You can find further details in our documentation at

  https://github.com/anbox/anbox/blob/master/README.md

commands:

  - anbox

  - anbox.android-settings

  - anbox.appmg

  - anbox.collect-bug-info

  - anbox.shell

services:

  anbox.container-manager: simple, enabled, active

snap-id:      Nr9K6UJaIOD8wHpDEQl16nabFFt9LLEQ

tracking:    beta

refresh-date: today at 09:19 CST

channels:

  stable:    –                               

  candidate: –                               

  beta:      4-56c25f1 2020-01-02 (186) 391MB devmode

  edge:      4-56c25f1 2020-01-02 (186) 391MB devmode

installed:  4-56c25f1            (186) 391MB devmode

2、Anbox包被添加到Ubuntu(Cosmic)和Debian(Buster)存储库中,确保在系统中安装必要的内核模块才能使用Anbox,对于基于Ubuntu的用户请使用下面PPA安装,

支持Ubuntu 18.04:

linuxidc@linuxmi:~/www.linuxidc.com$ sudo add-apt-repository ppa:morphis/anbox-support

linuxidc@linuxmi:~/www.linuxidc.com$ sudo apt update

linuxidc@linuxmi:~/www.linuxidc.com$ sudo apt install linux-headers-generic anbox-modules-dkms

或者:

linuxidc@linuxmi:~/www.linuxidc.com$ sudo add-apt-repository ppa:morphis/anbox-support

linuxidc@linuxmi:~/www.linuxidc.com$ sudo apt update

linuxidc@linuxmi:~/www.linuxidc.com$ sudo apt install anbox-modules-dkms

安装anbox-modules-dkms软件包后,必须手动重新加载内核模块,否则需要重新启动系统:

linuxidc@linuxmi:~/www.linuxidc.com$ sudo modprobe ashmem_linux

linuxidc@linuxmi:~/www.linuxidc.com$ sudo modprobe binder_linux

注:系统/dev目录中应该有两个新节点:

$ ls -1 /dev/{ashmem,binder}

/dev/ashmem

/dev/binde

注:最后对于Debian/Ubuntu系统,请使用APT-GET或APT来安装anbox:

linuxidc@linuxmi:~/www.linuxidc.com$ sudo apt install anbox

3、基于Arch Linux可以使用AUR程序来安装它,我使用Yay,参考安装及使用Arch Linux/Manjaro系统中的AUR助手yay:

linuxidc@linuxmi:~/www.linuxidc.com$ yuk -S anbox-git

Anbox的先决条件

默认情况下,Anbox不随Google Play商店一起提供。

因此,我们需要手动下载每个应用程序(APK)并使用Android Debug Bridge(ADB)进行安装。

大多数发行版存储库都可以使用ADB工具,因此我们可以安装它。

1、对于Debian/Ubuntu系统,请使用APT-GET或APT来安装ADB:

linuxidc@linuxmi:~/www.linuxidc.com$ sudo apt install android-tools-adb

2、对于Fedora系统,使用DNF安装ADB:

linuxidc@linuxmi:~/www.linuxidc.com$ sudo dnf install android-tools

3、对于基于Arch Linux的系统,请使用Pacman安装ADB:

linuxidc@linuxmi:~/www.linuxidc.com$ sudo pacman -S android-tools

4、对于openSUSE Leap系统,使用Zypper安装ADB:

linuxidc@linuxmi:~/www.linuxidc.com$ sudo zypper install android-tools

下载Android应用程序及启动Anbox的方法

1、在哪下载Android应用程序

由于你无法使用Play商店,因此必须从可信站点(如APKMirror)下载APK包,然后手动安装它。

2、启动Anbox的方法

可以从Dash启动Anbox,这是默认Anbox的外观:

将应用程序推入Anbox

我们需要手动安装它。

首先,需要启动ADB服务器,请运行以下命令:

linuxidc@linuxmi:~/www.linuxidc.com$ adb devices

通用语法:

linuxidc@linuxmi:~/www.linuxidc.com$ adb install mingzi.apk

安装一个Android应用(如下图):

linuxidc@linuxmi:~/www.linuxidc.com$ adb install 'linuxidc.com.apk'

Success

卸载Anbox的方法

以下方法仅限使用snap来安装Anbox。如果要从系统中删除Anbox,首先必须删除snap。

注意:从系统中删除存储在快照中的所有数据:

linuxidc@linuxmi:~/www.linuxidc.com$ snap remove anbox

删除快照后,还必须删除已安装的内核模块(如果安装的话):

linuxidc@linuxmi:~/www.linuxidc.com$ sudo apt install ppa-purge

linuxidc@linuxmi:~/www.linuxidc.com$ sudo ppa-purge ppa:morphis/anbox-support

完成后,Anbox将从你的系统中删除。

本文系转载,前往查看

如有侵权,请联系 cloudcommunity@tencent.com 删除。

本文系转载前往查看

如有侵权,请联系 cloudcommunity@tencent.com 删除。

评论
登录后参与评论
0 条评论
热度
最新
推荐阅读
相关产品与服务
容器服务
腾讯云容器服务(Tencent Kubernetes Engine, TKE)基于原生 kubernetes 提供以容器为核心的、高度可扩展的高性能容器管理服务,覆盖 Serverless、边缘计算、分布式云等多种业务部署场景,业内首创单个集群兼容多种计算节点的容器资源管理模式。同时产品作为云原生 Finops 领先布道者,主导开源项目Crane,全面助力客户实现资源优化、成本控制。
领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档