如何使我们的应用程序在;以“打开”;在android中?

如何使我们的应用程序在;以“打开”;在android中?,android,android-intent,intentfilter,Android,Android Intent,Intentfilter,我正在开发一个android应用程序,可以查看或编辑pdf文件 我的应用程序显示在“使用…打开文件”屏幕中。 但当我点击谷歌文件管理器应用程序中的pdf文件时,它会显示“打开”屏幕,而我的应用程序不在那里 这是manifest.xml中的my intent筛选器: <intent-filter android:label="View or edit your pdf files"> <category android:name=&q

我正在开发一个android应用程序,可以查看或编辑pdf文件

我的应用程序显示在“使用…打开文件”屏幕中。

但当我点击谷歌文件管理器应用程序中的pdf文件时,它会显示“打开”屏幕,而我的应用程序不在那里

这是manifest.xml中的my intent筛选器:

<intent-filter android:label="View or edit your pdf files">
            <category android:name="android.intent.category.DEFAULT" />
            <action android:name="android.intent.action.VIEW" />
            <action android:name="android.intent.action.EDIT"/>
            <data android:scheme="content" />
            <data android:mimeType="application/pdf" />
        </intent-filter>


如何使我的应用程序在第二个屏幕截图中的“Open with”(打开方式)屏幕(如Drive Pdf Viewer和WPS Office)中可见?

我已在我的应用程序中应用了您的代码,一切正常。我不知道这里到底发生了什么,但在你的情况下,你可以用大量的动作和数据类型定义意图过滤器(在我看来,类别不是必需的),看看你的应用程序是否可以成为处理意图的候选程序。然后在接收意图的活动中,在onNewIntent()方法中,检查传入意图的所有属性,以查看当前解决方案中缺少的内容。可以在文档中找到所有可能的意图操作(您不需要定义所有这些操作,只需添加最常用的操作并查看结果)

我刚刚通过谷歌应用程序卸载并重新安装了文件,现在它在“打开方式”列表中显示了我的应用程序。无论如何,谢谢你的回复。是的,我使用了你的声明意图过滤器!请参见“我的编辑版本”附带的图像。你试过我告诉你的方式吗?它有效吗?很高兴问题解决了,但有点奇怪!