解決済み:問題はAndroidのカメラやSDKとは関係なく、カメラとサーフェスの両方が使用可能かどうかを判断する独自のロジックです。すでに画像を撮影した後に、camera.startPreviewでsurfaceHolderを再利用するにはどうすればよいですか?
私は、surfaceHolderが自分のアプリケーションのカメラプレビューウィンドウとして機能する準備ができていることがわかるように、コールバックを追加するアクティビティのレイアウトxmlに存在するSurfaceViewがある状況があります。 。この部分はうまく動作します。私はプレビューウィンドウを取得し、通常のカメラに関連するすべてのメソッドとコールバックを使用してイメージを取得および保存できます。
問題は、ユーザーが写真を撮った後で、直前に撮った写真のプレビューウィンドウを開かずにすぐに別の写真を撮ることができるボタンが表示されるということです。私の問題は嘘です!既に作成されたsurfaceHolderインスタンスを使用してcamera.startPreviewをもう一度呼び出すと、プレビューが表示されません。
同じsurfaceHolderを再利用するにはどうすればよいですか? surfaceViewに現在の所有者を破棄して再作成させるような方法がありますか?