是否可以将Flutter应用程序注册为Android Intent Filter并处理Incoming Intents?

Pie*_*ing 18 dart flutter

可以使用Flutter应用程序中的Intent启动另一个Activity:https: //github.com/flutter/flutter/blob/master/examples/widgets/launch_url.dart

import 'package:flutter/widgets.dart';
import 'package:flutter/services.dart';

void main() {
  runApp(new GestureDetector(
    onTap: () {
      Intent intent = new Intent()
        ..action = 'android.intent.action.VIEW'
        ..url = 'http://flutter.io/';
      activity.startActivity(intent);
    },
    child: new Container(
      decoration: const BoxDecoration(
        backgroundColor: const Color(0xFF006600)
      ),
      child: new Center(
        child: new Text('Tap to launch a URL!')
      )
    )
  ));
}
Run Code Online (Sandbox Code Playgroud)

但是当Intent传递给应用程序时,可以使用Flutter Activity Intent服务执行以下操作吗? http://developer.android.com/training/sharing/receive.html

. . .
void onCreate (Bundle savedInstanceState) {
    ...
    // Get intent, action and MIME type
    Intent intent = getIntent();
. . .
Run Code Online (Sandbox Code Playgroud)

Eri*_*del 9

据我所知,目前无法从Dart代码处理传入的Intent.具体来说,处理传入URL的情况由https://github.com/flutter/flutter/issues/357跟踪.

它还可以处理来自Java代码的传入意图,并使用https://flutter.io/platform-services/中记录的HostMessage系统将结果发布到Dart.