2012-12-28 83 views
6

看来Google Drive有一个响应GET_CONTENT操作的活动,但它不会被导出。Google Drive + ACTION_GET_CONTENT

是否有另一种方法可以在我的应用程序中将内容从Drive中取出,而无需从启动进程Drive?自己编写选取器/选择器活动并使用后端API列出并打开文件显然是一种选择,但我更愿意使用Drive自己的UI来执行此操作。

+0

呃。我已经向Google云端硬盘团队报告了这一点:https://productforums.google.com/d/topic/drive/siSKHXdE-ao/discussion – CommonsWare

+0

谢谢,马克。在最新版本的云端硬盘(1.1.470.15)上,云端硬盘小组似乎已将相应的活动标记为enabled =“false”。这至少可以解决SecurityException,但对于实际启用我正在拍摄的工作流程没有任何帮助。 – tophyr

+0

'android:enabled =“false”'可能是暂时的,等待应用程序先配置:http://commonsware.com/blog/2012/12/26/disable-unusable-activities.html – CommonsWare

回答

2

Google云端硬盘只支持GET_CONTENT的活动来支持API 19之前的设备。根据Storage Access Framework guide,必须在API 19+设备上禁用GET_CONTENT活动,以防止与DocumentsProvider重复。

的存储访问架构的全部意义在于,它提供了一个单一的用户界面(启动时使用startActivityGET_CONTENTOPEN_DOCUMENT,或OPEN_DOCUMENT_TREE意图),允许用户从挑选任何来源,包括本地存储, Google云端硬盘或任何其他应用。然后,您的应用程序可以使用完全相同的代码访问选定的文件。

没有允许您指定只显示单个根(例如Google Drive)的功能。用户将始终可以从任何可用的根中进行选择。

+1

只是一个供参考......您的回答是针对2012年以前的问题,在API级别19存在之前。你今天的回答当然看起来是正确的,但从2012年起的问题是完全不同的问题。 – CommonsWare