我希望宣传一下我的应用程序可以查看PDF文件,这样当从文件管理器中选择PDF文件时就会出现在应用选择器中。
以下是我的意图过滤器的样子:
<activity
android:name=".MainActivity"
android:label="@string/app_name">
<intent-filter>
<action android:name="android.intent.action.MAIN" />
<category android:name="android.intent.category.LAUNCHER" />
</intent-filter>
<intent-filter>
<action android:name="android.intent.action.VIEW" />
<data android:mimeType="application/pdf" />
</intent-filter>
</activity>
每当我从文件管理中打开pdf时,它会自动选择另一个名为Polaris Viewer的pdf应用程序。
在应用程序设置下检查了一遍,确保Polaris不是默认应用程序。上面显示没有设置默认值。
此外,我下载了一个名为Intent Intercept的第三方应用程序。如果我从文件管理器中选择pdf文件,将出现一个应用程序选择器,显示Polaris和Intent Intercept。如果我选择Intent Intercept,则会告诉我Polaris和我的应用程序(Rollout PdfEditor)都匹配该意图。以下是Intent Interceptor的输出:
ACTION:android.intent.action.VIEW
DATA:file:/// storage / sdcard0 / Download / download.pdf TYPE:application / pdf
FLAGS: FLAG_ACTIVITY_FORWARD_RESULT FLAG_ACTIVITY_PREVIOUS_IS_TOP
EXTRAS: EXTRA 1: Class:java.lang.Boolean Key:preview Value:false EXTRA 2: Class:java.lang.String Key:key_filename Value:/ storage / sdcard0 / Download / download.pdf EXTRA 3: Class:android.net.Uri $ HierarchicalUri Key:android.intent.extra.STREAM EXTRA 4: Class:java.lang.Integer Key:sort_order Value:0
2个活动匹配此意图: Polaris Viewer 4.1(com.infraware.polarisviewer4-com.infraware.polarisoffice4.OfficeLauncherActivity) Rollout PdfEditor(com.example.rolloutpdfeditor-com.example.rolloutpdfeditor.MainActivity)>