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

【适合阅读】适用于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位),所以我的打包工具如下图:

  

  这里注意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

  

  我本地的项目: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之前的打包方法,貌似就碰到了这几点改进的地方。实测,成功了。。。

  如果您碰到了其余别的问题,可以给我留言或者发邮件到:[email protected]

  

  

郑重声明:本站内容如果来自互联网及其他传播媒体,其版权均属原媒体及文章作者所有。转载目的在于传递更多信息及用于网络分享,并不代表本站赞同其观点和对其真实性负责,也不构成任何其他建议。