flutter_bugly
flutter_bugly copied to clipboard
关于Zone mismatch解决方法
出现如下报错时
════════ Exception caught by Flutter framework ════════════════════════════════════
The following assertion was thrown during runApp:
Zone mismatch.
The Flutter bindings were initialized in a different zone than is now being used.
This will likely cause confusion and bugs as any zone-specific configuration will
inconsistently use the configuration of the original binding initialization zone or
this zone based on hard-to-predict factors such as which zone was active when a
particular callback was set.
It is important to use the same zone when calling `ensureInitialized` on the
binding as when calling `runApp` later.
To make this warning fatal, set BindingBase.debugZoneErrorsAreFatal to true before
the bindings are initialized (i.e. as the first statement in `void main() { }`).
[...]
═══════════════════════════════════════════════════════════════════════════════════
使用下面方法解决
void main(){
runZonedGuarded(() {
WidgetsFlutterBinding.ensureInitialized();
runApp(MyApp());
}, (exception, stackTrace) {
FlutterBugly.uploadException(
type: exception.runtimeType.toString(),
message: exception.toString(),
detail: stackTrace.toString(),
);
});
}
解决方法里还需要这一句吗? FlutterBugly.init( androidAppId: "your android app id", iOSAppId: "your iOS app id", );
这个是必须的
这个是必须的
初始化写在哪个位置
这个是必须的
初始化写在哪个位置
按需选择,个人一般放在启动app时,或者启动后的第一个界面(当然你得有信心,否则第一个界面出来之前的报错不会上传)
这个是必须的
初始化写在哪个位置
按需选择,个人一般放在启动app时,或者启动后的第一个界面
初始化位置会不会影响隐私协议,还是必须要用户同意隐私协议后才能初始化
这个是必须的
初始化写在哪个位置
按需选择,个人一般放在启动app时,或者启动后的第一个界面
初始化位置会不会影响隐私协议,还是必须要用户同意隐私协议后才能初始化
看各市场审核要求,经测google play没有这个要求