因此,我设法让我的应用程序打开文件管理器中具有特定扩展名的文件,但是用户是否可以点击Google云端硬盘中的文件并以相同的方式打开它? 我的意思是我知道它可能,其他应用程序可以做到,但是这样做的步骤是什么?我对我的应用程序能够以任何方式操纵Google云端硬盘上的文件不感兴趣,只是为了让Google云端硬盘"发送"像文件管理器那样将文件发送到我的应用程序。
这是我现在使用的目标过滤器,但它不适用于Google云端硬盘中的文件:
<intent-filter>
<action android:name="android.intent.action.VIEW" />
<category android:name="android.intent.category.DEFAULT" />
<category android:name="android.intent.category.BROWSABLE" />
<action android:name="com.google.android.apps.drive.DRIVE_OPEN" />
<data android:scheme="file" />
<data android:mimeType="*/*" />
<data android:pathPattern=".*\\.xz9" />
<data android:host="*" />
</intent-filter>
答案 0 :(得分:1)
我自己测试了我的应用程序。您需要将此intent-filter
添加到您的活动中,以便在用户点击Google云端硬盘应用内的文件时列出您的应用,无论文件的扩展名如何。
<intent-filter>
<action
android:name="android.intent.action.VIEW" />
<action
android:name="android.intent.action.EDIT" />
<category
android:name="android.intent.category.DEFAULT" />
<category
android:name="android.intent.category.BROWSABLE" />
<data
android:scheme="file" />
<data
android:scheme="content" />
<data
android:mimeType="application/plain" />
<data
android:mimeType="application/octet-stream" />
<data
android:mimeType="text/*" />
</intent-filter>