3

ここのチュートリアルに従いました: http://androidsamples.blogspot.com/2009/06/how-to-display-thumbnails-of-images.html と、ほぼ同じコードを持つ別のチュートリアルもあり、さまざまなデバイスでの画像の処理方法にいくつかの問題/矛盾があります。

画像を収集するための私のコードは次のとおりです。

private void init_phone_image_grid() {
    String[] img = { MediaStore.Images.Thumbnails._ID };
    Uri uri = MediaStore.Images.Thumbnails.EXTERNAL_CONTENT_URI;
    imagecursor = managedQuery(uri, img, null,
            null, MediaStore.Images.Thumbnails.IMAGE_ID);
    image_column_index = imagecursor
            .getColumnIndexOrThrow(MediaStore.Images.Thumbnails._ID);
    count = imagecursor.getCount();
    imagegrid = (GridView) findViewById(R.id.PhoneImageGrid);
    imagegrid.setAdapter(new ImageAdapter(getApplicationContext()));
    imagegrid.setOnItemClickListener(new OnItemClickListener() {
        @Override
        public void onItemClick(AdapterView parent, View v, int position,
                long id) {
            System.gc();
            String[] proj = { MediaStore.Images.Media.DATA };
            actualimagecursor = managedQuery(
                    MediaStore.Images.Media.EXTERNAL_CONTENT_URI, proj,
                    null, null, null);
            actual_image_column_index = actualimagecursor
                    .getColumnIndexOrThrow(MediaStore.Images.Media.DATA);
            actualimagecursor.moveToPosition(position);
            String i = actualimagecursor
                    .getString(actual_image_column_index);
            System.gc();
            Intent intent = new Intent(getApplicationContext(),
                    EvidenceImageView.class);
            intent.putExtra("filename", i);
            startActivity(intent);
        }
    });
}

Android 2.2を実行しているエミュレーターがあり、それを使用してマウントするsdcardファイルを作成できました..adbを使用していくつかの画像をフォルダーにコピーし、エミュレーターを再起動しました(最初はアプリに画像が表示されませんでした)..再起動後一部の画像はアプリに表示されましたが、すべてではありませんでした..次に、エミュレーターに付属のギャラリーアプリケーションを開いた後、ギャラリーにすべての画像を正常にロードさせることができました..しかし、私はHTC thunberboltも持っています.そして、私はそれに写真を持っています(/ sdcard/DCIM/100MEDIAの下に)、同じアプリに画像がまったく表示されません(私が取り組んでいるアプリを参照してください)..電話がかかっていませんコンピューターに接続しているので、電話がSDカードにアクセスできることに問題はないことがわかっています..また、私は'携帯電話に付属のギャラリー アプリケーションを試してみたところ、写真/ビデオは問題なく読み込まれました..システムが同じ方法で画像を処理していない場合..

私はAndroid開発にまったく慣れていないので、これがかなり簡単になることを望んでいました.Facebookなどの他のアプリを調べたところ、写真をアップロードしたいときにhtcが提供するギャラリーに直接移動するようです..おそらく、私はこの同じアプローチをとることができます(方法は完全にはわかりません..最終的には、ユーザーが複数の画像を選択してそれらすべてをアップロードできるようにしたいです.Androidに付属のカメラアプリのソースコードも見つけました:

https://android.googlesource.com/platform/packages/apps/Camera/+/master/src/com/android/camera

これはいくらか役に立ちますが、この時点で消化しなければならないかなりの量の情報です。

「これがどのように機能するか」の説明は素晴らしいでしょう。ただし、主なことは、ギャラリーにすべてのサムネイル画像を表示するにはどうすればよいか (必要に応じてサムネイルを作成する)、または、システム ギャラリーとどのようにやり取りできるかということです..

4

1 に答える 1

1

写真をアップロードしたいときに、htcが提供するギャラリーに直接移動するようです。おそらく、これと同じアプローチを取ることができます。

これの何が問題になっていますか:

アプリのギャラリー(SDカード)から画像を選択するにはどうすればよいですか?

于 2011-05-13T23:54:55.753 に答える