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


 
Herramientas
  #1  
Viejo 13/02/13, 13:05:39
Avatar de Kete_
Kete_ Kete_ no está en línea
Miembro del foro
Mensajes: 316
Compra y venta: (1)
 
Fecha de registro: abr 2009
Mensajes: 316
Modelo de smartphone: Nexus 6P
Versión de ROM: 6.0
Tu operador: Pepephone
Mencionado: 6 comentarios
Tagged: 0 hilos
Crear imagen personalizada

Buenas,

Estaba mirando la opción de compartir algunos apartados de mi aplicación como imágenes.... He visto que la opción de capturar la pantalla de la aplicación no es viable, pues hace falta ser root y no estaría disponible para todo el mundo, por lo que he pensado en intentar crear yo una imagen... ¿conoceis algún método / libreria en el que sea mas o menos sencillo el crear una imagen y colocarle un par de textviews e imageviews para hacer las primeras pruebas? ¿O alguna otra idea mejor ?

Gracias por adelantado,

Saludos
Responder Con Cita


  #2  
Viejo 13/02/13, 14:26:28
Avatar de mocelet
mocelet mocelet no está en línea
Desarrollador
Mensajes: 2,203
 
Fecha de registro: may 2011
Localización: Madrid
Mensajes: 2,203
Tu operador: -
Mencionado: 17 comentarios
Tagged: 2 hilos
No hace falta ser root para capturar tu propia aplicación, puedes convertir una View en un Bitmap y hacer lo que quieras con él.

En este hilo pusieron un código: http://www.htcmania.com/showthread.php?t=400847
Responder Con Cita
Gracias de parte de:
  #3  
Viejo 13/02/13, 14:28:23
Avatar de Kete_
Kete_ Kete_ no está en línea
Miembro del foro
Mensajes: 316
Compra y venta: (1)
 
Fecha de registro: abr 2009
Mensajes: 316
Modelo de smartphone: Nexus 6P
Versión de ROM: 6.0
Tu operador: Pepephone
Mencionado: 6 comentarios
Tagged: 0 hilos
Según tengo entendido, el método contentView.getRootView(); necesita de root...
Responder Con Cita
  #4  
Viejo 13/02/13, 14:30:59
Avatar de mocelet
mocelet mocelet no está en línea
Desarrollador
Mensajes: 2,203
 
Fecha de registro: may 2011
Localización: Madrid
Mensajes: 2,203
Tu operador: -
Mencionado: 17 comentarios
Tagged: 2 hilos
Cita:
Originalmente Escrito por Kete_ Ver Mensaje
Según tengo entendido, el método contentView.getRootView(); necesita de root...
O_o Ningún método del API de Android necesita root.

El "RootView" se refiere a la vista madre o raíz de la que dependen todas las demás. También puede ser un view suelto, o un viewgroup. Nada que ver con tener permisos de superusuario o root.
Responder Con Cita
Gracias de parte de:
  #5  
Viejo 13/02/13, 16:31:43
Avatar de Kete_
Kete_ Kete_ no está en línea
Miembro del foro
Mensajes: 316
Compra y venta: (1)
 
Fecha de registro: abr 2009
Mensajes: 316
Modelo de smartphone: Nexus 6P
Versión de ROM: 6.0
Tu operador: Pepephone
Mencionado: 6 comentarios
Tagged: 0 hilos
Cita:
Originalmente Escrito por mocelet Ver Mensaje
O_o Ningún método del API de Android necesita root.

El "RootView" se refiere a la vista madre o raíz de la que dependen todas las demás. También puede ser un view suelto, o un viewgroup. Nada que ver con tener permisos de superusuario o root.
He debido de liar conceptos entonces... Me acuerdo que en su día, para capturar la pantalla tenía una aplicación que si necesitaba root, y de ahi la confusión...

Haré luego la prueba y digo algo, muchas gracias!!
Responder Con Cita
  #6  
Viejo 13/02/13, 20:09:08
Avatar de Kete_
Kete_ Kete_ no está en línea
Miembro del foro
Mensajes: 316
Compra y venta: (1)
 
Fecha de registro: abr 2009
Mensajes: 316
Modelo de smartphone: Nexus 6P
Versión de ROM: 6.0
Tu operador: Pepephone
Mencionado: 6 comentarios
Tagged: 0 hilos
Al final lo he conseguido con el siguiente código:

Código:
    private void getScreen()
    {
        View v = getWindow().getDecorView().findViewById(R.id.prueba);
        View content = v.getRootView();
        content.setDrawingCacheEnabled(true);
        Bitmap bitmap = content.getDrawingCache();
        File file = new File( Environment.getExternalStorageDirectory() + "/test.png");
        try 
        {
            file.createNewFile();
            FileOutputStream ostream = new FileOutputStream(file);
            bitmap.compress(CompressFormat.PNG, 100, ostream);
            ostream.close();
        } 
        catch (Exception e) 
        {
        }
        content.setDrawingCacheEnabled(false);
    }
Muchas gracias!
Responder Con Cita
Respuesta

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


Reglas de Mensajes
You may not post new threads
You may not post replies
You may not post attachments
You may not edit your posts

BB code is On
Las caritas están On
Código [IMG] está On
Código HTML está Off

Saltar a Foro



Hora actual: 05:27:49 (GMT +2)

Cookies settings
Powered by vBulletin™
Copyright © vBulletin Solutions, Inc. All rights reserved.
 
HTCMania: líderes desde el 2007