简体   繁体   English

如何将数据列表从Flutter发送到Android

[英]How to send data List from flutter to android

I worked on how to send the string from flutter to android. 我致力于如何将字符串从flutter发送到android。

Now I want to send a list from flutter to android. 现在我想将列表从flutter发送到android。

Can anyone suggest a way to send a list? 谁能建议一种发送列表的方法?

code: 码:

flutter: 扑:

const platform = const MethodChannel('app.channel.shared.data');
    var sharedData = await platform.invokeMethod("");

Android: Android:

public class MainActivity extends FlutterActivity {
    Intent in;
    private String sharedText;

    @Override
    protected void onCreate(Bundle savedInstanceState) {
        super.onCreate(savedInstanceState);
        GeneratedPluginRegistrant.registerWith(this);
        Intent intent = getIntent();
        String action = intent.getAction();
        String type = intent.getType();

        if (Intent.ACTION_SEND.equals(action) && type != null) {
            if ("text/plain".equals(type)) {
                handleSendText(intent); // Handle text being sent
            }
        }

        new MethodChannel(getFlutterView(), "app.channel.shared.data").setMethodCallHandler(
            new MethodCallHandler() {
                @Override
                public void onMethodCall(MethodCall call, MethodChannel.Result result) {
                    if (call.method.contentEquals("getSharedText")) {
                        Log.v("Tag_data",""+call.method);
                        Intent myIntent = new Intent(MainActivity.this, PrinterActviity.class);
                        MainActivity.this.startActivity(myIntent);
                    }
                }
            });
    }

    void handleSendText(Intent intent) {
        sharedText = intent.getStringExtra(Intent.EXTRA_TEXT);
    }
}

My list: 我的列表:

My List looks like this. 我的列表如下所示。

List<Map<String, dynamic>> users = [
    { "name": "john" , "age": "17"},
    { "name": "jeoohn" , "age": "57"},
    { "name": "jreohn" , "age": "37"},

    ];

Here example - I send geo coords as list of elements 这里的例子-我发送地理坐标作为元素列表

In Flutter: 在Flutter中:

await platform.invokeMethod('showLocation', [event.location[0], event.location[1], event.title])

In Android: 在Android中:

if (call.method == MAP_METHOD) {
            val args = (call.arguments) as List<Any>
            startActivity(Intent(Intent.ACTION_VIEW, Uri.parse("geo:${args[0]}, ${args[1]}?z=23&q=${args[0]},${args[1]}(${args[2]})")))
            result.success(null)
        }

you can make something like this 你可以做这样的事情

in flutter part 在颤抖的部分

  startChannle() {
    BasicMessageChannel myChannel =
        BasicMessageChannel<String>('users', StringCodec());

    List<Map<String, dynamic>> users = [
      {"name": "john", "age": "17"},
      {"name": "jeoohn", "age": "57"},
      {"name": "jreohn", "age": "37"},
    ];
    myChannel.send(json.encode(users));
  }

in android part 在android部分

  private fun initMyChannel() {
        myChannel = BasicMessageChannel<String>(flutterView, "users", StringCodec.INSTANCE)
        myChannel.setMessageHandler { message, _ ->
            Log.i("MSG", "Received: $message")
            val received = JSONObject(message)
            // parse json data 
        }
    }

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

相关问题 如何正确地将数据从Android发送到Flutter? - How to send data from Android to Flutter properly? 如何从本机(Android)向Flutter发送数据 - How to send data to Flutter from native (Android) 如何从 flutter 中的 flutter 代码向 android 本机代码发送数据 - How to send data to the android native code from the flutter code in flutter 如何将数据从列表适配器发送到 android 中的活动? - How to send data from list adapter to activity in android? 在android onMethodCall()中打开一个活动后,从android发送数据到flutter - Send data from android to flutter after opening an activity in android onMethodCall() 如何从带有数据的 flutter 模块返回到本机应用程序? 我知道如何将数据从 android 发送到 flutter 模块! 我只想反转 - How to back from flutter module with data to native app ? I know how to send data from android to the flutter module! I just wanna the reverse Android:如何将数据从服务器发送到android而没有来自android的请求? - Android:How to send data from server to android with no request from the android? 如何将数据从 android 模块传递到 flutter 中的 flutter 模块 - How to pass data from android module to flutter module in flutter 如何从android发送数据到服务器 - how to send data from android to server 如何将数据从Python发送到Android App - How to send data from Python to Android App
 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM