AIR ANE for iOS打入第三方静态库

好了,话不多说,只为自己下次再做的时候不要忘记了!

直接上代码,打包第三方的静态库的ANE需要的文件有:

1、用flash Builder创建一个flex库,在库里面添加一个action script类,写好接口代码,打包成swc(应将swc版本调整为需要的版本  -swc-version 14.等等。。。。。)

2、打开Xcode,创建一个静态库,具体怎么创就不说了,网上教程很多。然后,删掉.h文件,在.m文件里面写上应该写的代码,如:(初始化方法,销毁方法,以及其他的方法就没写出来了)

AIR ANE for iOS打入第三方静态库_第1张图片

这就是给swc文件里面的call方法提供本地实现的内容,Button是我自己新建的一个类,里面有调用第三方SDK的方法。在buliding出.a文件的时候,需要注意了,应该是用release版本的真机测试版本。

3、现在还需要一个.p12证书,用flash Builder生成一个就好。

4、需要一个extension.xml配置文件,用来指定id,入口方法和销毁方法等。


	com.coolexp.ANELib
	1
	
		
			
				libiosanedemo.a
				ExtInitializer
				ExtFinalizer
			
		
	
注:上面的id是跟flex库项目中的ExtensionContext.createExtensionContext( "com.coolexp.ANELib", null);中引号里面要一样,
libiosanedemo.a 
ExtInitializer  
ExtFinalizer     

5、由于有第三方的SDK,里面有静态文件(.a文件),还有用来装图片等资源的Bundle文件,只需要将这些按照正常的ios工程来添加和使用就好,但是用到了一些AIR SDK不默认支持的库,就需要一个动态链接配置文件来做了,名字就叫platformoptions.xml好了。代码如下:

 
     An optional description 
    2012 (optional) 
    
          
                
    
     
      
    
    
可以看到,其实无需特别指定第三方的静态库啦!中途当然会遇到问题,不过一般简单查一下资料就可以了。

6、将所有的文件放在一个文件夹下吧,基本就是这些文件了,另外一个.a文件就是那个第三方的SDK。

AIR ANE for iOS打入第三方静态库_第2张图片

下面我将打包ane的命令也贴上来

先cd到这个文件夹 /Applications/Adobe\ Flash\ CC/AIR3.6/bin/adt -package -storetype pkcs12 -keystore xxxxxxx.p12 -storepass 密码 -target ane xxxxxx.ane extension.xml -swc ifanesussec.swc -platform iPhone-ARM -platformoptions platformoptions.xml libiosanedemo.a library.swf

从命令可以看出,其实打包的时候,第三方库没有任何用处。

然后就是调用了:在任何的as项目的地方中,调用ANELibUtils.showBadageNum(35);然后打包成ipa,在打包的时候,需要将使用到的bundle资源添加到AIR项目中,一起编译成ipa就可以了。

AIR ANE for iOS打入第三方静态库_第3张图片

好了,如果不出问题,就可以了。

好了,写的水平的确是忒次了,写得很凌乱,不理解的地方希望大家指出,其中,代码部分借鉴至天地会一大神。如有侵权,请及时告知。

源码就不奉献了,因为涉及到三方。

先就这样吧,睡午觉去了。



你可能感兴趣的:(当被ANE折磨半个月之后,一个全端程序猿)