本篇內(nèi)容主要講解“Linux中如何運行Android應用”,感興趣的朋友不妨來看看。本文介紹的方法操作簡單快捷,實用性強。下面就讓小編來帶大家學習“Linux中如何運行Android應用”吧!
概述
Anbox 使用 Linux 命名空間(user、pid、uts、net、mount、ipc)來在容器中運行完整的 Android 系統(tǒng),并在任何基于 GNU Linux 平臺上提供 Android 應用。
容器內(nèi)的 Android 無法直接訪問任何硬件。所有硬件訪問都通過主機上的 anbox 守護進程進行。我們重用基于 QEMU 的模擬器實現(xiàn)的 Android 中的 GL、ES 加速渲染。容器內(nèi)的 Android 系統(tǒng)使用不同的管道與主機系統(tǒng)通信,并通過它發(fā)送所有硬件訪問命令。
有關(guān)更多詳細信息,請參考下文檔:
Android 硬件 OpenGL ES 仿真設(shè)計概述
Android QEMU 快速管道
Android 的 “qemud” 復用守護進程
Android qemud 服務
Anbox 目前適合桌面使用,但也用在移動操作系統(tǒng)上,如 Ubuntu Touch、Sailfish OS 或 Lune OS。然而,由于 Android 程序的映射目前只針對桌面環(huán)境,因此還需要額外的工作來支持其他的用戶界面。
Android 運行時環(huán)境帶有一個基于 Android 開源項目鏡像的最小自定義 Android 系統(tǒng)。所使用的鏡像目前基于 Android 7.1.1。
安裝
目前,安裝過程包括一些添加額外組件到系統(tǒng)的步驟。包括:
啟用用于 binder 和 ashmen 的非發(fā)行的樹外內(nèi)核模塊。
使用 udev 規(guī)則為 /dev/binder 和 /dev/ashmem 設(shè)置正確權(quán)限。
能夠啟動 Anbox 會話管理器作為用戶會話的一個啟動任務。
為了使這個過程盡可能簡單,我們將必要的步驟綁定在一個 snap(見 /tupian/20230522/snapcraft.io ) 中,稱之為 “anbox-installer”。這個安裝程序會執(zhí)行所有必要的步驟。你可以在所有支持 snap 的系統(tǒng)運行下面的命令安裝它。
$ snap install --classic anbox-installer
另外你可以通過下面的命令下載安裝腳本。
$ wget https://raw.githubusercontent.com/anbox/anbox-installer/master/installer.sh -O anbox-installer
請注意,我們還不支持除所有 Linux 發(fā)行版。請查看下面的章節(jié)了解支持的發(fā)行版。
運行下面的命令進行安裝。
$ anbox-installer
它會引導你完成安裝過程。
注意: Anbox 目前處于 pre-alpha 開發(fā)狀態(tài)。不要指望它具有生產(chǎn)環(huán)境你需要的所有功能。你肯定會遇到錯誤和崩潰。如果你遇到了,請不要猶豫并報告它們!
注意: Anbox snap 目前 完全沒有約束,因此它只能從邊緣渠道獲取。正確的約束是我們想要在未來實現(xiàn)的,但由于 Anbox 的性質(zhì)和復雜性,這不是一個簡單的任務。
已支持的 Linux 發(fā)行版
目前我們官方支持下面的 Linux 發(fā)行版:
Ubuntu 16.04 (xenial)
未測試但可能支持的:
Ubuntu 14.04 (trusty)
Ubuntu 16.10 (yakkety)
Ubuntu 17.04 (zesty)
安裝并運行 Android 程序
從源碼構(gòu)建
要構(gòu)建 Anbox 運行時不需要特別了解什么,我們使用 cmake 作為構(gòu)建系統(tǒng)。你的主機系統(tǒng)中應已有下面這些構(gòu)建依賴:
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 系統(tǒng)中你可以用下面的命令安裝所有的依賴:
$ 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
之后用下面的命令構(gòu)建 Anbox:
$ mkdir build $ cd build $ cmake .. $ make
一個簡單的命令會將必要的二進制安裝到你的系統(tǒng)中,如下。
$ make install
如果你想要構(gòu)建 anbox snap,你可以按照下面的步驟:
$ mkdir android-images $ cp /path/to/android.img android-images/android.img $ snapcraft
結(jié)果會有一個 .snap 文件,你可以在支持 snap 的系統(tǒng)上安裝。
$ snap install --dangerous --devmode anbox_1_amd64.snap
運行 Anbox
要從本地構(gòu)建運行 Anbox ,你需要了解更多一點。請參考“運行時步驟”文檔。
文檔
在項目源代碼的子目錄下,你可以找到額外的關(guān)于 Anbox 的文檔。
有興趣可以看下:
運行時步驟
構(gòu)建 Android 鏡像
報告 bug
如果你發(fā)現(xiàn)了一個 Anbox 問題,請?zhí)峤?bug。
取得聯(lián)系
如果你想要與開發(fā)者聯(lián)系,你可以在 FreeNode 中加入 #anbox 的 IRC 頻道。
版權(quán)與許可
Anbox 重用了像 Android QEMU 模擬器這樣的其他項目的代碼。這些項目可在外部/帶有許可聲明的子目錄中得到。
anbox 源碼本身,如果沒有在相關(guān)源碼中聲明其他的許可,默認是 GPLv3 許可。
到此,相信大家對“Linux中如何運行Android應用”有了更深的了解,不妨來實際操作一番吧!這里是創(chuàng)新互聯(lián)建站,更多相關(guān)內(nèi)容可以進入相關(guān)頻道進行查詢,關(guān)注我們,繼續(xù)學習!
新聞標題:Linux中如何運行Android應用-創(chuàng)新互聯(lián)
網(wǎng)頁路徑:http://www.rwnh.cn/article36/dopdpg.html
成都網(wǎng)站建設(shè)公司_創(chuàng)新互聯(lián),為您提供網(wǎng)站設(shè)計、網(wǎng)站策劃、網(wǎng)站排名、建站公司、云服務器、Google
聲明:本網(wǎng)站發(fā)布的內(nèi)容(圖片、視頻和文字)以用戶投稿、用戶轉(zhuǎn)載內(nèi)容為主,如果涉及侵權(quán)請盡快告知,我們將會在第一時間刪除。文章觀點不代表本網(wǎng)站立場,如需處理請聯(lián)系客服。電話:028-86922220;郵箱:631063699@qq.com。內(nèi)容未經(jīng)允許不得轉(zhuǎn)載,或轉(zhuǎn)載時需注明來源: 創(chuàng)新互聯(lián)
猜你還喜歡下面的內(nèi)容