Android 运行时情况带有一个基于 Android 开源项目镜像的最小自定义 Android 体系。所应用的镜像今朝基于 Android 7.1.1。

Anbox 以基于容器的方法,在像 Ubuntu 如许的惯例的 GNU Linux 体系上启动一个完全的 Android 体系。

概述

容器内的 Android 无法直接拜访任何硬件。所有硬件拜访都经由过程主机上的 anbox 守护过程进行。我们重用基于 QEMU 的模仿器实现的 Android 中的 GL、ES 加快衬着。容器内的 Android 体系应用不合的管道与主机体系通信,并经由过程它发送所有硬件拜访敕令。

Anbox 应用 Linux 定名空间(user、pid、uts、net、mount、ipc)来在容器中运行完全的 Android 体系,并在任何基于 GNU Linux 平台上供给 Android 应用。

有关更多具体信息,请参考下文档:Android 硬件 OpenGL ES 仿真设计概述

Android QEMU 快速管道

Android 的 “qemud” 复竽暌姑守护过程

Android qemud 办事

Anbox 今朝合适桌面应用,但也用在移动操作体系上,如 Ubuntu Touch、Sailfish OS 或 Lune OS。然而,因为 Android 法度榜样的映射今朝只针对桌面情况,是以还须要额外的工作来支撑其他的用户界面。

安装

今朝,安装过程包含一些添加额外组件到体系的步调。包含:启用用于 binder 和 ashmen 的非发行的树外内核模块。

应用 udev 规矩为 /dev/binder 和 /dev/ashmem 设置精确权限。

可以或许启动 Anbox 会话治理器作为用户会话的一个启动义务。

