Flutter 颤振状态下关闭摄像机后的白色/空白屏幕
我有一个小部件可以在我的应用程序上拍照,如下所示:Flutter 颤振状态下关闭摄像机后的白色/空白屏幕,flutter,flutter-dependencies,Flutter,Flutter Dependencies,我有一个小部件可以在我的应用程序上拍照,如下所示: final File imageFile = await ImagePicker.pickImage(source: ImageSource.camera).then((test) { print('TEST $test'); return test; }); 我可以毫无错误地打开相机,也可以拍照,但当我尝试返回或接受我拍摄的照片时,应用程序会显示一个白色屏幕,并且控制台不会显示任何错误 这在真
final File imageFile =
await ImagePicker.pickImage(source: ImageSource.camera).then((test) {
print('TEST $test');
return test;
});
我可以毫无错误地打开相机,也可以拍照,但当我尝试返回或接受我拍摄的照片时,应用程序会显示一个白色屏幕,并且控制台不会显示任何错误
这在真正的设备(小米Redmi Note 8t)上是失败的,但它在Android Emulator上工作
我能看到的唯一信息是
与设备的连接中断。
当我拿起相机时修复了添加try-catch的问题:
Future<Null> _pickImageFromCamera(BuildContext context, int index) async {
File imageFile;
try {
imageFile = await ImagePicker.pickImage(source: ImageSource.camera)
.then((picture) {
return picture; // I found this .then necessary
});
} catch (eror) {
print('error taking picture ${error.toString()}');
}
setState(() => this._imageFile = imageFile);
}
Future\u pickImageFromCamera(BuildContext,int-index)异步{
文件图像文件;
试一试{
imageFile=Wait ImagePicker.pickImage(来源:ImageSource.camera)
.然后((图片){
返回图片;//我找到了这个。然后需要
});
}捕获(eror){
打印('拍摄照片时出错${error.toString()}');
}
设置状态(()=>this.\u imageFile=imageFile);
}
我找到了颤振2的解决方案
在Android中
您需要将其添加到您的3个清单(debug、main、profile)
在发布模式下运行应用程序,即可完成 我有同样的情况,你的代码没有为我工作,它可以涉及到其他问题,然后。这肯定解决了我的问题。您是否正在尝试最新版本,包括颤振2?是的,我正在使用最新版本,包括颤振2.0.3版本,而且这在真实设备上失败(小米红米注7)。我看到的唯一消息是与设备的连接丢失。当我拿相机的时候。画廊的作品很好,但它可以是完全不同的。试着用你的代码发布一个新问题
<uses-permission android:name="android.permission.CAMERA" />
<uses-permission android:name="android.permission.READ_EXTERNAL_STORAGE" />
Future getbehind() async {
try{
final pickedFile = await picker.getImage(source: (ImageSource.camera:ImageSource.gallery),)
.then((value) {
setState(() {
if (value != null) {
behind = File(value.path);
} else {
print('No image selected.');
}
});
});
}catch(e){
}