From 7177a566aeda21040db52463e739318ad5246f9b Mon Sep 17 00:00:00 2001 From: rustdesk Date: Sun, 17 Apr 2022 00:44:05 +0800 Subject: [PATCH] await ffi init --- ios/Podfile.lock | 70 +++++++++++++++++++++------------- lib/main.dart | 9 +++-- lib/models/model.dart | 13 ++----- lib/pages/connection_page.dart | 6 --- 4 files changed, 53 insertions(+), 45 deletions(-) diff --git a/ios/Podfile.lock b/ios/Podfile.lock index 1af56f26d..947fd0d36 100644 --- a/ios/Podfile.lock +++ b/ios/Podfile.lock @@ -1,22 +1,22 @@ PODS: - device_info (0.0.1): - Flutter - - Firebase/Analytics (8.11.0): + - Firebase/Analytics (8.14.0): - Firebase/Core - - Firebase/Core (8.11.0): + - Firebase/Core (8.14.0): - Firebase/CoreOnly - - FirebaseAnalytics (~> 8.11.0) - - Firebase/CoreOnly (8.11.0): - - FirebaseCore (= 8.11.0) + - FirebaseAnalytics (~> 8.14.0) + - Firebase/CoreOnly (8.14.0): + - FirebaseCore (= 8.14.0) - firebase_analytics (9.1.5): - - Firebase/Analytics (= 8.11.0) + - Firebase/Analytics (= 8.14.0) - firebase_core - Flutter - - firebase_core (1.12.0): - - Firebase/CoreOnly (= 8.11.0) + - firebase_core (1.14.1): + - Firebase/CoreOnly (= 8.14.0) - Flutter - - FirebaseAnalytics (8.11.0): - - FirebaseAnalytics/AdIdSupport (= 8.11.0) + - FirebaseAnalytics (8.14.0): + - FirebaseAnalytics/AdIdSupport (= 8.14.0) - FirebaseCore (~> 8.0) - FirebaseInstallations (~> 8.0) - GoogleUtilities/AppDelegateSwizzler (~> 7.7) @@ -24,16 +24,16 @@ PODS: - GoogleUtilities/Network (~> 7.7) - "GoogleUtilities/NSData+zlib (~> 7.7)" - nanopb (~> 2.30908.0) - - FirebaseAnalytics/AdIdSupport (8.11.0): + - FirebaseAnalytics/AdIdSupport (8.14.0): - FirebaseCore (~> 8.0) - FirebaseInstallations (~> 8.0) - - GoogleAppMeasurement (= 8.11.0) + - GoogleAppMeasurement (= 8.14.0) - GoogleUtilities/AppDelegateSwizzler (~> 7.7) - GoogleUtilities/MethodSwizzler (~> 7.7) - GoogleUtilities/Network (~> 7.7) - "GoogleUtilities/NSData+zlib (~> 7.7)" - nanopb (~> 2.30908.0) - - FirebaseCore (8.11.0): + - FirebaseCore (8.14.0): - FirebaseCoreDiagnostics (~> 8.0) - GoogleUtilities/Environment (~> 7.7) - GoogleUtilities/Logger (~> 7.7) @@ -48,21 +48,21 @@ PODS: - GoogleUtilities/UserDefaults (~> 7.7) - PromisesObjC (< 3.0, >= 1.2) - Flutter (1.0.0) - - GoogleAppMeasurement (8.11.0): - - GoogleAppMeasurement/AdIdSupport (= 8.11.0) + - GoogleAppMeasurement (8.14.0): + - GoogleAppMeasurement/AdIdSupport (= 8.14.0) - GoogleUtilities/AppDelegateSwizzler (~> 7.7) - GoogleUtilities/MethodSwizzler (~> 7.7) - GoogleUtilities/Network (~> 7.7) - "GoogleUtilities/NSData+zlib (~> 7.7)" - nanopb (~> 2.30908.0) - - GoogleAppMeasurement/AdIdSupport (8.11.0): - - GoogleAppMeasurement/WithoutAdIdSupport (= 8.11.0) + - GoogleAppMeasurement/AdIdSupport (8.14.0): + - GoogleAppMeasurement/WithoutAdIdSupport (= 8.14.0) - GoogleUtilities/AppDelegateSwizzler (~> 7.7) - GoogleUtilities/MethodSwizzler (~> 7.7) - GoogleUtilities/Network (~> 7.7) - "GoogleUtilities/NSData+zlib (~> 7.7)" - nanopb (~> 2.30908.0) - - GoogleAppMeasurement/WithoutAdIdSupport (8.11.0): + - GoogleAppMeasurement/WithoutAdIdSupport (8.14.0): - GoogleUtilities/AppDelegateSwizzler (~> 7.7) - GoogleUtilities/MethodSwizzler (~> 7.7) - GoogleUtilities/Network (~> 7.7) @@ -91,6 +91,9 @@ PODS: - GoogleUtilities/Logger - GoogleUtilities/UserDefaults (7.7.0): - GoogleUtilities/Logger + - image_picker_ios (0.0.1): + - Flutter + - MTBBarcodeScanner (5.0.11) - nanopb (2.30908.0): - nanopb/decode (= 2.30908.0) - nanopb/encode (= 2.30908.0) @@ -101,6 +104,9 @@ PODS: - path_provider_ios (0.0.1): - Flutter - PromisesObjC (2.1.0) + - qr_code_scanner (0.2.0): + - Flutter + - MTBBarcodeScanner - shared_preferences_ios (0.0.1): - Flutter - url_launcher_ios (0.0.1): @@ -113,8 +119,10 @@ DEPENDENCIES: - firebase_analytics (from `.symlinks/plugins/firebase_analytics/ios`) - firebase_core (from `.symlinks/plugins/firebase_core/ios`) - Flutter (from `Flutter`) + - image_picker_ios (from `.symlinks/plugins/image_picker_ios/ios`) - package_info (from `.symlinks/plugins/package_info/ios`) - path_provider_ios (from `.symlinks/plugins/path_provider_ios/ios`) + - qr_code_scanner (from `.symlinks/plugins/qr_code_scanner/ios`) - shared_preferences_ios (from `.symlinks/plugins/shared_preferences_ios/ios`) - url_launcher_ios (from `.symlinks/plugins/url_launcher_ios/ios`) - wakelock (from `.symlinks/plugins/wakelock/ios`) @@ -129,6 +137,7 @@ SPEC REPOS: - GoogleAppMeasurement - GoogleDataTransport - GoogleUtilities + - MTBBarcodeScanner - nanopb - PromisesObjC @@ -141,10 +150,14 @@ EXTERNAL SOURCES: :path: ".symlinks/plugins/firebase_core/ios" Flutter: :path: Flutter + image_picker_ios: + :path: ".symlinks/plugins/image_picker_ios/ios" package_info: :path: ".symlinks/plugins/package_info/ios" path_provider_ios: :path: ".symlinks/plugins/path_provider_ios/ios" + qr_code_scanner: + :path: ".symlinks/plugins/qr_code_scanner/ios" shared_preferences_ios: :path: ".symlinks/plugins/shared_preferences_ios/ios" url_launcher_ios: @@ -154,25 +167,28 @@ EXTERNAL SOURCES: SPEC CHECKSUMS: device_info: d7d233b645a32c40dfdc212de5cf646ca482f175 - Firebase: 44dd9724c84df18b486639e874f31436eaa9a20c - firebase_analytics: be4ce15dfece759ee3cdab7d116408b02946d574 - firebase_core: 443bccfd6aa6b42f07be365b500773dc69db2d87 - FirebaseAnalytics: 4e4b13031034e6561ed3bd1d47b6fdabbd6487c6 - FirebaseCore: 2f4f85b453cc8fea4bb2b37e370007d2bcafe3f0 + Firebase: 7e8fe528c161b9271d365217a74c16aaf834578e + firebase_analytics: 8a36c76380be1fca3bab69534cf911082e0d7ab8 + firebase_core: cdef02fcf55872191eb0568d4c31a7a700e38582 + FirebaseAnalytics: 2fc3876e2eb347673ad2f35e249ae7b15d6c88f5 + FirebaseCore: b84a44ee7ba999e0f9f76d198a9c7f60a797b848 FirebaseCoreDiagnostics: 92e07a649aeb66352b319d43bdd2ee3942af84cb FirebaseInstallations: 40bd9054049b2eae9a2c38ef1c3dd213df3605cd Flutter: 50d75fe2f02b26cc09d224853bb45737f8b3214a - GoogleAppMeasurement: aa3cb422fab2b05d2efac543a5720d1a85b9dea5 + GoogleAppMeasurement: 71156240babd3cc6ced03e0d54816f01a880c730 GoogleDataTransport: 629c20a4d363167143f30ea78320d5a7eb8bd940 GoogleUtilities: e0913149f6b0625b553d70dae12b49fc62914fd1 + image_picker_ios: b786a5dcf033a8336a657191401bfdf12017dabb + MTBBarcodeScanner: f453b33c4b7dfe545d8c6484ed744d55671788cb nanopb: a0ba3315591a9ae0a16a309ee504766e90db0c96 package_info: 873975fc26034f0b863a300ad47e7f1ac6c7ec62 - path_provider_ios: 7d7ce634493af4477d156294792024ec3485acd5 + path_provider_ios: 14f3d2fd28c4fdb42f44e0f751d12861c43cee02 PromisesObjC: 99b6f43f9e1044bd87a95a60beff28c2c44ddb72 - shared_preferences_ios: aef470a42dc4675a1cdd50e3158b42e3d1232b32 + qr_code_scanner: bb67d64904c3b9658ada8c402e8b4d406d5d796e + shared_preferences_ios: 548a61f8053b9b8a49ac19c1ffbc8b92c50d68ad url_launcher_ios: 839c58cdb4279282219f5e248c3321761ff3c4de wakelock: d0fc7c864128eac40eba1617cb5264d9c940b46f PODFILE CHECKSUM: a00077baecbb97321490c14848fceed3893ca92a -COCOAPODS: 1.10.2 +COCOAPODS: 1.11.3 diff --git a/lib/main.dart b/lib/main.dart index 4f8adc9e1..6f9f6b8a6 100644 --- a/lib/main.dart +++ b/lib/main.dart @@ -11,7 +11,11 @@ import 'pages/settings_page.dart'; Future main() async { WidgetsFlutterBinding.ensureInitialized(); - await Firebase.initializeApp(); + var a = FFI.ffiModel.init(); + var b = Firebase.initializeApp(); + await a; + await b; + refreshCurrentUser(); EasyLoading.instance.loadingStyle = EasyLoadingStyle.light; toAndroidChannelInit(); runApp(App()); @@ -21,7 +25,6 @@ class App extends StatelessWidget { @override Widget build(BuildContext context) { final analytics = FirebaseAnalytics.instance; - refreshCurrentUser(); return MultiProvider( providers: [ ChangeNotifierProvider.value(value: FFI.ffiModel), @@ -37,7 +40,7 @@ class App extends StatelessWidget { primarySwatch: Colors.blue, visualDensity: VisualDensity.adaptivePlatformDensity, ), - home: !isAndroid ? WebHomePage() : HomePage(), + home: isWeb ? WebHomePage() : HomePage(), navigatorObservers: [ FirebaseAnalyticsObserver(analytics: analytics), ], diff --git a/lib/models/model.dart b/lib/models/model.dart index 1df6f51c1..9979532b1 100644 --- a/lib/models/model.dart +++ b/lib/models/model.dart @@ -22,7 +22,6 @@ class FfiModel with ChangeNotifier { Display _display = Display(); var _decoding = false; bool _waitForImage = false; - bool _initialized = false; var _inputBlocked = false; final _permissions = Map(); bool? _secure; @@ -32,8 +31,6 @@ class FfiModel with ChangeNotifier { get permissions => _permissions; - get initialized => _initialized; - get display => _display; get secure => _secure; @@ -51,12 +48,10 @@ class FfiModel with ChangeNotifier { FfiModel() { Translator.call = translate; clear(); - () async { - await PlatformFFI.init(); - _initialized = true; - print("FFI initialized"); - notifyListeners(); - }(); + } + + Future init() async { + await PlatformFFI.init(); } void updatePermission(Map evt) { diff --git a/lib/pages/connection_page.dart b/lib/pages/connection_page.dart index 84d658cd7..96341ed02 100644 --- a/lib/pages/connection_page.dart +++ b/lib/pages/connection_page.dart @@ -113,9 +113,6 @@ class _ConnectionPageState extends State { } Widget getSearchBarUI() { - if (!FFI.ffiModel.initialized) { - return Container(); - } var w = Padding( padding: const EdgeInsets.fromLTRB(16.0, 8.0, 16.0, 0.0), child: Container( @@ -197,9 +194,6 @@ class _ConnectionPageState extends State { } Widget getPeers() { - if (!FFI.ffiModel.initialized) { - return Container(); - } final size = MediaQuery.of(context).size; final space = 8.0; var width = size.width - 2 * space;