アーカイブ

‘Android’ タグのついている投稿

[android] Camera Previewが1.6だと動くのに2.1だとエラーになる

2010 年 6 月 20 日 コメント 2 件

カメラを使うアプリをAndroid 1.6で動確してリリースしたら、「動かねー」とかいわれて評価が悲惨なことになった (^o^)/

Android 1.6と2.1で、Camera.Parameters.setPreviewSize()を使用した場合の動きが変わってるみたい。
1.6だとサポートしていないサイズを指定しても動くけど、2.1だとCamera.setParameters()実行時にRuntimeExceptionが発生する。
公式サンプルのやり方だと、端末によっては落ちるので注意しましょ。

2.0以降をターゲットにしているなら、getSupportedPreviewSizes()で使えるサイズを取るのが無難ですね。
1.6ならリフレクションでgetSupportedPreviewSizes()を使っても良いんだけど、サイズ指定無しでも問題なさそうです。

カテゴリー: Android Programming タグ: , ,

[android] 別プロジェクトでAIDLをつかってみる

2010 年 5 月 11 日 コメントはありません

別プロジェクトでのAIDLの使い方についてのコメントあったので、サンプルを公開してみる。
やることはプロジェクトが同じでも別でも変わりません。

プログラム自体は以前書いたのと同じなので省略。

サービス提供側のAIDLファイルを、サービス利用側にコピーして使ってます。
本当は生ファイルを渡すのではなく、JARとかにした方がいい気がします。

InterAppsAIDL.zip

カテゴリー: Android Programming タグ: ,

[android] Context Menuを作ってみる

2010 年 5 月 6 日 コメント 1 件

なぜか、コンテキストメニューを解説している日本語サイトが少ない気がする。
かなり重要だと思うんだけどなー。

とりあえず、こんな感じの作ってみます。

続きを読む…

カテゴリー: Android Programming タグ: ,

[android] メモリをたくさん使いたければダイレクトバッファを使えば良い

2010 年 4 月 13 日 コメントはありません

写真を加工するアプリを作ってたらメモリ不足が多発した (^o^)/

Androidではアプリが使えるヒープ領域が少ないため、気をつけないとすぐにメモリ不足になる。
ヒープが少ないならヒープ外を使えばいいんじゃね、ってことでダイレクトバッファを使えばメモリをたくさん使えます。


package jp.xfutures.android.sample;

import java.nio.ByteBuffer;

import android.app.Activity;
import android.os.Bundle;

public class MemoryLimitCheckActivity extends Activity {
    @Override
    public void onCreate(Bundle savedInstanceState) {
        super.onCreate(savedInstanceState);
        setContentView(R.layout.main);

        // これはメモリ不足で落ちる
        ByteBuffer buf1 = ByteBuffer.allocate(20 * 1024 * 1024);

        // こっちなら大丈夫
        ByteBuffer buf2 = ByteBuffer.allocateDirect(20 * 1024 * 1024);
    }
}

たくさん使えるからといって使いすぎには注意です。

カテゴリー: Android Programming タグ: ,

[android] アイコン付きのリストを作ってみる

2010 年 2 月 14 日 コメントはありません

Twitterクライアントとかで見かける、アイコン付きのリストを作ってみる。
こんな感じ。

アイコン付きリストのサンプル

アイコン付きリストのサンプル


続きを読む…

カテゴリー: Android タグ: ,