人行横道建筑不同的Cpu架构APK for x86&臂

时间:2016-05-29 13:39:19

标签: android android-ndk crosswalk

因为Crosswalk超过40mb。我决定拆分我的apk以减少apk尺寸...

我知道如何在Google Play商店中发布differenk apk ...我已经重新编写了文档......

文档说:

  

支持多CPU架构使用Android NDK时,您   可以创建一个支持多个CPU架构的APK   使用APP_ABI变量声明每个所需的体系结构   在Application.mk文件中。

     

例如,这是一个声明支持的Application.mk文件   三种不同的CPU架构:

     

APP_ABI:= armeabi armeabi-v7a mips APP_PLATFORM:= android-9

NDK Application Documantation说

  

Application.mk文件实际上是一个很小的GNU Makefile片段   定义了几个用于编译的变量。它通常驻留在   $ PROJECT / jni /,其中$ PROJECT指向您的应用程序项目   目录。另一种方法是将其放在子目录下   顶级$ NDK / apps /目录。例如:   $ NDK / apps // Application.mk这里是一个简短的名字   将您的应用描述为NDK构建系统。它实际上并没有进入   您生成的共享库或最终包

我没有NDK的经验......看了一些视频......

In this question latest answer告诉

  

对于arm,您可以将此行放在Application.mk:

中      

APP_ABI:= armeabi armeabi-v7a

     

对于intel x86:

     

APP_ABI:= x86

     

你必须改变AndroidManifest.xml才能拥有   每个平台的不同版本(遵循中的说明)   你提供的链接)。

     

小心,如果再次运行cordova build android,它可能会   替换平台/ android的所有内容,你的更改将是   丢失。

     

构建项目使用

     

platforms \ android \ cordova \ build.bat -release

因此,如果我将我的应用程序与NDK集成并放置APP_ABI变量将拆分apk cpu架构?

有一个简单的方法吗?我是否需要采取其他措施?

1 个答案:

答案 0 :(得分:0)

单一架构的Crosswalk库将使APK大小增加20M。如果您发现它超过40M,那么该库可能同时适用于x86和ARM。

如果您使用的是Crosswalk的官方包装工具,则可以选择定位架构。如果您使用Crosswalk作为库参考,您可以从官方网站单独下载不同体系结构的库。