【问题标题】:How can I run Kotlin function in Flutter?如何在 Flutter 中运行 Kotlin 函数?
【发布时间】:2021-10-02 09:44:01
【问题描述】:

我遵循了 Flutter 在 https://flutter.dev/docs/development/platform-integration/platform-channels 中所做的操作,但没有成功。我检查了其他人的工作,仍然没有。那你们有什么建议呢?

class MainActivity: FlutterFragmentActivity() {

override fun onCreate(savedInstanceState: Bundle?) {
    super.onCreate(savedInstanceState)
    GeneratedPluginRegistrant.registerWith(this.getFlutterEngine()!!)
}


private val CHANNEL = "samples.flutter.dev/battery"

override fun configureFlutterEngine(@NonNull flutterEngine: FlutterEngine) {
    super.configureFlutterEngine(flutterEngine)
    MethodChannel(flutterEngine.dartExecutor.binaryMessenger, CHANNEL).setMethodCallHandler {
        call, result ->
        if (call.method == "MyMethod"){
            result.success("Hello Kotlin")
        }
    }
}}

这就是flutter本身的方法

static const platform = 
const MethodChannel("samples.flutter.dev/battery");


Future<void> MyMethod() async {
String value = "";

try{
  value = await platform.invokeMethod("MyMethod");
}
catch(e){
  print(e);
}
print(value);
}

拜托,我已经在互联网上尝试了所有方法,但都没有奏效。我请求你帮忙处理我的案子。

【问题讨论】:

    标签: flutter android-studio kotlin


    【解决方案1】:

    我刚刚解决了我的问题。它在 AndroidManifest.xml 中

    原来是这样

     android:name="io.flutter.embedding.android.FlutterFragmentActivity"
    

    我改回了

       android:name=".MainActivity"
    

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2021-05-03
      • 2020-08-17
      • 1970-01-01
      • 2019-01-07
      相关资源
      最近更新 更多