为了使这个过程尽可能简单,我们将须要的步调绑定在一个 snap(见 https://snapcraft.io ) 中,称之为 “anbox-installer”。这个安装法度榜样会履行所有须要的步调。你可以在所有支撑 snap 的体系运行下面的敕令安装它。$ snap install--classic anbox-installer

别的你可以经由过程下面的敕令下载安装脚本。$ wget https://raw.githubusercontent.com/anbox/anbox-installer/master/installer.sh -O anbox-installer

请留意,我们还不支撑除所有 Linux 发行版。请查看下面的┞仿节懂得支撑的发行版。

运行下面的敕令进行安装。$ anbox-installer

它会引导你完成安装过程。

留意: Anbox 今朝处于 pre-alpha 开辟状况。不要指望它具有临盆情况你须要的所有功能。你肯定会碰到缺点和崩溃。如不雅你碰到了,请不要迟疑并申报它们!

留意: Anbox snap 今朝 完全没有束缚,是以它只能大年夜边沿渠道获取。精确的束缚是我们想要在将来实现的,但因为 Anbox 的性质和复杂性,这不是一个简单的义务。

已支撑的 Linux 发行版

今朝我们官方支撑下面的 Linux 发行版:Ubuntu 16.04 (xenial)

运行 Anbox

未测试但可能支撑的:Ubuntu 14.04 (trusty)

Ubuntu 16.10 (yakkety)

Ubuntu 17.04 (zesty)

安装并运行 Android 法度榜样

一个简单的敕令会将须要的二进制安装到你的体系中,如下。

大年夜源码构建

要构建 Anbox 运行时不须要特别懂得什么,我们应用 cmake 作为构建体系。你的主机体系中应已有下面这些构建依附:libdbus

google-mock

google-test

libboost

libboost-filesystem

libboost-log

libboost-iostreams

libboost-program-options

libboost-system

libboost-test

libboost-thread

libcap

libdbus-cpp

mesa (libegl1, libgles2)

glib-2.0

libsdl2

libprotobuf

protobuf-compiler

lxc

在 Ubuntu 体系中你可以用下面的敕令安装所有的依附:$ sudo apt install build-essential cmake cmake-data debhelper dbus \

google-mock libboost-dev libboost-filesystem-dev libboost-log-dev \

libboost-iostreams-dev libboost-program-options-dev libboost-system-dev \

libboost-test-dev libboost-thread-dev libcap-dev libdbus-1-dev \

libdbus-cpp-dev libegl1-mesa-dev libgles2-mesa-dev libglib2.0-dev \

libglm-dev libgtest-dev liblxc1 libproperties-cpp-dev libprotobuf-dev \

libsdl2-dev lxc-dev pkg-config protobuf-compiler

推荐阅读

Drupal 是一个开源,灵活,高度可拓展和安然的内容治理体系Content Management System(CMS),应用户轻松的创建网站。它可以应用模块拓展,应用户将内容治理转换为强大年夜的数字解决筹划。>>>详细阅读

地址:http://www.17bianji.com/lsqh/34940.html

anbox 使用情况_开源Anbox在Linux中运行Android应用相关推荐

  1. 在Linux中运行Android软件

    想要在PC上运行Android软件就需要模拟器,Windows版的Android模拟器软件很多,但是Linux平台的就不多了,今天推荐一款Linux下的Android模拟器软件Anbox Anbox官 ...

  2. anbox 使用情况_Anbox让您在Linux桌面上运行Android应用程序

    Anbox让您在Linux桌面上运行Android应用程序 imcn 2017年4月13日 1条评论 阅读 18,083 次 认识一下Anbox,一种新颖的在Linux桌面上运行Android应用的新 ...

  3. anbox 使用情况_最近比较火的Anbox项目

    ‌Anbox是什么? Anbox是Android in a box的缩写,可以在Linux系统中运行Android应用,就像Wine一样在Linux系统中运行Windows应用一样:因为Anbox通过 ...

  4. linux中运行ifconfig出现错误,不能sudo apt install net-tools,Linux不能联网

    linux中运行ifconfig出现错误,且不能sudo apt install net-tools linux中运行ifconfig出现错误 不能sudo apt install net-tools ...

  5. linux以非root身份运行,以非root用户身份在linux中运行mono-service

    我需要在嵌入式系统上以最低Ubuntu安装方式运行.net C#应用程序(在Windows系统上开发)作为服务/守护程序(不包括X,除服务器外SSH,只有相关的软件).我创建了一个/etc/init. ...

  6. eclipse中linux打包,Eclipse中Maven打包程序并在Linux中运行

    Eclipse中Maven打包程序并在Linux中运行 1 在Eclipse中新建Maven工程 新建后的maven工程如下: 新建Maven工程的默认pom.xml如下,不需要修改: 4.0.0 T ...

  7. Windows下的脚本在Linux中运行乱码问题

    Windows下的py脚本在Linux中运行 dos下写的代码,拿到linux下,存在不兼容. 解决办法: 方法一:dos2unix 如果没有该插件 需要安装 sudo apt-get install ...

  8. 在Linux中运行Nancy应用程序

    最近在研究如何将.NET应用程序移植到非Windows操作系统中运行,逐渐会写一些文章出来.目前还没有太深的研究,所以这些文章大多主要是记录我的一些实验. 这篇文章记录了我如何利用NancyFx编写一 ...

  9. 如何检查是否在Cygwin,Mac或Linux中运行?

    本文翻译自:How to check if running in Cygwin, Mac or Linux? I have a shell script that is used both on Wi ...

最新文章

  1. IE 8 中自定义自己的 Search Provider (搜索提供程序)
  2. js转换html为pdf文件怎么打开方式,pdf.js实现在HTML下直接浏览pdf文档,无需插件即可实现...
  3. java2d简介_AWT_Java2D简介
  4. c语言中 flag.bit7,利用proteus学习ARM(LPC2103)之二:熟悉IAR C语言开发环境
  5. Linux内存压力测试stressapptest
  6. php7扩展开发教程,Laravel 7 扩展开发教程
  7. VS2008 更改项目名称
  8. 微型计算机中常体积的,微型计算机原理及应用第2章.ppt
  9. Sqlserver 2008:sp_msforeachdb 坑爹的错误陷阱
  10. windows7:“创建系统修复光盘”
  11. 10款滑动门代码_jquery 滑动门_js滑动门_tab滑动门_jquery 选项卡_js选项卡_tab选项卡效果(三)
  12. HarmonyOS 项目实战之通讯录(Java)
  13. 如何在 Word 的方框中打勾 √ ?☑ ☒
  14. 模电(八)放大电路静态工作点的稳定性
  15. PAT-2018 L1-049. 天梯赛座位分配
  16. 致虚幻引擎社区的一封公开信(转)
  17. Python Fitter 判断数据样本的分布函数拟合
  18. 刘强东的“毛乌素”之斗
  19. os x怎么新建html文件格式,如何在Mac OS X中为邮件制作HTML签名 | MOS86
  20. PACT: PARAMETERIZED CLIPPING ACTIVATION FOR QUANTIZED NEURAL NETWORKS 论文学习

热门文章

  1. oracle判断字符串是不是日期,在ORACLE中如何判断一个字符串是否是一个合适的日期...
  2. A. Arithmetic Array
  3. OpenHarmony 简介:使用鸿蒙操作系统,开发者能做的是啥呢,学习NodJS,可以开发应用了。后续慢慢学习,赶紧去加星星。
  4. Codeforces Round #550 (Div. 3)C. Two Shuffled Sequences
  5. Swift 基础 高阶函数 forEach filter map compactMap compactMapValues flatMap reduce sort sorted shuffled ...
  6. 华为手机系统服务器在哪里,华为云服务这软件在哪?
  7. 网站链接被微信屏蔽禁止访问的解决办法
  8. java 课设 商品库存管理系统
  9. 微信机器人控制linux,关于微信公共平台聊天机器人控制开启和关闭的代码
  10. 通用人工智能:我们还有多远?