Otra forma de obtener el flujo de bits para la imagen es a través de la API de Picasa ....
la aplicación de algunos de asignación al contenido uri proveedor ...
contenido: //com.google.android. gallery3d.provider/picasa/artículo/5703943700733980450
se puede asignar a una API de Picasa como el siguiente:
item => photoid nombre ?? albumid ??
picasaweb.google.com/data/entry/api/user/$NAME/albumid/nnnn/photoid/nnnn
anterior es una solicitud de API para la entrada de foto - ver documentos de Picasa para obtener más información.
API requiere
Nombre ALBUMID photoid
Nombre creo que u puede obtener de la cuenta en el teléfono. AlbumID es complicado porque el valor de/item/node en el proveedor de contenido no es un GUID que pueda usar una relación para inferir el álbum en el que está. No creo ... AFAIK en picasa, necesitas el usuario, álbum, foto tupla para obtener una referencia a una entrada de foto y la entrada de fotos tiene la dirección URL de la foto grande en el elemento de API:
"medios $ grupo": { "medios de $ content": [ { "url" :
Puede tomar el valor text del atributo url y solicitarlo mediante http (s) si la visibilidad del álbum es pública.La respuesta es la secuencia binaria del JPG.
php picasa api show large image
ver la respuesta aceptada en el enlace anterior para más detalles sobre cómo obtener la imagen que desea de la API de Picasa.
Utilizando uno de mi propio contenido del URI en un ejemplo ...
contenido: //com.google.android.gallery3d.provider/picasa/item/5703943700733980450
no está disponible en la caché por lo cómo obtener la imagen?
así el nombre de la cuenta es 'rowntreerob' y sé que photoid 5703943700733980450 pertenece a ALBUMID 5703943611411433905.
Por lo tanto, hago una solicitud de API para la entrada
https://picasaweb.google.com//data/entry/api/user/rowntreerob/albumid/5682316071017984417/photoid/5682316083381958690?fields=media%3Agroup%2Fmedia%3Athumbnail%5B%40url%5D%2Cmedia%3Agroup%2Fmedia%3Acontent%5B%40url%5D&alt=json
y compruebe la respuesta para el valor de texto de
"medios $ grupo": { "medios de $ content": [{ "url":
valor = https://lh3.googleusercontent.com/-_FFMNGPU1TQ/TtukXyN4eCI/AAAAAAAACso/EzPmut2iKVQ/DSC01612.JPG
Puedo hacer una solicitud de imagen foto usando el valor anterior y tengo la imagen.
La Galería 3D aplicación también tiene el código que podría desembolsar porque dondequiera que se detecta un 'toque' en uno de la lista de miniaturas, delega a la interfaz ContentProvider a 'conseguir' la BMP. Creo que esta interfaz encapsula todas las sangrientas nits de implementación mencionadas anteriormente. Al pedir al ContentProvider que produzca el BMP, ¿el desarrollador no tiene que preocuparse por el sabor de la implementación? En thumbtouch, Gallery3d puede simplemente pedirle al proveedor que devuelva el BMP y es la instancia del proveedor que es responsable de resolver los diversos estados del caché y si se requerirán llamadas de red para devolver el BMP.
finalmente terminó con una solución clásica ... Mediante el uso de Document.util, que cubre toda autoridad: - http://stackoverflow.com/a/30453641/1384010 –