Warning: file_get_contents(/data/phpspider/zhask/data//catemap/8/meteor/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
Android 当选择文件时,从Google Drive获取意图_Android_Android Intent_Google Drive Android Api - Fatal编程技术网

Android 当选择文件时,从Google Drive获取意图

Android 当选择文件时,从Google Drive获取意图,android,android-intent,google-drive-android-api,Android,Android Intent,Google Drive Android Api,自从第一次为Android 2.3开发以来,我的应用程序使用用户PC上生成的SQLite文件,它使用了以下意图,以告知用户已在Dropbox或Drive中选择了其中一个文件。(事实上,我在清单中有几个类似的意图来支持不同级别的目录层次结构。): 当应用程序收到此意图时,它会使用它打开文件并将其复制到主文件存储中自己的特定目录中。这是很久以前的事了,我不记得我是从哪里得到这个结构的,但到目前为止它一直在工作。然而,从Android 6.0开始,它不再适用于Google Drive,我收到一条“

自从第一次为Android 2.3开发以来,我的应用程序使用用户PC上生成的SQLite文件,它使用了以下意图,以告知用户已在Dropbox或Drive中选择了其中一个文件。(事实上,我在清单中有几个类似的意图来支持不同级别的目录层次结构。):


当应用程序收到此意图时,它会使用它打开文件并将其复制到主文件存储中自己的特定目录中。这是很久以前的事了,我不记得我是从哪里得到这个结构的,但到目前为止它一直在工作。然而,从Android 6.0开始,它不再适用于Google Drive,我收到一条“不支持文件类型”的消息。Dropbox还可以


我认为Drive发布的意图最近发生了变化。有人知道它现在是如何实现的,这样我就可以提供正确的意向过滤器了吗?

我发现了一个名为意向拦截的应用程序,它可以让我完全按照名称的意思来做:在驱动器应用程序中选择我的文件时拦截驱动器发出的意向。根据其他驱动器文档,这完全不是我所期望的,但至少我现在已经解决了这一部分,并且可以获得一个内容URI来使用。

“我收到一条“不支持的文件类型”消息”--从哪里得到?你的意思是驱动器没有找到你的活动?如果是这样,我会假设驱动器正在通过
ContentProvider
content
方案使文件可用。是的,消息来自驱动器应用程序,这是进行文件选择的地方。驱动器不再支持file://URI。请参见此处:。我还能够找到如何使用内容URI来正确传输数据。
    <intent-filter>
        <action android:name="android.intent.action.VIEW" />
        <category android:name="android.intent.category.DEFAULT" />
        <category android:name="android.intent.category.BROWSABLE" />
        <data android:scheme="file"
                android:mimeType="application/octet-stream"
                android:pathPattern=".*\\..*\\..*\\..*\\..*\\..*\\.gedstar"
                android:host="*" />
    </intent-filter>