カメラのプレビューとオーバーレイされたGLSurfaceViewの両方の「写真を撮ろう」としています。camera.takePicture() と PictureCallback() を介してカメラ プレビュー要素が機能していますが、GLSurfaceView 要素を含めるか、現在の画面を個別にキャプチャして 2 つのビットマップを 1 つのファイルにマージする必要があります。以下のコードを使用して surfaceView から画像を取得しようとしましたが、これは null ビットマップになります。
public Bitmap grabImage() {
this.setDrawingCacheEnabled(true);
Bitmap b = null;
try {
b = this.getDrawingCache(true);
if (b==null) {
b = this.getDrawingCache(true);
}
} catch (Exception e) {
e.printStackTrace();
}
this.setDrawingCacheEnabled(false);
return b;
}
これについての考えやスニペットをいただければ幸いです。よろしくお願いします。