Linux上运行安卓应用:安装使用Anbox
文章目录
#0x0 简介
使用Linux运行安卓软件,类似于虚拟机,这种软件有不少
比如Genymotion,Andy OS,Android SDK等
这里来尝试一下**Anbox**.
Anbox和其它模拟器不同,Anbox使用LXC容器技术,将Android系统放入容器中运行,直接与Linux共用硬件,并将核心系统服务集成到GNU/Linux系统中,让您运行安卓应用就如同在原生系统上一样流畅。
#0x1 安装教程
参考官方文档:Install Anbox - Anbox documentation
The installation of Anbox consists of two steps.
1.Install necessary kernel modules
2.Install the Anbox snap
#0x11 第一步,安装需要的内核模块
添加仓库,安装anbox模块
sudo add-apt-repository ppa:morphis/anbox-support
sudo apt update
sudo apt install anbox-modules-dkms
激活模块
sudo modprobe ashmem_linux
sudo modprobe binder_linux
使用以下代码来检测是否成功安装内核模块
$ ls -1 /dev/{ashmem,binder}
/dev/ashmem
/dev/binder
上述代码来源于官方文档,我自己安装之后有报错如下
但是后续没发现有影响,如果您也报了这个错,可以先不追究,往下一步走
#0x12 安装Anbox
sudo snap install --devmode --beta anbox
snap 在国内没有镜像源,如果您的下载实在缓慢的无法接受或者下载屡次中断失败.
请使用终端科学的上网方法:
export https_proxy=http://127.0.0.1:代理软件的本地监听端口
snap install 成功就是安装完成了
此时可以在应用列表里搜索Anbox并打开
(或者终端运行anbox.appmgr
)
#0x2 使用Anbox
#0x21 一些简单的设置
首先点击Settings
选择Language & input -> Language
选择Add a language ,然后选简体中文
安装后按住右侧三横线拖拽到English上方
设置了中文,再有想自己改设置的,跟自己的手机也没多大区别了吧
另外可以看到,Anbox目前模拟的安卓版本为7.1.1,软件和系统的兼容问题可以注意一下这点哈.
#0x22 安装APK
然后到了这里我们终于进入主题,像一部手机一样的安装APK,那么很遗憾,简单的拖放双击APK都是无法安装到Anbox里的
您需要先安装ADB工具:
sudo apt install android-tools-adb
安装完之后,在APK文件所在目录打开终端
adb install 你要安装的.apk
电脑上正好有一个A岛的APK,安装试试
安装运行显示,成功!
#0x3 卸载Anbox
首先卸载anbox本身
snap remove anbox
然后清除模块
sudo apt install ppa-purge
sudo ppa-purge ppa:morphis/anbox-support
本文完,感谢您的阅读,若有助与您,请给我点个关注和赞,谢谢您的支持.
Linux上运行安卓应用:安装使用Anbox的更多相关文章
- 在Linux直接运行安卓程序
Linux上的软件少得可怜,要是能够直接运行安卓程序,那将是意见很酷的事情. 方法原理:首先这个方法不需要开启安卓虚拟机,是直接在Linux上运行的. 谷歌在很早之前提出了archon的方案,能够直接 ...
- 【无私分享:ASP.NET CORE 项目实战(第十章)】发布项目到 Linux 上运行 Core 项目
目录索引 [无私分享:ASP.NET CORE 项目实战]目录索引 简介 ASP.Net Core 给我们带来的最大的亮点就是跨平台,我在我电脑(win7)上用虚拟机建了个 CentOS7 ,来演示下 ...
- 不装mono,你的.NET程序照样可以在Linux上运行!
让.NET应用程序在linux上运行,目前通用的做法就是在Linux上安装mono,然后通过”mono your.exe“命令运行这个程序. 这种运行.net程序的办法有两个弱点,一个是需要客户机安装 ...
- Wine——在Linux上运行Windows软件
官网:https://www.winehq.org/ 参考: wikipedia 教你使用Wine在Linux上运行Windows软件 如何安装和使用Wine,以便在Linux上运行Windows应用 ...
- 在Linux上运行C#
众所周知,C#是Microsoft推出的.NET语言,只能在.NET平台上运行,例如Win 9x.ME.NT.2000.XP和Win CE之类的操作系统.但是,现在却有了一个叫做Mono的项目,它的目 ...
- 发布项目到 Linux 上运行 Core 项目
发布项目到 Linux 上运行 Core 项目 目录索引 [无私分享:ASP.NET CORE 项目实战]目录索引 简介 ASP.Net Core 给我们带来的最大的亮点就是跨平台,我在我电脑(win ...
- Docker在Linux上运行NetCore系列(一)配置运行DotNetCore控制台
转发请注明此文章作者与路径,请尊重原著,违者必究. 系列文章:https://www.cnblogs.com/alunchen/p/10121379.html 本篇文章操作系统信息 Linux:ubu ...
- .netcore 在linux 上运行 Helllo World 例子
要想在linux上运行netcore ,需要在linux 安装netcore SKD 下面分两步完成, 首先我的操作系统是 Ubuntu 14.04 ,不同版本可以参考 官网给出的连接 https:/ ...
- 开始使用 Docker (Linux 上运行 SQL Server) 上的 SQL Server 容器 - SQL Server | Microsoft Docs
原文:开始使用 Docker (Linux 上运行 SQL Server) 上的 SQL Server 容器 - SQL Server | Microsoft Docs 快速入门:使用 Docker ...
随机推荐
- js循环练习
var a=1; while(a>0){ var b=prompt('input number'); if(b>a){ alert('big'); } else if(b<a){ a ...
- Sequence in the Pocket【思维+规律】
Sequence in the Pocket 题目链接(点击) DreamGrid has just found an integer sequence in his right pocket. A ...
- 读懂操作系统之虚拟内存TLB与缓存(cache)关系篇(四)
前言 前面我们讲到通过TLB缓存页表加快地址翻译,通过上一节缓存原理的讲解为本节做铺垫引入TLB和缓存的关系,同时我们来完整梳理下从CPU产生虚拟地址最终映射为物理地址获取数据的整个过程是怎样的,若有 ...
- Eclipse设置断点无效、无法拦截请求进行Debug调试
场景: 在Eclipse中添加Debug断点,从后台页面中点击修改按钮提交数据,发现打断点的地方并没有拦截到请求,接下来对此情况的进行分析. 分析: * 如果页面是根据业务需求复制别的相似html页面 ...
- 【uni-app】uni.request二次封装,更好的管理api接口和使用
前言 之前写了一个Vue.js的axios二次封装(点击跳转),这次是uni-app,uni-app是基于vue.js框架的,我觉得是很好用的一个框架,而且一套代码编译那么多平台,非常节省成本,当然, ...
- int与Integer的区别(基本类型与复杂类型的对比)转
基本类型,或者叫做内置类型,是JAVA中不同于类的特殊类型. Java中的简单类型从概念上分为四种:实数.整数.字符.布尔值.但是有一点需要说明的是,Java里面只有八种原始类型,其列表如下: 实数: ...
- easymock案例2
public interface IStudent { public String doMethod1(); public String doMethod2(); public String doMe ...
- 网络编程 套接字socket TCP UDP
网络编程与套接字 网络编程 网络编程是什么: 网络通常指的是计算机中的互联网,是由多台计算机通过网线或其他媒介相互链接组成的 编写基于网络的应用程序的过程序称之为网络编程. 网络编程最主要的工 ...
- Spark HA搭建
正文 下载Spark版本,这版本又要求必须和jdk与hadoop版本对应. http://spark.apache.org/downloads.html tar -zxvf 解压到指定目录,进入con ...
- SpringBoot--使用socket搭建聊天室
1.添加依赖 <dependency> <groupId>org.springframework.boot</groupId> <artifactId> ...