TercyoStorck / internationalization

A project to easily implement internationalization on flutter projects
BSD 2-Clause "Simplified" License
12 stars 3 forks source link

example cannot execute #4

Closed hexiekuaile closed 4 years ago

hexiekuaile commented 4 years ago

Launching lib\main.dart on Android SDK built for x86 in debug mode... Running Gradle task 'assembleDebug'... E/flutter (18895): [ERROR:flutter/lib/ui/ui_dart_state.cc(157)] Unhandled Exception: ServicesBinding.defaultBinaryMessenger was accessed before the binding was initialized. E/flutter (18895): If you're running an application and need to access the binary messenger before runApp() has been called (for example, during plugin initialization), then you need to explicitly call the WidgetsFlutterBinding.ensureInitialized() first. E/flutter (18895): If you're running a test, you can call the TestWidgetsFlutterBinding.ensureInitialized() as the first line in your test's main() method to initialize the binding. E/flutter (18895): #0 defaultBinaryMessenger. (package:flutter/src/services/binary_messenger.dart:76:7) E/flutter (18895): #1 defaultBinaryMessenger (package:flutter/src/services/binary_messenger.dart:89:4) E/flutter (18895): #2 PlatformAssetBundle.load (package:flutter/src/services/asset_bundle.dart:219:15) E/flutter (18895): #3 AssetBundle.loadString (package:flutter/src/services/asset_bundle.dart:67:33) E/flutter (18895): #4 CachingAssetBundle.loadString. (package:flutter/src/services/asset_bundle.dart:162:56) E/flutter (18895): #5 _LinkedHashMapMixin.putIfAbsent (dart:collection-patch/compact_hash.dart:293:23) E/flutter (18895): #6 CachingAssetBundle.loadString (package:flutter/src/services/asset_bundle.dart:162:27) E/flutter (18895): #7 _getConfigurations (package:internationalization/internationalization.dart:15:38) E/flutter (18895): #8 Internationalization.loadConfigurations (package:internationalization/internationalization.dart:155:22) E/flutter (18895): #9 main (package:test03/main.dart:6:30) E/flutter (18895): #10 _runMainZoned.. (dart:ui/hooks.dart:239:25) E/flutter (18895): #11 _rootRun (dart:async/zone.dart:1126:13) E/flutter (18895): #12 _CustomZone.run (dart:async/zone.dart:1023:19) E/flutter (18895): #13 _runZoned (dart:async/zone.dart:1518:10) E/flutter (18895): #14 runZoned (dart:async/zone.dart:1502:12) E/flutter (18895): #15 _runMainZoned. (dart:ui/hooks.dart:231:5) E/flutter (18895): #16 _startIsolate. (dart:isolate-patch/isolate_patch.dart:307:19) E/flutter (18895): #17 _RawReceivePortImpl._handleMessage (dart:isolate-patch/isolate_patch.dart:174:12)

hexiekuaile commented 4 years ago
void main() async {
  await Internationalization.loadConfigurations();
  runApp(InternationalizationExampleApp());
}

rootBundle.loadString("./internationalization.yaml");
TercyoStorck commented 4 years ago

Thanks for your report. I'll see what's happening and fix it as soon as possible.

TercyoStorck commented 4 years ago

just put WidgetsFlutterBinding.ensureInitialized() before await Internationalization.loadConfigurations() and it'll work properly