通过Android中的内容提供商提供图像

时间:2011-06-26 23:25:12

标签: android android-contentprovider

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

但在这种情况下,图像需要可供任何应用程序使用,它们不能成为资源,对吧? (因为这样他们就无法使用其他应用。)因此,他们需要通过内容提供商提供...

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

4 个答案:

答案 0 :(得分:1)

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

答案 1 :(得分:0)

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

复制后,您可以更新媒体内容提供商。 this question中解释了如何做到这一点。

答案 2 :(得分:0)

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

答案 3 :(得分:0)

Plz浏览此链接.... http://developer.android.com/guide/topics/providers/content-providers.html#creating ..这可以帮助您启动这些事情..您需要将您的图像存储在sqlite db ..并以内容的形式与其他应用程序共享数据库供应商。