linux-kernel - [讨论]linux+Android apps运行在desktop PC(桌面PC)上的可行性

 兜兜岁月真伟大 发布于 2022-11-01 18:07

我们觉得手机/平板/PC会逐步融合为一体。android-x86(based on AOSP-6 marshmallow(有多窗口实验feature支持),基本上是黄志伟等4~5人搞定的,很了不起,开源),remix(商业)已经可以跑在一般PC/平板上,我们希望能在自己使用的笔记本或台式机上玩桌面版android app+linux app(可运行在一个linux kernel x86-64上),用于日常的编程,写文档,玩游戏,看电影,上网。我们没有那么大的目标:比如要与windows啥竞争。但即使这样,也需要进行比较有难度的开源软件开发(涉及 surfaceflinger,wayland, mesa3D,linux kernel等)。这样做的可行性,亮点和缺点是啥?我们经验不足,希望能够看到各位老手,高手给出意见(正反都行),建议。多谢!

要让android app和linux app都在一个kernel上跑,这样想开发啥玩啥都行。

应该有比vmplayer/virtualbox效率高的方法

比如可采用chroot+xserver-sdl技术,
https://github.com/pelya/debian-noroot
https://github.com/pelya/xserver-xsdl

效率比vmplayer/virtualbox高。

瓶颈应该会在xserver上,我们希望做到比这种效率还要高。

大家有何建议?

1 个回答
  • Android Studio自带的模拟器/home/eechen/Android/Sdk/tools/emulator64-x86,启动后立刻占满一个CPU核心,该核心使用率为100%,性能不好.

    另外有一个叫做ARChon的东西,可以在PC版Chrome下跑Android应用,不过同样存在Android SDK模拟器只能用一个核心问题,不过CPU使用率要比模拟器好多了.

    Ubuntu 14.04上安装ARChon在Chrome运行Android应用
    http://www.omgubuntu.co.uk/2014/09/install-android-apps-ubuntu-archon
    chrome://gpu/ 查看 WebGL 是否启动.
    chrome://flags/ 启用 WebGL 和 Native Client.
    下载ARChon扩展安装到Chrome:
    https://github.com/vladikoff/chromeos-apk/blob/master/archon.md
    解压ARChon,打开chrome://extensions/页面,进入"开发者模式","加载正在开发的扩展程序",选择vladikoff-archon目录即可.

    使用chromeos-apk(依赖node.js)把apk转换为crx扩展.
    sudo apt-get install npm nodejs nodejs-legacy
    64位Ubuntu还需要安装:
    sudo apt-get install lib32stdc++6
    利用npm从registry.npmjs.org上下载安装chromeos-apk:
    sudo npm install -g chromeos-apk
    chromeos-apk oschina.apk --archon
    chromeos-apk com.tencent.hd.qq_720.apk --tablet --archon
    转换速度很快,在chrome://extensions/页面"加载正在开发的扩展程序",选择转换生成的扩展目录即可.

    经过测试,能够正常运行OSChina Android客户端,使用爱奇异音乐播放MV时 nacl_helper 进程的CPU占用率达到100%(i5-3230M满载为400%).另外在运行QQ等应用会出现"很抱歉,Google Play服务已停止运行(Unfortunately Google Play Services has stopped)"的问题.PPTV能够运行,但播放视频时PPTV会崩溃重启.

    Google基于Intel Atom x86的上网本Chrome OS缺乏应用,所以搞了Android Runtime for Chrome(ARC)这个项目,加上Intel也在鼓励厂商推出基于Atom x86的Android设备(手机/平板),在Google和Intel的推动下,以后应该能在x86的Linux发行版上比较流畅地跑Android App吧.

    2022-11-12 01:50 回答
撰写答案
今天,你开发时遇到什么问题呢?
立即提问
热门标签
PHP1.CN | 中国最专业的PHP中文社区 | PNG素材下载 | DevBox开发工具箱 | json解析格式化 |PHP资讯 | PHP教程 | 数据库技术 | 服务器技术 | 前端开发技术 | PHP框架 | 开发工具 | 在线工具
Copyright © 1998 - 2020 PHP1.CN. All Rights Reserved 京公网安备 11010802041100号 | 京ICP备19059560号-4 | PHP1.CN 第一PHP社区 版权所有