Warning: file_get_contents(/data/phpspider/zhask/data//catemap/4/fsharp/3.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Java 手机未显示我的应用程序以打开txt文件_Java_Android_Android Broadcastreceiver - Fatal编程技术网

Java 手机未显示我的应用程序以打开txt文件

Java 手机未显示我的应用程序以打开txt文件,java,android,android-broadcastreceiver,Java,Android,Android Broadcastreceiver,我对android编程非常陌生,我也不是最好的程序员,以下代码应该基于我的知识来工作。。。这就是问题所在: 我希望我的应用程序显示为在手机上打开txt文件的选项。这就是为什么我创建了一个广播接收器,它在我的清单中指定如下: <receiver android:name="MyBroadcastReceiver" android:enabled="true"> <intent-filter> <action an

我对android编程非常陌生,我也不是最好的程序员,以下代码应该基于我的知识来工作。。。这就是问题所在: 我希望我的应用程序显示为在手机上打开txt文件的选项。这就是为什么我创建了一个广播接收器,它在我的清单中指定如下:

<receiver android:name="MyBroadcastReceiver" android:enabled="true">
            <intent-filter>
                <action android:name="android.intent.action.ACTION_VIEW"/>
                <action android:name="android.intent.action.ACTION_EDIT"/>
                <action android:name="android.intent.action.ACTION_PICK"/>
                <category android:name="android.intent.category.DEFAULT"/>
                <category android:name="android.intent.category.BROWSABLE"/>

                <data android:scheme="file"/>
                <data android:mimeType="text/plain"/>
                <data android:pathPattern=".*\\.txt"/>
                <data android:host="*"/>
            </intent-filter>
        </receiver>
public class MyBroadcastReceiver extends BroadcastReceiver {

    @Override
    public void onReceive(Context context, Intent intent) {
        Intent intentNoteActivity = new Intent(context, NoteActivity.class);
        intentNoteActivity.putExtra("URI", intent.getData());
        context.startActivity(intentNoteActivity);
    }
}
但是,如果我试图在安装应用程序的手机上打开txt文件,它不会显示我的应用程序。我做错了什么

这就是我创建广播接收器的原因

BroadcastReceiver不用于以这种方式打开文档。一项活动可以做到这一点

但是,如果我试图在安装应用程序的手机上打开txt文件,它不会显示我的应用程序

这是因为其他应用程序将使用startActivity,而不是sendBroadcast,并带有操作视图意图

创建一个活动并使用您的。它应该可以与一些应用程序一起使用,尽管不是很多。删除和,并添加,将有助于提高兼容性。

有关详细信息,请参阅