From 7b89016c25d0b91f4234c6b345277dab74d40239 Mon Sep 17 00:00:00 2001 From: open-trade Date: Thu, 5 Aug 2021 01:38:20 +0800 Subject: [PATCH] ios works, but icon wierd --- flutter_hbb/lib/model.dart | 26 +++++++++++++++++++++----- 1 file changed, 21 insertions(+), 5 deletions(-) diff --git a/flutter_hbb/lib/model.dart b/flutter_hbb/lib/model.dart index 0dbd3182c..6986a28ff 100644 --- a/flutter_hbb/lib/model.dart +++ b/flutter_hbb/lib/model.dart @@ -49,6 +49,7 @@ class FfiModel with ChangeNotifier { () async { await FFI.init(); _initialized = true; + print("FFI initialized"); notifyListeners(); }(); } @@ -628,6 +629,7 @@ class FFI { final dylib = Platform.isAndroid ? DynamicLibrary.open('librustdesk.so') : DynamicLibrary.process(); + print('initializing FFI'); _getByName = dylib.lookupFunction('get_by_name'); _setByName = dylib.lookupFunction, Pointer), F3>( @@ -636,10 +638,22 @@ class FFI { .lookupFunction), F4>('free_rgba'); _getRgba = dylib.lookupFunction('get_rgba'); _dir = (await getApplicationDocumentsDirectory()).path; - DeviceInfoPlugin deviceInfo = DeviceInfoPlugin(); - AndroidDeviceInfo androidInfo = await deviceInfo.androidInfo; - final name = '${androidInfo.brand}-${androidInfo.model}'; - final id = androidInfo.id; + String id = 'NA'; + String name = 'Flutter'; + try { + DeviceInfoPlugin deviceInfo = DeviceInfoPlugin(); + if (Platform.isAndroid) { + AndroidDeviceInfo androidInfo = await deviceInfo.androidInfo; + name = '${androidInfo.brand}-${androidInfo.model}'; + id = androidInfo.id.hashCode.toString(); + } else { + IosDeviceInfo iosInfo = await deviceInfo.iosInfo; + name = iosInfo.utsname.machine; + id = iosInfo.identifierForVendor.hashCode.toString(); + } + } catch (e) { + print(e); + } setByName('info1', id); setByName('info2', name); setByName('init', _dir); @@ -730,7 +744,9 @@ void initializeCursorAndCanvas() async { FFI.canvasModel.update(xCanvas, yCanvas, scale); } -final bool isCn = Platform.localeName.endsWith('CN'); +final locale = Platform.localeName; +final bool isCn = + locale.startsWith('zh') && (locale.endsWith('CN') || locale.endsWith('SG')); final langs = >{ 'cn': {