当前位置: 首页 > news >正文

鸿蒙 Next 可兼容运行 Android App,还支持出海 GMS?

最近 「出境易」和 「卓易通」 应该算是鸿蒙和 Android 开发圈“突如其来”的热门话题,而 「出境易」可能更高频一些,主要也是 Next 5.0 被大家发现刚上架了一个名为「出境易」的应用,通过这个 App 用户可以直接运行不兼容 Next 的 Android App,并使用 GMS 支持

本文主要来自目前互联网资料整合。

「出境易」可以先简单理解为是“在鸿蒙 NEXT 里运行 Android App 的工具” ,同样 「卓易通」 也是,它们都类似通过”虚拟机“的形式来运行的安卓“子系统”,在性能还能接受的情况下,让 Android App 可以运行到 NEXT 上,另外 「出境易」 还通过 Micro G 来支持到 GMS 环境。

但是其实严格来说并不是虚拟机,而是容器。

当然,两者也存在一些区别,例如:

  • 「出境易」会包含了一个定制的 Micro G,所以理论上应该是包含 Google Play,但是 「出境易」会有类似“白名单”的机制,仅有合作的 APP 可以安装,会检查签名,所以只有部分特定的 Android App 可以通过它来安装并运行
  • 「卓易通」则使用黑名单方式,仅对鸿蒙 Next 上架的应用无法安装,也会检查签名

Micro G 可以理解为是给无法按照 GMS 的机器使用 GMS 的一种方式,例如在之前「非纯血」鸿蒙上,通过 Micro G + Aurora Store ,再配合“不知名开发者”的 hw 插件,就可以让「非纯血」鸿蒙直接使用 GMS:

当然,其实「出境易」和 「卓易通」两者其实场景可以搭配使用,例如使用卓易通可以访问 Google Play ,然后通过它来下载和安装其他应用,然后再使用 「出境易」的 GMS·····

所以理论上,在「出境易」的环境内,用户可以直接安装白名单上的软件,然后通过界面跳转打开工具,进入到附带的环境「卓易通」和文件管理,去解锁更多支持·····

而其实「出境易」和 「卓易通」本身就是一个 Android Apk,可以直接在安卓系统上运行,而在纯血 Next 上,安装「出境易」的过程中则需要下载较大的资源包,并且需要重启系统,而在运行之后,「出境易」和 「卓易通」属于“独立环境”,例如内部开启的代理软件无法运用到纯血的 Next App 上。

大概理解:「出境易」对应的是 Google Play,「卓易通」对应的是华为应用商店(或者国内应用商店)

在实现上,看网友们的测试,目前技术支持应该是华为自研的 iSulad 通用容器引擎,这个在早期就有大佬在鸿蒙 Next 底层发现了 iSulad 进程支持。

iSulad 支持多种容器 runtime,包括 lxc、runc 和 kata,例如大家熟知的 lxc (Linux Containers) 就是 C 语言编写的开源 runtime,属于资源占用少,适用于对底噪资源限制高的场景,是 iSulad 默认的 runtime。

iSulad 作为新的通用容器引擎,官方表示它具有轻、快、 易、灵的特点,这个和子弹蚂蚁"小个头、大能量"的形象不谋而合,所以选用了这个 logo

目从官方的资料看, iSulad 的特点如下:

  • 轻量语言:C/C++,Rust on the way

  • 北向接口:提供CRI接口,支持对接Kubernets;同时提供便捷使用的命令行

  • 南向接口:支持 OCI runtime 和镜像规范,支持平滑替换

  • 容器形态:支持系统容器、虚机容器等多种容器形态

  • 扩展能力:提供插件化架构,可根据用户需要开发定制化插件

而从目前看到资料猜测,这些 android 容器的镜像应该不包含独立 linux 环境,因为 hongmeng kernel 本身可以兼容linux abi,所以不需要独立内核:

image-20241204163104783

而配合 device info hw 可以知道容器对应安卓 12、API 31:

image-20241204163121947

对于容器性能,网友测试结论大概是:

  • CPU大概 8 - 9 成左右性能
  • GPU性能几乎无损
  • 有屏幕锁帧的情况
  • 内存占用较大,例如上来就是 8GB 初始化占用
  • 耗电量预估略大于正常

从目前结果上看,鸿蒙 NEXT 配合 「出境易」+ 「卓易通」,也是一种变相的双“系统”模式,这反而变相印证了早期的“谣言”:

总的来说,这是好事,至少让 鸿蒙 NEXT 多了新的可能性,而且目前看来效果也并不差,虽然肯定还有不少问题,但是至少它可用了不是么?

最后,「卓易通」其实属于用户卡 Bug 卡出来,而后还有人提取 App 的场景,目前来看应该没对外开发可用,虽然有「出境易」,但是明显限定了场景,所以“逃课”是不可取的,该适配还是要适配~

在这里插入图片描述

参考资料

https://www.zhihu.com/question/5771833354/answer/47159567135

https://zhuanlan.zhihu.com/p/10576812652

https://www.bilibili.com/video/BV1Q96NYkEU2/

https://cn.club.vmall.com/mhw/consumer/cn/community/mhwnews/article/id_1000000000002180550/


http://www.mrgr.cn/news/79105.html

相关文章:

  • 虚幻基础17:动画层接口
  • Upscayl-官方开源免费图像AI增强软件
  • 解决ImportError: cannot import name ‘notf‘
  • Daemon进程创建过程
  • vim如何设置制表符表示的空格数量
  • Qt调用ffmpeg库实时播放rtmp或rtsp视频流
  • 每日速记10道java面试题13
  • 365天深度学习训练营-第P7周:马铃薯病害识别(VGG-16复现)
  • 知乎大数据开发面试题及参考答案
  • AI大模型原理
  • 重生之我在异世界学编程之C语言:选择结构与循环结构篇
  • 使用 libssh2_session_set_timeout 设置 SSH 会话超时时间
  • Unity 基于Collider 组件在3D 物体表面放置3D 物体
  • 中国矿业大学《2024年868自动控制原理真题》 (完整版)
  • 显卡(Graphics Processing Unit,GPU)比特币挖矿
  • 926[study]Docker,DHCP
  • @Component 详解
  • 单例模式实现axios的封装(TS版本)
  • 代码随想录算法训练营第51期第8天 | 344. 反转字符串、541.反转字符串 II、卡码网:54.替换数字
  • 【计算机网络】实验11:边界网关协议BGP
  • 计算机毕业设计hadoop+spark民宿推荐系统 民宿数据分析可视化大屏 民宿爬虫 民宿大数据 知识图谱 机器学习 大数据毕业设计
  • Dataset用load_dataset读图片和对应的caption的一个坑
  • Jupyter Notebook认识、安装和启动以及使用
  • 【大数据技术基础】 课程 第1章 大数据技术概述 大数据基础编程、实验和案例教程(第2版)
  • SpringBoot如何使用EasyExcel实现表格导出(简洁快速入门版本)
  • MotorCAD:定子绕组中的趋肤效应和邻近效应损耗