我已经创建了一个自定义相机应用,我将它安装在两者上,但它们的工作方式并不相同。
当我触摸星系音符2的屏幕时,图像会冻结,而在音符专业版中,它会恢复并且不会冻结。
什么似乎是问题,或者我应该注意什么?
他们使用相同的代码拍照。
preview.setOnClickListener(new View.OnClickListener() {
@SuppressLint("NewApi")
@Override
@SuppressWarnings("null")
public void onClick(View v) {
mCamera.takePicture(null, null, mPicture);
View view = getWindow().getDecorView().findViewById(R.id.picture);
view.setDrawingCacheEnabled(true);
view.buildDrawingCache();
Bitmap bitmap = view.getDrawingCache();
saveBitmap(bitmap);
view.destroyDrawingCache();
}
});
答案 0 :(得分:1)
答案 1 :(得分:0)
当我触摸星系音符2的屏幕时,图像会冻结,而在音符专业版中,它会恢复并且不会冻结。
Camera API与硬件相关,因此它们在不同设备上的表现可能不同。
使用相同的代码拍照
您应该在回调中拍摄照片:
Camera.PictureCallback mPicture = new Camera.PictureCallback(){
onPictureTaken(byte[] data, Camera camera) {
try {
FileOutputStream output = new FileOutputStream("/sdcard/preview.jpg");
output.write(data);
output.flush();
output.close();
} catch (IOException e) {
}
}
};
public void onClick(View v) {
mCamera.takePicture(null, null, mPicture);
}