Ich möchte eine Anwendung entwickeln, die Screenshot von Android-Bildschirm nehmen .. weiß jemand, wie es geht ..? das ist ähnlich wie koushik duttas screen shot..Aber mit root verwenden .. und hat jemand koushik dutta screenshot application das funktioniert ..? funktioniert nicht für mich .. bitte lassen Sie es mich wissen..danks im Voraus.Screen Capture in Android
Antwort
Ich denke, es ist unmöglich, ohne root oder das SDK, sorry.
Ich würde gerne falsch bewiesen werden.
Keine App, aber wenn Sie ein USB-Kabel haben, können Sie das Android SDK auf einem PC installieren und Screenshots vom PC mit androidscreencast erstellen, ohne das Telefon rooten zu müssen.
Sie können versuchen, so etwas wie dieses ist
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();
}
Lassen Sie sagen, dass Sie auf eine Schaltfläche geklickt:
findViewById(R.id.button1).setOnClickListener(new OnClickListener() {
@Override
public void onClick(View v) {
Bitmap bitmap = takeScreenshot();
saveBitmap(bitmap);
}
});
Danach können Sie diese beiden Methoden benötigen:
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);
}
}
Sollten Sie CompressFormat.PNG anstelle von CompressFormat.JPG verwenden, da die gespeicherte Datei ein .png ist? (oder ändern Sie den Dateinamen zu .jpg) – joshaidan
Dies ist nur ein einfaches Beispiel für Code. Sie können verwenden, was immer Sie wollen :) –
Ich sage nur, Sie haben "screenshot.png" als Dateiname, aber mit CompressFormat.JPEG als das Komprimierungsformat. Inkonsistenz. – joshaidan
Verfahren view.getDrawingCache() versucht zunächst, ein zuvor zwischengespeichertes Bild abzurufen. Dies kann zu Problemen führen, wenn Sie sicherstellen möchten, dass Ihr Screenshot auf dem neuesten Stand ist. Wenn Ihr Benutzer beispielsweise auf die Schaltfläche "Screenshot" klickt, die Benutzeroberfläche ändert und dann erneut darauf klickt, ist der zweite Screenshot identisch mit dem ersten, es sei denn, Sie löschen den Cache. Ich finde das folgende Verfahren bequeme:
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. Screen Capture-Steuerelement
- 2. Screen Capture Feature überschreibt
- 3. D3D11 Screen Capture in C++
- 4. Screen-Capture-Video in iOS programmatisch
- 5. Android Studio 0.8 Beta Screen Capture/Videoaufnahme unterbrochen
- 6. vb.net Screen Capture von form2 mit form1
- 7. VB.NET Window Screen Capture (ALT + DRUCKBILDSCHIRM)
- 8. Screen Capture C# ASP.NET Web-Anwendung
- 9. Java Applet Screen Capture zu einem Video
- 10. Shop ein Screen-Capture (BitBlt) in einem Speicherpuffer über IdTCPClient
- 11. Screen Capture in einer Engine ergibt das umgekehrte Spiegelbild
- 12. Blank Screen Loader in Android
- 13. Anpassen android Splash-Screen
- 14. Splash-Screen Android
- 15. Android Splash Screen Mittelbil
- 16. Android Splash Screen Dauer
- 17. Android Splash Screen Bug
- 18. android screen categories
- 19. Android Video Capture-Beispielanwendung
- 20. Android - Capture Foto
- 21. Android Facebook Lock Screen Benachrichtigung
- 22. Android Wear: Programmatically Wake Screen
- 23. Android Splash Screen ist geschrumpft
- 24. Native Android Splash Screen reagieren
- 25. Android: "Splash-Screen" nur einmal
- 26. Programmatisch machen App FULL SCREEN in Android
- 27. Leerer Bildschirm vor Splash-Screen in Android
- 28. Farbe die Statusleiste in Android-Splash-Screen
- 29. Android - Capture Video mit Wasserzeichen
- 30. Android Webview Capture Link klickt
HALLO nichola, Dank für Ihre reply..then tut u hatte jeden Arbeits Quellcode, der verwurzeltes Telefon arbeitet an .. wie der koushik Duttas Code ist nicht für mich arbeiten?. –