Air for iOSから簡単にTweet出来るANEを作成しました。

下の画像のように、iOS5から用意されている、

簡単にTwitterTweet出来るviewを呼び出す、

TWTweetComposeViewControllerクラスをAir for iOSから扱えるANEを作成しました。

Img_2272

ソースはこちら

※ただ、画像をpostするメソッドはなく、文字とURLをポストするメソッドしかありません…

画像ってbase64エンコードして文字列で渡すとかでしょうか?

もしくはファイルで置いてそれをAir-ネイティブ側で共有できる?

また、その制作を行った際に、わかった事を書きます。

iOS SDK5以上の機能を使う場合でも、extension.xml、-platformoptionsのxml名前空間は "http://ns.adobe.com/air/extension/3.1" でよかった。(※3.4とか3.3にする必要は無かった。

ちなみにadt -packageで使っているAirのバージョンは3.4にしていますが、それでもここを合わせる必要は無いようです。)

・同様に、Flex SDKにAir3.4フォルダを上書きし、FlexSDK+AirSDK最新フォルダ、 なる物を作ったけど、そのSDK指定では無く、既存のSDK指定で問題無く動いた。

参考画像はこちらから

Xcode上で、Twitterなどの別途フレームワークの機能を使う場合、 参照しておかないといけないと思いきや、 ライブラリプロジェクトのせいなのか、そのインポートも要りませんでした。

参考画像はこちらから

・extension.xmlに、<platform name="default"> <applicationDeployment/> </platform> を付け、PC上のAirシミュレーターでも動くようにしたかったが、これを付けてパブリッシュし、aneファイルをコピーしても最初は動かなかった。

その後、一旦Flashからaneの参照を外し、もう一度付け直したら動くようになった。

(※Flash CS6 Proで制作し確認してます。なので、違う環境ではそんなこと無いかも知れません)

AIRを表示しているViewのXcode側からの参照方法は、

UIWindow *keyWindow = [[UIApplication sharedApplication] keyWindow];

UIViewController *mainController = [keyWindow rootViewController];

で出来ます。

詳しくはソースの方をご確認いただければと思います…(^^)/