air 4.0+,Ane打包注意事项【适用Android】

时间:2022-03-18 12:15:21

【适合阅读】适用于air sdk 4.0之前,会打包Ane的同学们。如果您之前,没有经验,可以直接留言问题,我会依依解答。

【本文目标】:air 4.0+ ,能很好的有效支持 R*文件机制。简言之,可以不用getResourceID()的方式引用资源,Android程序中,可以直接用 R.x.x引用资源。

【安装】

  air sdk : http://helpx.adobe.com/air/kb/archived-air-sdk-version.html   (下载4.0+版本,包含4.0)

  如果之前你得版本低于4.0,更新方式很简单。直接解压,覆盖更新  D:\DevTools\Adobe Flash Builder 4.6\sdks\4.6.0(这是我的安装路径)。注意:是覆盖更新,因为这个路径下,同时含有flex sdk。

【重点解析】:

  对于支持R*文件的机制,官网介绍,非常简洁。 链接:http://help.adobe.com/en_US/air/extensions/WSf268776665d7970d-2e74ffb4130044f3619-7ff8.html

  这里有一份算比较完善的教程:http://jmsliu.com/2143/add-admob-ads-in-flash-based-android-apps.html#androidjar   

  上面的教程,讲的非常详细,也有步骤截图,非常清晰。

  下面,我只讲几个教程中没有的细节问题:

一、打包工具的目录结构

  因为我的系统是 win7(64位),所以我的打包工具如下图:

  air 4.0+,Ane打包注意事项【适用Android】

  这里注意2个地方:

  1. adt.jar是Flash builder 4.6中的一个打包工具,路径:D:\DevTools\Adobe Flash Builder 4.6\sdks\4.6.0\lib ,确保 air sdk 4.0+

  2. platform-android.xml ,是相比较之前新添加的。这个有2个作用,合并jar包 和 生成库工程相对应的R文件。

二、Android-ARM

  air 4.0+,Ane打包注意事项【适用Android】

  我本地的项目:Android项目,引用了Facebook 的SDK作为 库工程。

  以上目录,分为几部分:

  1,放资源文件 2,Java端对应的AS代码  3,Android的项目  4,Facebook SDK的jar包 5,其余的jar文件,就是Android工程所有用到的jar包。

三、 platform-android.xml

  

<platform xmlns="http://ns.adobe.com/air/extension/15.0">
<packagedDependencies> //放置除 java-as.jar外的所有依赖jar包
<packagedDependency>android-support-v4.jar</packagedDependency>
   
<packagedDependency>java-lib.jar</packagedDependency>
<packagedDependency>alipay.jar</packagedDependency>
<packagedDependency>gson-2.1.jar</packagedDependency>
<packagedDependency>rekoosdk_0.4_8080.jar</packagedDependency>
<packagedDependency>sun.misc.BASE64Decoder.jar</packagedDependency>
  
<packagedDependency>java-facebooksdk.jar</packagedDependency>
<packagedDependency>bolts-android-1.1.2.jar</packagedDependency>
</packagedDependencies>

<packagedResources> //库工程对应的包名 和 资源文件名
<packagedResource> //我的Android项目工程
<packageName>com.rksgame</packageName> <folderName>lib-res</folderName>
</packagedResource>

<packagedResource> //facebook sdk 库工程
<packageName>com.facebook.android</packageName>
<folderName>fb-res</folderName>
</packagedResource>

</packagedResources>
</platform>

  注意版本: xmlns="http://ns.adobe.com/air/extension/15.0"  和 你的adt.jar 版本一致。我版本是 15.0

四、容易忽视的问题

  自己的Android项目和引用的第三方的库SDK,都要设置为 Is Library 。这是很多教程中,都忽略的问题。这个大坑,困扰我了一天,实在是无语。。。

 

  相比air 4.0之前的打包方法,貌似就碰到了这几点改进的地方。实测,成功了。。。

  如果您碰到了其余别的问题,可以给我留言或者发邮件到:613254015@qq.com 。

  

  本文属于个人原创作品,未经许可,不可转载。否则,追究法律责任。