MainActivity.kt 1.3 KB

123456789101112131415161718192021222324252627282930313233343536373839404142
  1. package com.atmob.keyboard
  2. import android.content.Context
  3. import android.content.Intent
  4. import android.os.Handler
  5. import android.os.Looper
  6. import com.atmob.keyboard_android.constant.PluginConfig
  7. import com.atmob.keyboard_android.util.jump.JumpHostAppPageUtil
  8. import io.flutter.embedding.android.FlutterActivity
  9. import io.flutter.embedding.engine.FlutterEngine
  10. import io.flutter.embedding.engine.FlutterEngineCache
  11. class MainActivity : FlutterActivity() {
  12. private val mMainHandler = Handler(Looper.getMainLooper())
  13. /**
  14. * 使用预缓存的引擎
  15. */
  16. override fun provideFlutterEngine(context: Context): FlutterEngine? {
  17. return FlutterEngineCache.getInstance().get(PluginConfig.FLUTTER_ENGINE_ID)
  18. }
  19. override fun configureFlutterEngine(flutterEngine: FlutterEngine) {
  20. super.configureFlutterEngine(flutterEngine)
  21. // 执行路由跳转
  22. JumpHostAppPageUtil.jumpAppPage(intent, flutterEngine)
  23. }
  24. override fun onNewIntent(intent: Intent) {
  25. super.onNewIntent(intent)
  26. setIntent(intent)
  27. // 执行路由跳转
  28. flutterEngine?.let {
  29. JumpHostAppPageUtil.jumpAppPage(intent, it)
  30. }
  31. }
  32. override fun onDestroy() {
  33. super.onDestroy()
  34. mMainHandler.removeCallbacksAndMessages(null)
  35. }
  36. }