Androidでカスタムカメラアプリを開発しています。私の目標は、画像をファイルに保存し、ファイルが保存されたらすぐにフルスクリーンモードで開くことです。残念ながら、問題は、私のメインアクティビティ(ImageCapture)が次のアクティビティ(ImageDisplay)を呼び出す前にImageCaptureCallbackの結果を待たないことです。
写真を撮るために、私はカスタムImageCaptureCallbackを使用しています。これは、OutputStreamを使用してキャプチャされた画像を「tmpPicturePath」に保存します。後でImageDisplayアクティビティが呼び出されます-tmpPicturePathに保存されているファイルを読み取ります。
camera.takePicture(mShutterCallback, mPictureCallbackRaw, new ImageCaptureCallback(this));
// ImageCaptureCallback saves the file in tmpPicturePath
Intent intent = new Intent(ImageCapture.this, ImageDisplay.class);
intent.putExtra("tmpPicturePath", this.getTmpPicturePath());
startActivity(intent);
ただし、ImageCaptureCallbackで作成する必要のあるファイルは、ImageDisplayアクティビティを呼び出した時点ではまだ利用できません。全体的な効果は、実際の写真ではなく、以前に撮影した写真がImageDisplayクラスで利用できることです。この問題を処理する方法を知っていますか?言い換えれば、次のアクティビティを呼び出す前にコールバックの結果を待つ方法は?どうもありがとう!