Skip to content

Instantly share code, notes, and snippets.

@mahdi-malv
Created November 10, 2018 08:25
Show Gist options
  • Save mahdi-malv/88916fefaf04df2e6be793ab83667a2e to your computer and use it in GitHub Desktop.
Save mahdi-malv/88916fefaf04df2e6be793ab83667a2e to your computer and use it in GitHub Desktop.
Take screenshot from screen and save it.
public static void takeScreenshot(Activity activity) {
Date now = new Date();
android.text.format.DateFormat.format("yyyy-MM-dd_hh:mm:ss", now);
try {
// image naming and path to include sd card appending name you choose for file
String mPath = Environment.getExternalStorageDirectory().toString() + "/Screenshot_" + now + ".jpg";
// create bitmap screen capture
View v1 = activity.getWindow().getDecorView().getRootView();
v1.setDrawingCacheEnabled(true);
Bitmap bitmap = Bitmap.createBitmap(v1.getDrawingCache());
v1.setDrawingCacheEnabled(false);
File imageFile = new File(mPath);
FileOutputStream outputStream = new FileOutputStream(imageFile);
int quality = 100;
bitmap.compress(Bitmap.CompressFormat.JPEG, quality, outputStream);
Toast.makeText(activity, "Successful screenshot named: " + mPath, Toast.LENGTH_SHORT).show();
outputStream.flush();
outputStream.close();
} catch (Throwable e) {
// Several error may come out with file handling or DOM
e.printStackTrace();
}
}
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment