0

現時点では、2 つのインテントを使用しています。1 つは音声録音用、もう 1 つはカメラ用です。

Intent photoIntent = new Intent("android.media.action.IMAGE_CAPTURE");
startActivityForResult(photoIntent, ACTIVITY_TAKE_PHOTO);

Intent voiceIntent = new Intent(MediaStore.Audio.Media.RECORD_SOUND_ACTION);
startActivityForResult(voiceIntent, ACTIVITY_RECORD_SOUND);

私の目的は、写真/録音された声を保存するパスを含むそれぞれにエクストラを配置することです。そうするオプションはありますか?

4

3 に答える 3

2

エクストラを使用して、EXTRA_OUTPUTで撮影した画像の宛先 Uri を指定できますACTION_IMAGE_CAPTURE(ただし、そうではありませんRECORD_SOUND_ACTION。その場合、返されるバンドルにはファイル パスが含まれます)。

例はここにあります。以下に抜粋します。

大まかにヤノワを引用:

// fire off the intent
Intent i = new Intent(android.provider.MediaStore.ACTION_IMAGE_CAPTURE);
i.putExtra(android.provider.MediaStore.EXTRA_OUTPUT,
           Uri.fromFile(new File("<temp file path here>")));
startActivityForResult(i, mRequestCode);

ところで、同様の質問がここにあります。

于 2009-12-22T21:47:21.263 に答える
0

私の知る限り、これはインテントを発射することからは不可能です。

指定されたアクティビティが返されると、画像/音声データが結果に含まれている必要があります。そのデータを取得し、アクティビティ内から目的の場所に保存します。カメラ/レコーダー アクティビティは、単に画像/音声を処理し、処理のために結果をユーザーに返します。

于 2009-12-22T20:04:27.357 に答える