【问题标题】:Serving up Images through a Content Provider in Android在 Android 中通过 Content Provider 提供图像
【发布时间】:2011-07-05 20:52:25
【问题描述】:

所以在我的应用中,用户会找到图像,有点像视频游戏中的概念艺术功能。我希望这些图像能够被缩放、共享和任何编辑——就像在画廊应用程序中一样。展示它们的最佳方式是什么?我认为正确的方法是发送一个带有 image/png 类型的 Intent.ACTION_VIEW,这样任何程序都可以得到它......

但在这种情况下,图像需要可供任何应用程序使用,它们不能是资源,对吧? (因为那样他们就不能被其他应用使用。)所以他们需要通过内容提供者来使用......

我不认为我可以将它们粘贴在默认媒体内容提供程序中...因为这样它们就不会通过图库应用程序被发现吗?我希望用户随着时间的推移“解锁”它们。所以我需要建立自己的内容提供者,并通过它发布图像,对吗?制作可以提供图像(以及视频、音频,也许是联系人或其他类型的对象)的内容提供者的最佳方法是什么?

【问题讨论】:

    标签: android android-contentprovider


    【解决方案1】:

    我建议您创建自己的 ContentProvider 并在那里处理所有业务逻辑。除非将图像插入媒体内容提供程序,否则图库应用程序将无法访问图像。您可以通过在 Content Provider 中执行手动插入来执行此操作,或者如果您将文件存储在设备上的公共目录中,让 MediaScanner 自动查找文件,然后随着时间的推移插入它们。

    【讨论】:

      【解决方案2】:

      为什么不直接将图像复制到外部存储?

      复制后,您可以更新媒体内容提供程序。操作方法在this question中进行了说明。

      【讨论】:

        【解决方案3】:

        您可以将图像复制到公共媒体目录中, 然后初始化 MediaScanner 扫描过程, 然后可以从 Gallery 应用程序访问这些图像

        【讨论】:

          【解决方案4】:

          请通过此链接....http://developer.android.com/guide/topics/providers/content-providers.html#creating..这可以帮助您开始工作..您需要将图像存储在 sqlite db 中..并以 Content Provider 的形式与其他应用程序共享数据库。

          【讨论】:

            猜你喜欢
            • 1970-01-01
            • 2017-05-19
            • 2014-05-05
            • 1970-01-01
            • 2015-01-19
            • 1970-01-01
            • 1970-01-01
            • 2014-04-29
            • 2014-03-30
            相关资源
            最近更新 更多