Обслуживание изображений через контент-провайдера в Android - PullRequest
6 голосов
/ 27 июня 2011

Так что в моем приложении пользователь найдет изображения, вроде концепт-арта в видеоиграх. Я хочу, чтобы эти изображения можно было масштабировать, обмениваться и делать что угодно - например, в приложении галереи. Какой лучший способ показать их? Я думаю правильный способ сделать это - отправить Intent.ACTION_VIEW с типом изображения / png, чтобы любая программа могла его получить ....

Но в этом случае изображения должны быть доступны любому приложению, они не могут быть ресурсом, верно? (Потому что тогда они не будут доступны для других приложений.) Поэтому они должны быть доступны через контент-провайдера ...

Я не думаю Я могу просто вставить их в поставщик содержимого мультимедиа по умолчанию ... потому что тогда их нельзя будет обнаружить через приложение галереи? Я хочу, чтобы пользователь «разблокировал» их со временем. Поэтому мне нужно создать свой собственный контент-провайдер и публиковать изображения через него, верно? Каков наилучший способ сделать контент-провайдера, который может обслуживать изображения (и видео, аудио, возможно контакты или другие типы объектов)?

Ответы [ 4 ]

1 голос
/ 30 июня 2011

Я бы предложил вам создать свой собственный ContentProvider и обрабатывать там всю бизнес-логику.Изображения не будут доступны для приложения галереи, если они не вставлены в поставщик медиа-контента.Вы можете сделать это путем ручной вставки, выполняемой в вашем контент-провайдере, или позволить MediaScanner автоматически находить файлы, если вы храните их в общедоступном каталоге на устройстве и вставляете их с течением времени.

0 голосов
/ 05 июля 2011

Плз перейдите по этой ссылке .... http://developer.android.com/guide/topics/providers/content-providers.html#creating.. это может помочь вам начать вещи .. вам нужно хранить ваши изображения в sqlite db .. и делиться БД с другими приложениями в форме Content Provider,

0 голосов
/ 04 июля 2011

Вы можете скопировать ваши изображения в общедоступный каталог СМИ, затем инициализировать процесс сканирования MediaScanner, и тогда эти изображения будут доступны из приложения Галерея

0 голосов
/ 01 июля 2011

Почему бы вам просто не скопировать изображение на внешнее хранилище?

После копирования вы можете обновить провайдера медиа-контента. Как это сделать, объяснено в этом вопросе .

...