Android屏幕截图
2015-12-29 15:18
495 查看
public class MainActivity extends Activity { private static final String SavePATH = Environment.getExternalStorageDirectory().getAbsolutePath()+"/simple"; @Override protected void onCreate(Bundle savedInstanceState) { super.onCreate(savedInstanceState); setContentView(R.layout.activity_main); } public void buttonClick(View v) { GetandSaveCurrentImage(); } 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();//Returns the top-level window decor view-返回窗口顶层的视图 decorview.setDrawingCacheEnabled(true);//允许图形缓存 Bmp = decorview.getDrawingCache();//返回一个非比例的位图 // 3.保存Bitmap try { File path = new File(SavePATH); // 文件 String filepath = SavePATH + "/Screen_simple_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(MainActivity.this, "截屏文件已保存至SDCard/ADASiteMaps/ScreenImage/下", Toast.LENGTH_LONG).show(); } } catch (Exception e) { e.printStackTrace(); } } }
权限
<uses-permission android:name="android.permission.WRITE_EXTERNAL_STORAGE"/>
相关文章推荐
- Android 阅读源码,让你彻底理解Handler、Message、Looper之间的关系
- android通过蓝牙连接打印机实现格式化打印(二)
- Android studio 无法启动安卓模拟器Cannot launch AVD in emulator. Output: emulator: WARNING: Increasing RAM siz
- android中常见的内存溢出和解决办法
- android硬件加速(View.LAYER_TYPE_SOFTWARE)与GridView for ScrollView 显示问题
- Android_AnimationDrawable介绍及使用
- MTK android L使用汇顶TP如何使用B协议
- Android-->Fragment生命周期详解(上)
- android studio 用 Live Templates 自动生成switch、try、for、if
- Jenkins构建Android项目持续集成之findbugs的使用
- android 按钮两次点击事件区分
- androidstudio的gradle project sync failed解决
- Android应用:使用adb获得activity堆栈信息
- Android中多界面的退出
- Android拍照裁剪图片
- Android使用libgdx实现模拟方向键控制角色移动的方法
- android onKeydown
- VideoView 设置静音
- Android编程实现加载等待ProgressDialog的方法
- Android5.x之RecyclerView使用