Android 相机预览问题-预览变得像素化和扭曲
我正在创建一个应用程序,其中一部分有摄像头预览 我的问题是,如果我在设备上点击home并重新打开应用程序,相机就会被像素化,紫色的线条贯穿其中。我假设这与onResume()/onPause()方法有关,但我在这里停止预览并将相机设置为null(如下所示) 在简历上Android 相机预览问题-预览变得像素化和扭曲,android,android-camera,onresume,onpause,Android,Android Camera,Onresume,Onpause,我正在创建一个应用程序,其中一部分有摄像头预览 我的问题是,如果我在设备上点击home并重新打开应用程序,相机就会被像素化,紫色的线条贯穿其中。我假设这与onResume()/onPause()方法有关,但我在这里停止预览并将相机设置为null(如下所示) 在简历上 @Override public void onResume() { //Registering the Listener super.onResume(); manager
@Override
public void onResume() {
//Registering the Listener
super.onResume();
manager.registerListener(this,
manager.getDefaultSensor(Sensor.TYPE_ACCELEROMETER),
manager.SENSOR_DELAY_NORMAL);
//Opening the Camera and Starting the Preview
camera = Camera.open();
startPreview();
}
@Override
public void onPause() {
super.onPause();
if(camera!=null)
{
camera.stopPreview();
camera.release();
camera = null;
inPreview = false;
}
}
暂停时
@Override
public void onResume() {
//Registering the Listener
super.onResume();
manager.registerListener(this,
manager.getDefaultSensor(Sensor.TYPE_ACCELEROMETER),
manager.SENSOR_DELAY_NORMAL);
//Opening the Camera and Starting the Preview
camera = Camera.open();
startPreview();
}
@Override
public void onPause() {
super.onPause();
if(camera!=null)
{
camera.stopPreview();
camera.release();
camera = null;
inPreview = false;
}
}
我有一个选项让用户重新拍摄他们的照片,如果用户第三次尝试重新拍摄图像,我会面临同样的问题。我不知道问题出在哪里,我是从
有一点编辑,以满足我的需要
从阅读和研究来看,我的onPause和onResume似乎是正确的,所以这可能不是问题所在
如果像我这样的人(学习诀窍)遇到同样的问题,我的问题是什么?我补充了什么
camera.setDisplayOrientation(90);
以将预览旋转为纵向。我的问题是,我在错误的地方调用了它,现在我在onResume()
方法中调用它
最后是一个简单的修复…谢谢大家如果删除startPreview(),那么会发生什么?代码有点旧了。尽管如此,我从未体验过您描述的行为,这可能与您的特定设备型号(无论是什么)有关。如果你能重现这个问题,让我知道设备型号是什么,这样我可以做进一步的研究。@Commonware我会看看这个库,但同时让你知道我正在使用的设备是三星Nexus 10。好吧,我绝对不会在我的Nexus 10上看到这种行为,我的CWAC摄像头演示项目(幸运的是,我碰巧运行了N10,并且安装了应用!)@Armanstranger,我恐怕也是同样的问题