diff --git a/flutter/android/app/src/main/kotlin/com/carriez/flutter_hbb/MainService.kt b/flutter/android/app/src/main/kotlin/com/carriez/flutter_hbb/MainService.kt index 973c2f108..12fd66b16 100644 --- a/flutter/android/app/src/main/kotlin/com/carriez/flutter_hbb/MainService.kt +++ b/flutter/android/app/src/main/kotlin/com/carriez/flutter_hbb/MainService.kt @@ -207,7 +207,7 @@ class MainService : Service() { // keep the config dir same with flutter val prefs = applicationContext.getSharedPreferences(KEY_SHARED_PREFERENCES, FlutterActivity.MODE_PRIVATE) val configPath = prefs.getString(KEY_APP_DIR_CONFIG_PATH, "") ?: "" - FFI.startServer(configPath) + FFI.startServer(configPath, "") createForegroundNotification() } diff --git a/flutter/lib/models/native_model.dart b/flutter/lib/models/native_model.dart index d8e5aa1ee..2886a2300 100644 --- a/flutter/lib/models/native_model.dart +++ b/flutter/lib/models/native_model.dart @@ -198,9 +198,7 @@ class PlatformFFI { await _ffiBind.mainDeviceId(id: id); await _ffiBind.mainDeviceName(name: name); await _ffiBind.mainSetHomeDir(home: _homeDir); - final customClientConfig = ''; - await _ffiBind.mainInit( - appDir: _dir, customClientConfig: customClientConfig); + await _ffiBind.mainInit(appDir: _dir, customClientConfig: ''); } catch (e) { debugPrintStack(label: 'initialize failed: $e'); } diff --git a/src/flutter_ffi.rs b/src/flutter_ffi.rs index dec4bc370..72e435d3f 100644 --- a/src/flutter_ffi.rs +++ b/src/flutter_ffi.rs @@ -2116,12 +2116,16 @@ pub mod server_side { env: JNIEnv, _class: JClass, app_dir: JString, + custom_client_config: JString, ) { log::debug!("startServer from jvm"); let mut env = env; if let Ok(app_dir) = env.get_string(&app_dir) { *config::APP_DIR.write().unwrap() = app_dir.into(); } + if let Ok(custom_client_config) = env.get_string(&custom_client_config) { + crate::read_custom_client(custom_client_config); + } std::thread::spawn(move || start_server(true)); }