当前位置: 代码迷 >> Android >> Android 获取屏幕截图 跟保存到本地的sd卡路径下
  详细解决方案

Android 获取屏幕截图 跟保存到本地的sd卡路径下

热度:64   发布时间:2016-04-28 05:18:13.0
Android 获取屏幕截图 和保存到本地的sd卡路径下
/**     * 获取和保存当前屏幕的截图     */    private void GetandSaveCurrentImage()      {          //1.构建Bitmap          WindowManager windowManager = getWindowManager();          Display display = windowManager.getDefaultDisplay();          int w = display.getWidth();          int h = display.getHeight();          Bitmap Bmp = Bitmap.createBitmap( w, h, Config.ARGB_8888 );              //2.获取屏幕          View decorview = this.getWindow().getDecorView();           decorview.setDrawingCacheEnabled(true);           Bmp = decorview.getDrawingCache();           String SavePath = getSDCardPath()+"/AndyDemo/ScreenImage";        //3.保存Bitmap           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;        //判断SDCard是否存在        boolean sdcardExist = Environment.getExternalStorageState().equals(android.os.Environment.MEDIA_MOUNTED);        if(sdcardExist){            sdcardDir = Environment.getExternalStorageDirectory();        }        return sdcardDir.toString();    }

1楼xxm2828281小时前
//1.构建Bitmap n WindowManager windowManager = getWindowManager(); n Display display = windowManager.getDefaultDisplay(); n int w = display.getWidth(); n int h = display.getHeight(); n n Bitmap Bmp = Bitmap.createBitmap( w, h, Config.ARGB_8888 ); n这段话好像没用,
  相关解决方案