日本のアンドロイド端末は、Android OS 1.6以上となりますが、世界を考えてみるとAndroid OS 1.5の端末は現在全端末の1/3程あります。
これを踏まえて、多くのソフトはAndroid 1.5以上で動作をするようにしていると思います。
また、Android 1.6から高解像度、低解像度対応が入ってきて、ハイレゾアイコン等を入れられるようになったりしましたが、Android 1.5以上の指定でマルチ解像度にする時は注意する必要があります。
分かりやすくアイコンを例に取ると、普通にハイレゾアイコンを入れてしまうと、Android OS1.5ではハイレゾアイコンを縮小したアイコンになってしまい、鮮明にアイコンが表示されません。実は、tCallBlockingもこのような状況になっていましたので、先日のバージョンアップで修正しました。
AndroidManifest.xml
AndroidManifest.xmlは、OS1.5以上で、マルチスクリーン対応ですので以下のようになります。
<uses-sdk android:minSdkVersion="3"/>
<supports-screens
android:largeScreens="true"
android:normalScreens="true"
android:smallScreens="true"
android:anyDensity="true" />
間違い
一見正しそうに見えますが、Android OS 1.5では、hdpiの物を使用してしまいます。アイコンであれば鮮明でないぐらいで済むのですが、画像を解像度により動的に切り替えている場合は致命的になります。
正解
以下のようにdrawableのディレクトリを配置すると、Android OS1.5の時は、drawableディレクトリを使用してくれます。
まとめ
miniSDKVersionを4以上に指定した場合は、まったく関係ない話です。ちょっとしたTipでした。
ついでに以下、tCallBlockingの宣伝です。
tCallBlocking
tCallBlocking は、非通知や指定電話番号など設定した着信を自動的に切断するアプリケーションです。
tCallBlockingは、設定した対象から着信があった場合に、自動的にその着信を切断します。 非通知や特定の電話番号からの着信には出たくないという方にお勧めです。
tCallBlockingの詳細についてはこちらをご覧ください。
ダウンロード
Full バージョン(200円)
Android Market Applications -> LifeStyleからダウンロードしてください。
market://search?q=jp.co.taosoftware.android.callblocking
Lite バージョン(無料)
Android Market Applications -> LifeStyleからダウンロードしてください。
market://search?q=jp.co.taosoftware.android.callblockinglite
2010年5月27日 at 3:36 PM
Cupcake 1.5のbest matchアルゴリズムにバグがあって、first matchになっちゃってたそうです。なので、ldpiを拾っちゃう。
https://wave.google.com/wave/#restored:wave:googlewave.com!w%252BfZ2urbZk7o
drawable-v3でもいいかも。
2010年5月27日 at 3:51 PM
貴重な情報ありがとうございます。
確かにdrawable-v3でもいいですね。でもtRSSReaderは、いまだにv2から対応だったするんですけどね(^^