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){

    }