GADGET FACTORY 雑記帳

iPhone アプリ / Flash コンテンツ /Adobe AIR などを開発していて気づいたことや備忘録、TIPS、HACKなど

Adobe AIR の Android マニュフェスト minSdkVersion の設定

Admob 用の ANE を Google Play Service を利用するものに差し替えた後、Google Play Store へ差し替え版ファイルをアップする際に、

警告
Google Play 開発者サービスのバージョン 4452000 を使用する APK をアップ
ロードしました。動作するのは Android API レベル 9 以上のみです。マニフェ
ストの minSdkVersion を 9 以上に設定しない限り、このバージョンの Google
Play 開発者サービスを使用することはおすすめしません。

という警告が表示された。



minSdkVersion は、Android でアプリを動作させるのに必要となる最低バージョン番号に記述。

Google Play Service は Android 2.3以上の機種でしか動作しない。
そのことは知っていたので、AIR for Android のマニュフェストファイル(***.xml)ファイルに、きっちりと以下のように記載していた。

<uses-sdk android:targetSdkVersion="15"/>
<uses-sdk android:minSdkVersion="9"/>

ところが、上の警告が表示される。

実際に生成された apk ファイルの中身を調べたところ、minSdkのバージョンが、どうやら 8 で指定されているらしい。
これは、AIR SDK の動作する最低バージョンがそのまま入ってしまっている様子。

マニュフェストファイルの中に記載しているものが、パブリッシュした時に値として反映されていない感じ。

原因を調べてみたところ、どうやら targetSdkVersion と、 minSdkVersion は同一のタグ内で指定する必要がある様子。

記載を以下の形に変更したら、警告も表示されることなく、ストアにアップできました。

<uses-sdk android:minSdkVersion="9" android:targetSdkVersion="15" />

これも、AIRAndroid アプリを制作する際の不具合というか、TIPSのようなものなのかもしれませんね。