・Android 1.1 Version Notes
http://developer.android.com/sdk/android-1.1.html
の、APIレベルに関係する記述があるOverviewのみさらっと日本語に
してみましたのでお送りします。(あやしかったらすみません。)
---
SDKに含まれるAndroid 1.1のシステムイメージは、Android 1.1の
プロダクションシステムイメージと開発用途に互換を持たせたものです。
Android 1.1のプロダクションシステムイメージは2009年2月からAndroid
搭載端末にデプロイ可能です。
Android 1.1のシステムイメージは、フレームワークのAPIも更新されて
配布されています。Android 1.1のAPIでは、「2」のように数値で識別子
をつけてシステムに記録しておくことが出来ます。このことはAndroid 1.0
のAPIも同様です。この識別子は「APIレベル」と呼ばれ、システム上で
アプリが正しく動作するかどうかを、そのアプリをインストールする前に
正確に判断することができるようにするためのものです。
マニフェストファイルにはAPIレベルの値を定義しておくことができます。
これは、そのアプリが動作するにあたって必要となるAndroidのシステムの
ミニマムバージョンを示します。APIレベルを指定するには、マニフェスト
ファイルにminSdkVersion属性を設定します。この属性には、APIレベルを
特定する数値を設定します。システムはアプリをインストールする前に
このminSdkVersionの値をチェックして、システム自体に記録されている
APIレベル以下の値のもののみインストールを認めます。
もし、Android 1.1のプラットフォームが動作しているAndroid端末と
互換性を持たせたアプリを、Android1.1のシステムイメージを使って作成
したら、minSdkVersionの値は「2」(Android 1.1と厳密に対応したAPIで
あることを示します)にする必要がある!!ことに注意して下さい。
具体的には、マニフェストファイルの<manifest>要素の子要素として
<uses-sdk>を置き、そこにminSdkVersion属性を定義します。以下の
ような感じです。
<manifest>
...
<uses-sdk minSdkVersion="2" />
...
</manifest>
このようにminSdkVersionを設定することによって、ユーザーはそのアプリを
Android 1.1プラットフォームの端末にのみインストールできるようになります。
言い換えると、1.1のAPIを使って作成されているそのアプリケーションはこれ
らの端末でちゃんと動作することを示しています。
もし、アプリを1.1のAPIを使って作ったのに<uses-sdk minSdkVersion="2" />
を書いていなかったら、Android 1.1の端末上ではちゃんと動くでしょうが、
1.0の端末では動かないでしょう。後者の場合、実行時に1.1のAPIを使おうと
した時点でアプリがクラッシュしてしまうでしょう。
もしアプリに1.1で新しく公開されたAPIを全く使ってないのなら、
minSdkVersionを設定しないようにするか、minSdkVersionに「1」を設定する
ことで、Android 1.0に互換があることを示すことが出来ます。しかし、アプリ
ケーションの公開前にAndroid 1.0のシステムイメージ(Android 1.0 SDKで
利用できます)を対象にして、アプリケーションがちゃんとコンパイル出来る
かを確認しなければなりません。このことはAndroid 1.0の端末でちゃんと動く
ことを保証することにつながります。アプリが互換性を持つAPIレベルと対応
するシステムイメージを使ってアプリをテストする必要があります。
もし、アプリに1.1のAPIを使っておらず、使う必要がないとはっきり判って
いるならば、Android 1.0のSDKをそのまま使い続ける方が、1.1を使って追加
でテストするよりも楽かもしれません。
------------------------------------------
EGAWA Takashi <t.e...@gmail.com>
こんにちは、嶋@Android入門本 です。
江川さん翻訳ありがとうございます。
PF-WGの言い出しっぺだけに、この動きは大切だと思っています。
しかしAPIバージョンが今後「1」とか「2」とかの連番一つだけで
収まるのかという疑問は残ります。
# シンプルイズベストでいいのですが、あまりにも・・
それとMarket Placeの運用で端末に対してどのようにクエリーさ
れていくのかも興味があります。つまり端末のcapabilityとして
最低限Market Place(のようなアプリ配信サーバー)に知らせるべ
き要素は何なのか。この要素が複数のあるのならばAPIレベルは
この程度のシンプルな内容で良いのかもしれません。
いろんな意味で、考えさせられました。ありがとうございます。
そろそろまとめなくてはならないと思いつつ・・・すいません。
---
ζ てんてん /嶋 是一(しま よしかず) ★彡
□P E-Mail:sh...@st.rim.or.jp
 ̄ MYピアノHome Page <URL:http://www.st.rim.or.jp/~shima/piano/>
BLOG Page <URL:http://blog.livedoor.jp/shimay/>