Programación y Desarrollo para Android Subforo exclusivo para temas de programación de software para PDAs y desarrollo de aplicaciones, interfaces, etc bajo Android

Respuesta
 
Herramientas
  #1  
Viejo 25/05/12, 13:34:44
Array

[xs_avatar]
monchyrcg monchyrcg no está en línea
Miembro del foro
 
Fecha de registro: sep 2011
Localización: Cartagena
Mensajes: 384
Modelo de smartphone: LG Optimus Black
Tu operador: Orange
Foto al MapView

Bueno estoy haciendo una aplicación que te va pintando los puntos por donde andas. Algo simple pero ahora lo que quiero es que cuando le de a un botón hacer una "foto" a ese mapa con mis puntos pintados. Entendéis???

Cuando le de al botón 'Terminar' hacer una foto o como puedo guardar la vista exacta de ese mapa?
Perdón por el tamaño de la foto.
Imágenes Adjuntas
Tipo de Archivo: png 2012-05-25 13.17.52.png (82.9 KB, 30 visitas)

Última edición por monchyrcg Día 25/05/12 a las 15:38:59.
Responder Con Cita


  #2  
Viejo 25/05/12, 15:35:35
Array

[xs_avatar]
mocelet mocelet no está en línea
Desarrollador
 
Fecha de registro: may 2011
Localización: Madrid
Mensajes: 2,203
Tu operador: -

Me ha parecido interesante la idea, parece ser que algo se puede hacer: http://stackoverflow.com/questions/1...t-and-share-it

El resumen, las Views tienen un método que es draw(Canvas c) para dibujarse donde le digas, si le pasas un canvas que has creado tú luego puedes guardar el contenido como imagen tranquilamente o enviarlo.
__________________
El mejor Cuatro en Raya de Android (Hilo en HTCMania, Play Store) ¡Un millón de descargas!
Responder Con Cita
  #3  
Viejo 25/05/12, 15:37:29
Array

[xs_avatar]
monchyrcg monchyrcg no está en línea
Miembro del foro
 
Fecha de registro: sep 2011
Localización: Cartagena
Mensajes: 384
Modelo de smartphone: LG Optimus Black
Tu operador: Orange
Fijate que fácil es:
Código:
public class Pantalla {

    private final View view;
    
    public Pantalla(View root) {
            this.view = root;
    }
    
    public Pantalla(Activity activity) {
            final View contentView = activity.findViewById(android.R.id.content);
            this.view = contentView.getRootView();
    }
    
    public Bitmap snap() {
            Bitmap bitmap = Bitmap.createBitmap(this.view.getWidth(), this.view.getHeight(), Config.ARGB_8888);
            Canvas canvas = new Canvas(bitmap);
            view.draw(canvas);
            return bitmap;
    }
}
Sólo me falta guardar la imagen en una bd y luego recuperla.
Responder Con Cita
  #4  
Viejo 25/05/12, 16:06:51
Array

[xs_avatar]
mocelet mocelet no está en línea
Desarrollador
 
Fecha de registro: may 2011
Localización: Madrid
Mensajes: 2,203
Tu operador: -

Sí señor, cuando sabes qué métodos son todo es fácil

Por cierto, me ha surgido una cuestión con eso de hacer "fotos" a los mapas de Google y guardarlas para tu servicio. Asegúrate de no estar infringiendo las condiciones de uso de Google Maps relativas al almacenamiento, cache y creación de obras derivadas. Así como las propias de Google sobre capturas de pantalla donde aparezca su logo.
__________________
El mejor Cuatro en Raya de Android (Hilo en HTCMania, Play Store) ¡Un millón de descargas!
Responder Con Cita
  #5  
Viejo 25/05/12, 16:12:24
Array

[xs_avatar]
monchyrcg monchyrcg no está en línea
Miembro del foro
 
Fecha de registro: sep 2011
Localización: Cartagena
Mensajes: 384
Modelo de smartphone: LG Optimus Black
Tu operador: Orange
Joder no me asustes. Sabes donde puedo buscar información sobre esto?
Sabes algo de guardar imágenes en BD y recuperarlas.

Última edición por monchyrcg Día 25/05/12 a las 16:25:43.
Responder Con Cita
  #6  
Viejo 25/05/12, 16:46:43
Array

[xs_avatar]
mocelet mocelet no está en línea
Desarrollador
 
Fecha de registro: may 2011
Localización: Madrid
Mensajes: 2,203
Tu operador: -

Pues aquí están:

http://www.google.com/permissions
Son los permisos "generales" de Google, en el apartado de screenshots dice que no hace falta pedir permiso para hacer una captura del buscador... pero que el google maps y los mapas son caso aparte.

https://developers.google.com/maps/terms
Son los términos de uso de Google Maps, mira el apartado "10.1.3 Restrictions against Data Export or Copying.". Básicamente se curan en salud diciendo que no puedes hacer nada con el contenido, ni editarlo, ni guardarlo, ni enviarlo a un servidor.

Aunque los ejemplos que ponen de uso incorrecto van orientados a que no les copies el servicio, también hay que tener en cuenta que los mapas como tal son propiedad del proveedor de mapas y no tienes permiso para almacenarlos y redistribuirlos.

Por eso te digo que te asegures bien de que no lo incumple, aunque el simple hecho de almacenar "el contenido" ya hace que lo incumpla. Lo suyo sería guardar la lista de puntos, el punto central y el nivel de zoom, así puedes reconstruir el mapa cuando quieras sin hacer la captura e incluso cambiar de proveedor de mapas en cualquier momento.

EDIT: Sobre las imágenes en base de datos, no soy muy amigo de guardar información binaria en bases de datos, prefiero guardar las imágenes en un servicio tipo Amazon S3 y guardar la URL en la base de datos. O si es en local, como ficheros directamente.
__________________
El mejor Cuatro en Raya de Android (Hilo en HTCMania, Play Store) ¡Un millón de descargas!
Responder Con Cita
  #7  
Viejo 25/05/12, 17:52:44
Array

[xs_avatar]
monchyrcg monchyrcg no está en línea
Miembro del foro
 
Fecha de registro: sep 2011
Localización: Cartagena
Mensajes: 384
Modelo de smartphone: LG Optimus Black
Tu operador: Orange
Soy incapaz de guardar la imagen en la SD. Ayuda?

Ya esta solucionado. Gracias por todo!

Última edición por monchyrcg Día 25/05/12 a las 18:14:24.
Responder Con Cita
Respuesta

Estás aquí
Regresar   Portal | Indice > Todo sobre Android > Programación y Desarrollo para Android



Hora actual: 19:51:45 (GMT +2)



User Alert System provided by Advanced User Tagging (Lite) - vBulletin Mods & Addons Copyright © 2025 DragonByte Technologies Ltd.

Contactar por correo / Contact by mail / 邮件联系 /