zoukankan      html  css  js  c++  java
  • Android 实现截屏功能

    主要代码如下:

    private void getScreen(View view, String filePath) {
            try {
                Bitmap bitmap = Bitmap.createBitmap(view.getWidth(),
                        view.getHeight(), Config.ARGB_8888);
                Canvas canvas=new Canvas();
                canvas.setBitmap(bitmap);
                view.draw(canvas);
                FileOutputStream outputStream=new FileOutputStream(filePath);
                bitmap.compress(CompressFormat.JPEG, 100, outputStream);
                
            } catch (Exception e) {
                e.printStackTrace();
            }
        }
    //判断sdCard是否存在
                    if(sdCardStat.equals(Environment.MEDIA_MOUNTED))
                    {
                        //sdCard卡路径
                        File sdSardDir=Environment.getExternalStorageDirectory();
                        getScreen((View)getWindow().getDecorView(),sdSardDir+"/test1.png");
                        Toast.makeText(MainActivity.this, "截图成功", Toast.LENGTH_LONG).show();
                    }else
                    {
                        Toast.makeText(MainActivity.this,"sdcard不可用", Toast.LENGTH_LONG).show();
                    }

    最后在AndroidManifest中添加权限

    <uses-permission android:name="android.permission.WRITE_EXTERNAL_STORAGE"/>
        <uses-permission android:name="android.permission.MOUNT_UNMOUNT_FILESYSTEMS" />

     截图成功之后会在sdcard下看到test1.png图片,

    本人在真机上测试可行,没有在模拟器上测试。

  • 相关阅读:
    Linux文本处理命令
    管道和重定向
    Linux网络基本配置
    网络基础
    普通权限和特殊权限
    Linux权限
    Linux用户
    Linux帮助文档
    创建新表,自动授权trigger
    禁用约束语法测试
  • 原文地址:https://www.cnblogs.com/zhoujian315/p/3296116.html
Copyright © 2011-2022 走看看