Quiero desarrollar una aplicación que tome una captura de pantalla de Android ... ¿alguien sabe cómo hacerlo ...? que es similar a la captura de pantalla de koushik duttas ... Pero sin usar root ... y ¿alguien tiene una aplicación de captura de pantalla de koushik dutta que funciona ...? no está funcionando para mí ... por favor házmelo saber ... gracias de antemano.Captura de pantalla en android
Respuesta
Creo que es imposible sin root o el SDK, lo siento.
Me encantaría que se demuestre que estoy equivocado.
No es una aplicación, pero si tiene un cable USB, puede instalar el Android SDK en una PC y tomar capturas de pantalla desde la PC con androidscreencast, sin tener que rootear su teléfono.
Usted puede intentar algo como esto
private RelativeLayout view;
public void onCreate(Bundle savedInstanceState)
{
super.onCreate(savedInstanceState);
setContentView(R.layout.main);
view = (RelativeLayout)findViewById(R.id.relativeView);
View v1 = view.getRootView();
v1.setDrawingCacheEnabled(true);
Bitmap bm = v1.getDrawingCache();
}
Digamos que ha hecho clic en un botón:
findViewById(R.id.button1).setOnClickListener(new OnClickListener() {
@Override
public void onClick(View v) {
Bitmap bitmap = takeScreenshot();
saveBitmap(bitmap);
}
});
Después de que necesita estos dos métodos:
public Bitmap takeScreenshot() {
View rootView = findViewById(android.R.id.content).getRootView();
rootView.setDrawingCacheEnabled(true);
return rootView.getDrawingCache();
}
public void saveBitmap(Bitmap bitmap) {
File imagePath = new File(Environment.getExternalStorageDirectory() + "/screenshot.png");
FileOutputStream fos;
try {
fos = new FileOutputStream(imagePath);
bitmap.compress(CompressFormat.PNG, 100, fos);
fos.flush();
fos.close();
} catch (FileNotFoundException e) {
Log.e("GREC", e.getMessage(), e);
} catch (IOException e) {
Log.e("GREC", e.getMessage(), e);
}
}
¿Debería usar CompressFormat.PNG en lugar de CompressFormat.JPG dado que el archivo que se está guardando es un .png? (o cambie el nombre de archivo a .jpg) – joshaidan
esto es solo un ejemplo básico de código. puede usar lo que quiera :) –
Solo digo que tiene "screenshot.png" como nombre de archivo, pero usa CompressFormat.JPEG como el formato de compresión. Inconsecuencia. – joshaidan
El método view.getDrawingCache() primero intentará recuperar una imagen previamente almacenada en caché. Esto puede causar problemas si desea garantizar que su captura de pantalla esté actualizada. Por ejemplo, si su usuario hace clic en su botón de captura de pantalla, luego cambia la interfaz de usuario y luego vuelve a hacer clic, la segunda captura de pantalla será idéntica a la primera, a menos que limpie la caché. Encuentro el siguiente método más conveniente:
public Bitmap takeScreenshot() {
View rootView = findViewById(android.R.id.content).getRootView();
Bitmap bitmap = Bitmap.createBitmap(rootView.getWidth(), rootView.getHeight(), Bitmap.Config.ARGB_8888);
Canvas canvas = new Canvas(bitmap);
rootView.draw(canvas);
return bitmap;
}
- 1. Android OpenGL Captura de pantalla
- 2. Captura de pantalla de la pantalla actual
- 3. Android tome la captura de pantalla programáticamente
- 4. Captura de pantalla de Android en el dispositivo rooteado
- 5. prevenir la captura de pantalla en las aplicaciones de Android
- 6. Captura de pantalla programática en dispositivo móvil
- 7. Captura de pantalla en Haskell?
- 8. La captura de pantalla COCOS 2D es negra en Android
- 9. Pantalla de captura
- 10. Captura de pantalla de la segunda pantalla
- 11. Toma de captura de pantalla de Android OpenGL
- 12. Captura de pantalla de la toma
- 13. Captura de pantalla de Android a través del código
- 14. Android: pantalla de captura del teléfono como una película
- 15. HTML5 video captura de pantalla
- 16. ¿Cómo tomar la captura de pantalla programáticamente?
- 17. Captura de impresiones de pantalla en Java
- 18. Convertir URL en captura de pantalla (script)
- 19. Captura de pantalla en Python - Cross Platform
- 20. Superposición de pantalla para la captura de pantalla
- 21. Herramienta de captura de pantalla para BlackBerry?
- 22. captura de pantalla de escritorio oculto
- 23. Captura de pantalla del iPhone para ver
- 24. La captura de pantalla ignora algunas ventanas
- 25. Impedir la captura de pantalla con DirectX
- 26. Captura UIScrollView fuera contenido de la pantalla
- 27. capturar la captura de pantalla utilizando .NET
- 28. Captura de pantalla Python 2+ monitores (ventanas)
- 29. Captura de pantalla durante la prueba
- 30. iPad 3 lenta captura de pantalla
HI nichola, gracias por su reply..then hacer u tenía ningún código fuente de trabajo que funciona en el teléfono .. arraigada como el código duttas Koushik no está funcionando para mí?. –