1

カムインテントを開始し、アプリで新しく撮影した写真の画像パスを取得したいと思います。どうすればこれを達成できますか?バックグラウンドサービスがこの画像を処理できるように、この画像のパスが必要です。

else if (requestCode == TAKE_PICTURE && resultCode == ActionActivity.RESULT_OK){
    Log.i(ACTION_ACTIVITY_TAG, "picture intent gives result ok");
    Bundle b = new Bundle();

    b.putSerializable("picUri", ??????);

    Intent i = new Intent();
    i.putExtras(b);
    i.setClass(this,CommentActivity.class);
}
4

1 に答える 1

1

putSerializableカメラから撮影した画像のURIを送信するために使用する必要はありません。インテントからURIを取得しonActivityResult、それを文字列として別のアクティビティに送信するだけです。

else if (requestCode == TAKE_PICTURE && resultCode == ActionActivity.RESULT_OK){
    Log.i(ACTION_ACTIVITY_TAG, "picture intent gives result ok");
    Bundle b = new Bundle();
    Uri picuri = intent.getData();
    b.putString("picUri", picuri.toString());

    Intent i = new Intent();
    i.putExtras(b);
    i.setClass(this,CommentActivity.class);

アクティビティでは、CommentActivitypicURIを次のように取得できます。

Intent i = getIntent();
Bundle extras = i.getExtras();

imguri = extras.getString("picUri");
Uri myUri = Uri.parse(imguri);
于 2012-12-05T08:50:09.467 に答える