Androidカメラで写真を撮ろうとしています。プレビューを開始して写真を撮るために、プログラムが最初に起動するときに1秒ほど待つ必要があります。Handler.postDelayedを使用してこれを実行しましたが、正常に機能します。
ここで、私の問題は、run()が実行されるまでプログラムのフローを一時停止したいということです。ここでは、メソッドが終了したことを通知するフラグ付きのwhile(true)ループを使用しました。ただし、プログラムがフリーズします。エラーは返されません。誰かがいくつかの光を当てることができますか?以下は私のコードです
flag = false;
handler.postDelayed(new Runnable() {
public void run()
{
preview.camera.takePicture(shutterCallback, rawCallback, jpegCallback);
preview.camera.startPreview();
flag = true;
}
}, 1000);
while (true)
{
if (flag) break;
}