APIレベルについて

92 views
Skip to first unread message

EGAWA Takashi

unread,
Feb 10, 2009, 2:19:39 AM2/10/09
to android-...@googlegroups.com
江川と申します。
Android SDK 1.1がリリースされましたね。
Android SDK 1.1では、アプリがサポートしているAPIレベル(APIのバージョン
のようなもの)を指定することが出来るようになっているようです。

・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>

[API Exp]Makoto Anjo

unread,
Feb 10, 2009, 6:23:23 AM2/10/09
to Android-SDK-Japan
安生です。

訳ありがとうございます、下位互換も保たれているようで既にアプリケーションを製作している方も
安心できそうですね。


On 2月10日, 午後4:19, EGAWA Takashi <t.eg...@gmail.com> wrote:
> 江川と申します。
> Android SDK 1.1がリリースされましたね。
> Android SDK 1.1では、アプリがサポートしているAPIレベル(APIのバージョン
> のようなもの)を指定することが出来るようになっているようです。
>
> ・Android 1.1 Version Noteshttp://developer.android.com/sdk/android-1.1.html
> EGAWA Takashi <t.eg...@gmail.com>

mizmit1222

unread,
Feb 10, 2009, 9:06:30 AM2/10/09
to Android-SDK-Japan
みずのです。こんばんは。

安藤さんが、具体的にどんなAPI拡張がされたのか、適当に訳出しています。
http://d.hatena.ne.jp/androidzaurus/20090210/1234226371

APIレベルという新しいエンティティを導入することで、下位互換性と前に進む
動力を両立してますね。地味に画期的な気がします。

ではでは。

Hideo Kinami

unread,
Feb 10, 2009, 6:28:13 PM2/10/09
to android-...@googlegroups.com
木南です。

ちょっと質問ですが、これってまだエミュレータ上のSDKだけで、DevPhoneにいれてはいけないのですよね?
入れてしまうと、ダウンロードのアグリーメントの3.3に引っ掛かりますよね?
3.3 ... Except to the extent required by applicable third party
licenses, you may not load any part of the SDK onto a mobile handset
or any other hardware device except a personal computer, combine any
part of the SDK with other software, or distribute any software or
device incorporating a part of the SDK.
この条項に、DevPhoneが入っていると、ともてうれしいのですが…

--
Hideo

2009/02/10 23:06 mizmit1222 <mizmi...@gmail.com>:
--
木南 英夫 (http://d.hatena.ne.jp/hkinami/)

EGAWA Takashi

unread,
Feb 10, 2009, 11:43:24 PM2/10/09
to android-...@googlegroups.com
木南さん

江川です。
僕はDevPhoneのシステムイメージが出るまでSDKのバージョンアップを控えてます。
http://android-developers.blogspot.com/2009/02/android-11-sdk-release-1-now-available.html
にも
An updated v1.1 system image for the Android Developer Phone 1 will be
coming soon.
とあるので、もうちょっと待ってると出てくるんじゃないでしょうか!?
本家のDeveloperのgroupsにも、今やってるから待ってろ みたいな投稿がありました。
2月中には出てほしいです。

------------------------------------------
EGAWA Takashi <t.e...@gmail.com>


2009/02/11 8:28 Hideo Kinami <hki...@gmail.com>:

Hideo Kinami

unread,
Feb 11, 2009, 12:21:50 AM2/11/09
to android-...@googlegroups.com
木南です。

> An updated v1.1 system image for the Android Developer Phone 1 will be oming soon.

あ、見落としてました。なるほど、普通のSDKではなくて、Dev-Phone用のイメージを別でリリースするのですね。それなら、大丈夫ですね。

ありがとうございました!
--
Hideo

2009/02/11 13:43 EGAWA Takashi <t.e...@gmail.com>:

Y.Shima

unread,
Feb 14, 2009, 3:30:07 PM2/14/09
to android-...@googlegroups.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/>

Reply all
Reply to author
Forward
0 new messages