Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

关于Zone mismatch解决方法 #162

Open
crazecoder opened this issue Aug 29, 2024 · 6 comments
Open

关于Zone mismatch解决方法 #162

crazecoder opened this issue Aug 29, 2024 · 6 comments

Comments

@crazecoder
Copy link
Owner

crazecoder commented Aug 29, 2024

出现如下报错时

════════ 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(message: exception.toString(),detail: stackTrace.toString());
    });
}
@crazecoder crazecoder pinned this issue Aug 29, 2024
@wxc64970
Copy link

解决方法里还需要这一句吗?
FlutterBugly.init(
androidAppId: "your android app id",
iOSAppId: "your iOS app id",
);

@crazecoder
Copy link
Owner Author

这个是必须的

@wxc64970
Copy link

这个是必须的

初始化写在哪个位置

@crazecoder
Copy link
Owner Author

crazecoder commented Oct 31, 2024

这个是必须的

初始化写在哪个位置

按需选择,个人一般放在启动app时,或者启动后的第一个界面(当然你得有信心,否则第一个界面出来之前的报错不会上传)

@wxc64970
Copy link

这个是必须的

初始化写在哪个位置

按需选择,个人一般放在启动app时,或者启动后的第一个界面

初始化位置会不会影响隐私协议,还是必须要用户同意隐私协议后才能初始化

@crazecoder
Copy link
Owner Author

这个是必须的

初始化写在哪个位置

按需选择,个人一般放在启动app时,或者启动后的第一个界面

初始化位置会不会影响隐私协议,还是必须要用户同意隐私协议后才能初始化

看各市场审核要求,经测google play没有这个要求

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

No branches or pull requests

2 participants