如何打开txt文件打开对话框到特定页面?

时间:2018-04-06 09:30:08

标签: android flutter

我是颤抖的新手,从未使用过滤器。到目前为止,我已经在我的应用程序中工作。但我坚持用对话框打开导入文件到应用程序。我需要用户点击文件时它会转到页面并在文件中显示信息。我正在使用ImportFile插件,它工作正常,但它使用户更难放置他们收到的文件。 我的应用程序列出了打开对话框但是当我点击它时,它只是打开应用程序我希望它打开应用程序并在视图文本页面中查看文本而不是主页

的AndroidManifest.xml     <

intent-filter>
                    <action android:name="android.intent.action.SEND" />
                    <category android:name="android.intent.category.DEFAULT" />
                    <data android:mimeType="text/plain" />
                </intent-filter>
    <intent-filter>
                        <action android:name="android.intent.action.VIEW" />
                        <category android:name="android.intent.category.DEFAULT" />
                        <data android:mimeType="text/plain" />
                        <data android:pathPattern="*.*\\.txt" />
                    </intent-filter>

MainActivity.java

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 MethodChannel.MethodCallHandler() {
            @Override
            public void onMethodCall(MethodCall methodCall, MethodChannel.Result result) {
                if (methodCall.method.contentEquals("getSharedText")) {
                    result.success(sharedText);
                    sharedText = null;
                }
            }
        });
    }


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

提前谢谢

1 个答案:

答案 0 :(得分:0)

FlutterView有一个setInitialRoute方法,可用于在启动时指定非默认路由。