ane for 9ria_cn

37
AIR Native Extensions for iOS Adobe 平台技术经理 James Li

Upload: sonicxs

Post on 05-Jul-2015

560 views

Category:

Technology


4 download

DESCRIPTION

Ane for 9ria_cn

TRANSCRIPT

Page 1: Ane for 9ria_cn

AIR Native Extensions

for

iOS Adobe 平台技术经理 James Li

Page 2: Ane for 9ria_cn

前言

Page 3: Ane for 9ria_cn

AIR 手机应用成功案例

Page 4: Ane for 9ria_cn

什么是 AIR Native Extensions?

Page 5: Ane for 9ria_cn

ANE 使你的开发扩展到 原生技术领域

Android SDK iOS SDK

Page 6: Ane for 9ria_cn

通过 AIR Native Extensions 一切皆有可能

应用内付费 游戏中心 消息推送

Page 7: Ane for 9ria_cn

开发流程

Page 8: Ane for 9ria_cn

Define Develop Deploy 定义-开发-部署

Page 9: Ane for 9ria_cn

Define Develop Deploy 定义-开发-部署

Page 10: Ane for 9ria_cn

应用 ID 设备 授权 证书

Define

Page 11: Ane for 9ria_cn

developer.apple.com

应用 ID 设备 授权 证书

Page 12: Ane for 9ria_cn

Define Develop Deploy 定义-开发-部署

Page 13: Ane for 9ria_cn

Develop

ActionScript 类库 Objective-C 类库

Page 14: Ane for 9ria_cn

Develop

ActionScript 类库 Objective-C 类库

Page 15: Ane for 9ria_cn

AIR SDK 3+ Flash Builder 4.5+

AS3.0 Lib

Page 16: Ane for 9ria_cn

flash.external.ExtensionContext

Page 17: Ane for 9ria_cn

创建Extension Context

ext = ExtensionContext.createExtensionContext(“com.adobe.appPurchase”,””);

Page 18: Ane for 9ria_cn

调用Objective-C API

result = ext.call(“firstContact”,”How are you?”);

Page 19: Ane for 9ria_cn

添加事件侦听

ext.addEventListener(StatusEvent.STATUS, statusHandler);

Page 20: Ane for 9ria_cn

Develop

ActionScript 类库 Objective-C 类库

Page 21: Ane for 9ria_cn

iOS 4+ Xcode 4+

Objective-C Lib

Page 22: Ane for 9ria_cn

FlashRuntimeExtension

Page 23: Ane for 9ria_cn

初始化 FRE Context 和 API

FREInitializer FREContextInitializer FREObject

e.g. ExtInitializer e.g. ContextInitializer e.g. firstContact

Page 24: Ane for 9ria_cn

转换参数类型

FREGetObjectAsInt32 FREGetObjectAsUint32 FREGetObjectAsDouble FREGetObjectAsBool

FREGetObjectAsUTF8(argv[0],&len,&msg);

Page 25: Ane for 9ria_cn

转换返回值

FRENewObjectFromUTF8 FRENewObjectFromInt32 FRENewObjectFromUint32 FRENewObjectFromDouble FRENewObjectFromBool

Page 26: Ane for 9ria_cn

向Flash派发事件

FREDispatchStatusEventAsync( ctx, (const uint8_t*)”onContacted”, (const uint8_t*)”I am fine!” );

Page 27: Ane for 9ria_cn

Define Develop Deploy 定义-开发-部署

Page 28: Ane for 9ria_cn

Deploy AIR Extensions IPA

Page 29: Ane for 9ria_cn

AIR Develop Tool

Page 30: Ane for 9ria_cn

bin/adt -package -storetype pkcs12 -keystore selfsigned.p12 -storepass 1234 -target ane ext/InApp.ane extension.xml -swc ANE_IAP_ASLib.swc -platform iPhone-ARM library.swf libAppPurchase.a

使用ADT打包ANE

Page 31: Ane for 9ria_cn

<?xml version="1.0" encoding="utf-8" standalone="yes"?> <extension xmlns="http://ns.adobe.com/air/extension/2.5"> <id>com.adobe.appPurchase</id> <versionNumber>1</versionNumber> <platforms> <platform name="iPhone-ARM"> <applicationDeployment> <nativeLibrary>libAppPurchase.a</nativeLibrary> <initializer>ExtInitializer</initializer> <finalizer>ExtFinalizer</finalizer> </applicationDeployment> </platform> </platforms> </extension>

Extension Manifest XML

Page 32: Ane for 9ria_cn

bin/adt -package -target ipa-test-interpreter -provisioning-profile ghostbride.mobileprovision -storetype pkcs12 -keystore jameslidevelopment.p12 -storepass 1234 Main.ipa info-app.xml ANE_IAP_Example.swf -extdir ext icon

使用ADT打包IPA

Page 33: Ane for 9ria_cn

<id>com.jamesli.ghostbride</id> <filename>ANE_IAP_Example</filename> <name>ANE IAP Test Example</name> <extensions> <extensionID>com.adobe.appPurchase</extensionID> </extensions> <versionNumber>1.0.0</versionNumber> <initialWindow> <content>ANE_IAP_Example.swf</content> <autoOrients>true</autoOrients> <fullScreen>true</fullScreen> </initialWindow> <icon>„</icon> <iPhone> <InfoAdditions><![CDATA[„]]></InfoAdditions> </iPhone> </application>

Application Manifest XML

Page 34: Ane for 9ria_cn

实例演示

Page 35: Ane for 9ria_cn

资源

Page 36: Ane for 9ria_cn

labs.adobe.com adobe.com/cn/devnet

jamesli.cn weibo.com/papajames

weibo.com/7yue weibo.com/fans8

weibo.com/donglongfei

Flash 3D新浪微群: q.weibo.com/312314

Flash for iOS新浪微群: http://q.weibo.com/419909

Page 37: Ane for 9ria_cn

谢谢!