通过文件扩展名在我的Android应用中打开Goog​​le云端硬盘中的文件

时间:2016-04-17 16:40:38

标签: android

因此,我设法让我的应用程序打开文件管理器中具有特定扩展名的文件,但是用户是否可以点击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>

1 个答案:

答案 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>