他在 Android 上下载了 capturar la pantalla,pero solo es de la aplicaci ó n que lo invoca,es deter no toma la captura deltel é fono。
//Como se invoca el metodo
capturaPantalla(getWindow().getDecorView());
private File capturaPantalla(View v) {
View rootview = v.getRootView();
rootview.setDrawingCacheEnabled(true);
Bitmap bmp = rootview.getDrawingCache();
ByteArrayOutputStream bytes = new ByteArrayOutputStream();
bmp.compress(Bitmap.CompressFormat.JPEG, 40, bytes);
SimpleDateFormat sdf = new SimpleDateFormat("yyyyMMdd-HHmmss", Locale.getDefault());
String fechaComoCadena = sdf.format(new Date());
File file = new File(Environment.getExternalStorageDirectory() + File.separator + fechaComoCadena + ".jpg");
try {
if (file.createNewFile()) {
try (FileOutputStream outputStream = new FileOutputStream(file)) {
outputStream.write(bytes.toByteArray());
outputStream.close();
}
}
}catch (Exception e) {
e.printStackTrace();
}
rootview.setDrawingCacheEnabled(false);
return file;
}
他对每一个人都很满意。
Esta es una respuesta tomada del sitio de SO en ingl é s que almacena la captura en la tarjeta SD:
https://stackoverflow.com/questions/2661536/how-to-programmatically-take-a-screenshot-in-androidPara Guardar el archivo en la tarjeta:
<uses-permission android:name="android.permission.WRITE_EXTERNAL_STORAGE"/>
Y este es el c ó digo:
private void takeScreenshot() {
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() + "/" + now + ".jpg";
// create bitmap screen capture
View v1 = 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);
outputStream.flush();
outputStream.close();
openScreenshot(imageFile);
} catch (Throwable e) {
// Several error may come out with file handling or DOM
e.printStackTrace();
}
}
本站系公益性非盈利分享网址,本文来自用户投稿,不代表码文网立场,如若转载,请注明出处
评论列表(23条)