2017-05-30 1 views
0

J'ai une exigence que je dois prendre une capture d'écran de la fenêtre actuelle dans Android. Ce code me sers,Comment réaliser une capture d'écran avec le contenu de la barre d'état dans l'application android?

View rootView = getWindow().getDecorView().findViewById(android.R.id.content); 
View screenView = rootView.getRootView(); 
screenView.setDrawingCacheEnabled(true); 
Bitmap bitmap = Bitmap.createBitmap(screenView.getDrawingCache()); 
screenView.setDrawingCacheEnabled(false); 

en utilisant ce que je pouvais obtenir la capture d'écran de l'application, mais le contenu de la barre d'état sont manquantes (icône Bluetooth, état de la batterie, etc.). Comment puis-je prendre une capture d'écran de la fenêtre actuelle du téléphone Android par programme (y compris le contenu de la barre d'état)? Est-ce possible?

Répondre

5

Sur Android 5.0 et versions ultérieures, utilisez les API de projection multimédia pour prendre une capture d'écran de l'écran de l'appareil. Voir this sample app, car le processus est un peu impliqué.

Sur les appareils Android plus anciens, il n'existe aucun support pour les captures d'écran programmatiques de l'écran de l'appareil.