記事一覧

Screen resolution

今アンドロイドappの開発は主にエミュレータベースでやっております。エミュレーターではスクリーン解像度を任意に設定できるようになっているんで いろいろ変えてレイアウトなどをチェックしているんですが、どうも以下のコードで解像度をチェックしてみたところ横幅が320のまま変わらない。

WindowManager wm = (WindowManager) getSystemService(Context.WINDOW_SERVICE);
Display display = wm.getDefaultDisplay();
Log.d("display", "w:" + display.getWidth());

なぜかと思って調べてみたら、どうやらSDKのバージョンが関係あるようです。
http://romly.com/archives/2010/08/android_api_screensize.html
SDKバージョンが3以下(=Android OS 1.5以下)だと 横320pxを越える解像度は扱えないようですね。
minSdkVersionを7にしたらちゃんと指定した解像度になりました。

I'm working with Android emulator, on which you can set arbitrary screen resolution. But invoking the code below to get screen size only get 320px width while I set various resolution on the Emulator Settings.

WindowManager wm = (WindowManager) getSystemService(Context.WINDOW_SERVICE);
Display display = wm.getDefaultDisplay();
Log.d("display", "w:" + display.getWidth());

The reason was the setting of SDK version.
If the minSdkVersion is 3 or lower (Android1.5 or lower) you cannot handle the screen width bigger than 320.
I rebuild the project with minSdkVersion=7 (Android OS 2.1) and got the result as desired.