فهرست منبع

feat:键盘插件,调整插件示例工程

hezihao 8 ماه پیش
والد
کامیت
7cd3210570

+ 2 - 1
plugins/keyboard_android/example/android/app/src/main/kotlin/com/atmob/keyboard_android_example/AtmobApplication.kt

@@ -4,6 +4,7 @@ import android.app.Application
 import io.flutter.embedding.engine.FlutterEngine
 import io.flutter.embedding.engine.FlutterEngineCache
 import io.flutter.embedding.engine.dart.DartExecutor
+import com.atmob.keyboard_android_example.config.AppConfig
 
 class AtmobApplication : Application() {
     // 声明一个 FlutterEngine 实例
@@ -19,6 +20,6 @@ class AtmobApplication : Application() {
         }
 
         // 将 FlutterEngine 添加到 FlutterEngineCache,使用指定的 engine ID 进行管理
-        FlutterEngineCache.getInstance().put("my_engine_id", flutterEngine)
+        FlutterEngineCache.getInstance().put(AppConfig.FLUTTER_ENGINE_ID, flutterEngine)
     }
 }

+ 12 - 1
plugins/keyboard_android/example/android/app/src/main/kotlin/com/atmob/keyboard_android_example/MainActivity.kt

@@ -1,5 +1,16 @@
 package com.atmob.keyboard_android_example
 
+import android.content.Context
 import io.flutter.embedding.android.FlutterActivity
+import io.flutter.embedding.engine.FlutterEngine
+import io.flutter.embedding.engine.FlutterEngineCache
+import com.atmob.keyboard_android_example.config.AppConfig
 
-class MainActivity : FlutterActivity()
+class MainActivity : FlutterActivity() {
+    /**
+     * 使用预缓存的引擎
+     */
+    override fun provideFlutterEngine(context: Context): FlutterEngine? {
+        return FlutterEngineCache.getInstance().get(AppConfig.FLUTTER_ENGINE_ID)
+    }
+}

+ 18 - 0
plugins/keyboard_android/example/android/app/src/main/kotlin/com/atmob/keyboard_android_example/config/AppConfig.kt

@@ -0,0 +1,18 @@
+package com.atmob.keyboard_android_example.config
+
+/**
+ * App配置
+ */
+class AppConfig private constructor() {
+    companion object {
+        /**
+         * Flutter引擎Id
+         */
+        const val FLUTTER_ENGINE_ID = "my_engine_id"
+
+        /**
+         * 通道名称,和Flutter端要一一对应
+         */
+        const val FLUTTER_METHOD_CHANNEL_NAME = "keyboard_android"
+    }
+}