【问题标题】:Open custom file extension from google drive on android从 android 上的谷歌驱动器打开自定义文件扩展名
【发布时间】:2012-10-04 19:01:41
【问题描述】:

我正在努力解决如何通过 google drive ui 在我的 android 应用程序中打开自定义文件扩展名。我的文件目前可以通过 Dropbox 或 android 文件资源管理器正常打开。谷歌驱动器似乎只考虑文件的 mime 类型。文件扩展名是我自己的(比如说.xyz),文件在里面是xml。我希望文件在我的应用程序中打开,而不仅仅是注册为打开 text/xml mime 类型的任何应用程序。我怎么能告诉谷歌驱动 .xyz 文件不被视为文本/xml。同样,我不希望我的应用被注册以打开所有文本/xml 文件。

所以最终用户的工作流程是这样的: 1) 打开谷歌云端硬盘安卓应用。 2)点击“somefile.xyz”->该文件将在我的应用程序中打开。目前它在 google drive xml 查看器中打开。 3) 点击“otherfile.xml” -> 该文件不会在我的应用程序中打开。

【问题讨论】:

    标签: android mime-types google-drive-api


    【解决方案1】:

    原来这个问题的答案是你不能那样做。

    使用名为 .xyz 的文件和内部的 xml 格式,您能做的最好的事情就是创建各种意图过滤器来处理其他应用程序识别文件的所有方式。例如,我将以下 mimeTypes 放入我的意图过滤器中。

    • Google 云端硬盘 - 文本/xml
    • ICS Gmail - 文本/纯文本
    • JellyBean Gmail - 应用程序/八位字节流

    【讨论】:

    • 我在从云端硬盘获取要被我的应用识别的自定义文件时遇到了同样的问题,我无法让您的答案为我工作。您能否分享您使用的意图过滤器的完整示例?如果可以的话,谢谢!
    • 嗨@Nathan:你能用一些例子解释一下吗?我在我的应用程序中遇到了上述问题。我想获取通过 G​​oogle 驱动器共享到我的应用程序的文件名的扩展名。
    【解决方案2】:

    您可以将您的文件保存到您的应用程序的私有目录中,这样任何其他应用程序都不会访问它

    通过此链接查看操作方法

    http://developer.android.com/training/basics/data-storage/files.html

    Context.MODE_PRIVATE 和 getFilesDir() 对您有帮助。

    或者,如果您希望其他应用为您做某事并将结果返回给您的应用 完成这个。

    http://developer.android.com/training/basics/intents/sending.html

    http://developer.android.com/training/basics/intents/filters.html

    【讨论】:

    • 我想让用户通过各种云应用管理他们的文件。我的应用程序不创建文件,它只是打开现有文件。我的问题是如何让谷歌驱动器在我的应用程序中打开 .xyz 文件。
    • 更新了我的帖子。我不想让我的应用做某事,其他应用需要看到我的应用应该打开 .xyz 文件。
    • 现在看。如果这没有帮助。我的手举起来了
    • 对不起,没有帮助。我已经在我的应用清单中实现了意图过滤器。这就是为什么当通过 android 的文件浏览器或通过 Dropbox 应用程序点击该文件时,该文件会在我的应用程序中打开。我知道意图过滤器是如何工作的,但我只是不知道如何让谷歌驱动器工作。
    猜你喜欢
    • 1970-01-01
    • 2019-08-28
    • 1970-01-01
    • 1970-01-01
    • 2016-11-12
    • 1970-01-01
    • 1970-01-01
    • 2021-06-01
    • 1970-01-01
    相关资源
    最近更新 更多