在android中截取当前运行的屏幕截图?

时间:2012-07-11 09:14:59

标签: android cordova phonegap-plugins

我希望代码片段能够拍摄当前屏幕的快照,并通过使用phonegap android按下按钮将其存储在SD卡中。如果有人知道,请帮助我。提前谢谢。

1 个答案:

答案 0 :(得分:2)

使用以下代码:

    String mPath = Environment.getExternalStorageDirectory().toString() + "/" + ACCUWX.IMAGE_APPEND;   

// create bitmap screen capture
Bitmap bitmap;
View v1 = mCurrentUrlMask.getRootView();
v1.setDrawingCacheEnabled(true);
bitmap = Bitmap.createBitmap(v1.getDrawingCache());
v1.setDrawingCacheEnabled(false);

OutputStream fout = null;
imageFile = new File(mPath);

try {
    fout = new FileOutputStream(imageFile);
    bitmap.compress(Bitmap.CompressFormat.JPEG, 90, fout);
    fout.flush();
    fout.close();

} catch (FileNotFoundException e) {
    // TODO Auto-generated catch block
    e.printStackTrace();
} catch (IOException e) {
    // TODO Auto-generated catch block
    e.printStackTrace();
}

此处MyView是我们需要在屏幕中包含的视图。您也可以通过这种方式从任何View获取DrawingCache(没有getRootView())。

以下是Android的代码,但对于phoneGap,您必须为此代码段制作插件。感谢