Win10 Mobile安装安卓APK和Appx转制原理分析:一个妈生的

createh53个月前 (04-08)技术教程19

IT之家此前详细报道了Win10 Mobile系统安装安卓APK应用的消息,利用微软Project Astoria内测项目泄露工具可以实现。另外还有开发者将APK应用转换成Appx应用,但本质原理是一样的。下面是IT圈网友BlackD为大家带来的详细剖析。

首先直装apk的工具可以认为是微软安卓兼容计划Project Astoria的内测工具的一部分,其原理是在第一次用wconnect链接手机配对成功后,将工具debugger目录下的agent包传入手机,由手机内的Astoria platform执行,分为2个部分:

1.建立一个adb的server端,接受来自adb的连接请求和安装包。

2.将安装包以project astoria要求的方式部署在AoW子系统中

那appx又是怎么回事呢?

首先我们可以肯定在兼容安卓这个事情上,微软已经部署了AoW作为子系统,所以最终运行的还是安卓的代码(基于sdk的java或者机遇NDK的c)的运行时,而非真正的wp10的appx。所以这个转制appx只是给apk封装了一层皮。

首先我们把转制成appx后的京东app解包看下:

很明显有一个wpxap.apk,这个包尺寸和京东app的apk是一样的,也就是原封不动的把京东的apk打包在了appx的外壳内。

然后看用红框标注的4个文件,这4个文件是在手机AoW中部署apk的指导模板。那这四个文件哪里来的呢?

我们继续解包直装apk大法中,agent.zip,在agent.zip解开后,是一堆调试运行在手机中建立调试环境和adb连接的库,甚至包括解压缩的一些库。其中有一个templates目录,就是安装模板。

可以在templates目录下的phone\arm下找到如下文件:

对了,这4个文件就是appx转制大法的核心,利用这个安装模板在机器内部解压部署apk。

appx里剩下的蓝色框的文件其实是appx都有的一些常规图标,签名,配置文件,可以参考下IT之家WP版的appx结构。

那么原理就很清楚了:

1. appx大法是把微软泄露的安装apk模板作为appx的主体执行程序,把apk作为资源。利用appx的部署格式将apk复制进系统,然后执行安装模板部署apk,这也是为什么appx大法也需要打开开发者模式的原因,因为这就是微软内测项目的安装模板。

2. apk大法就是直接利用微软泄露工具,在电脑和win10手机之间建立了一条adb的隧道,通过很安卓化的adb命令将apk传入手机,然后利用安装模板安装。

本篇文章原出自IT圈——《直装apk和appx转制原理分析--一回事

相关文章

如何在Windows10中配置java的JDK环境

今天给大家分享一下如何配置java的JDK环境。操作步骤如下:1.下载好 jdk 的安装文件,我下载的是 jdk-10.0.1_windows-x64_bin.exe 这个版本的安装文件;2.使用鼠标...

Windows 10 真跨平台应用,并支持 Android/iOS 应用快速移植

对,多数人都在等待的 Windows 10 相关信息终于得到发布。根据微软提供的信息,Windows 系统目前为止提供的 111 种不同语言版本在 190 个国家共拥有 15 亿用户。首先,微软宣布为...

Win10系统安装JDK8与环境配置指导教程

1 软件准备操作系统:Windows 10软件:jdk-8u131-windows-x64.exe2 jdk8安装下载完成后,双击安装包开始安装过程。安装过程中可能需要接受许可协议,并设置安装路径等选...

兼容才是王道 Win10同时支持iOS/Android

Yesky天极新闻2015-04-30 07:55:58在正在进行的Build 2015开发者大会上,微软宣布,Windows 10将可以运行Android和iOS应用。Android与iOS两大互不...

以后,我们都是 Windows 开发者

北京时间 4 月 28 日晚微软在旧金山举行了 2015 年度 Build 大会。正如之前的推测,开发者和 Windows 10 都是此次大会的重中之重。Windows 10 将实现“大一统”,让开发...