private
void
GetandSaveCurrentImage()
{
WindowManager
windowManager = getWindowManager();
Display
display = windowManager.getDefaultDisplay();
int
w = display.getWidth();
int
h = display.getHeight();
Bitmap
Bmp = Bitmap.createBitmap( w, h, Config.ARGB_8888 );
View
decorview =
this
.getWindow().getDecorView();
decorview.setDrawingCacheEnabled(
true
);
Bmp
= decorview.getDrawingCache();
String
SavePath = getSDCardPath()+
"/AndyDemo/ScreenImage"
;
try
{
File
path =
new
File(SavePath);
String
filepath = SavePath +
"/Screen_1.png"
;
File
file =
new
File(filepath);
if
(!path.exists()){
path.mkdirs();
}
if
(!file.exists()) {
file.createNewFile();
}
FileOutputStream
fos =
null
;
fos
=
new
FileOutputStream(file);
if
(
null
!= fos) {
Bmp.compress(Bitmap.CompressFormat.PNG,
90
,
fos);
fos.flush();
fos.close();
Toast.makeText(CircleShareActivity.
this
,
"截屏文件已保存至SDCard/AndyDemo/ScreenImage/下"
,
Toast.LENGTH_LONG).show();
}
}
catch
(Exception e) {
e.printStackTrace();
}
}
/**
*
获取SDCard的目录路径功能
*
@return
*/
private
String getSDCardPath(){
File
sdcardDir =
null
;
boolean
sdcardExist = Environment.getExternalStorageState().equals(android.os.Environment.MEDIA_MOUNTED);
if
(sdcardExist){
sdcardDir
= Environment.getExternalStorageDirectory();
}
return
sdcardDir.toString();
}