项目需要实现一个手机的录屏功能,于是从网上找了些相关资料和源码,发现跑不起来,于是开始dubug,发现坑还是很多的,这里记录一下实现过程和一些些遇到的异常以及一个我调整完可以跑的Demo。
首先在AndroidManifest中静态配置权限:
<uses-permission android:name="android.permission.WRITE_EXTERNAL_STORAGE"/> <uses-permission android:name="android.permission.RECORD_AUDIO"/>
然后在Activity中动态申请
if (ContextCompat.checkSelfPermission(MainActivity.this, Manifest.permission.WRITE_EXTERNAL_STORAGE) != PackageManager.PERMISSION_GRANTED) { ActivityCompat.requestPermissions(this, new String[] {Manifest.permission.WRITE_EXTERNAL_STORAGE}, STORAGE_REQUEST_CODE); } if (ContextCompat.checkSelfPermission(MainActivity.this, Manifest.permission.RECORD_AUDIO) != PackageManager.PERMISSION_GRANTED) { ActivityCompat.requestPermissions(this, new String[] {Manifest.permission.RECORD_AUDIO}, AUDIO_REQUEST_CODE); }
因为项目中需要用到一个自定义的Application,所以要需要配置一个全局的Ap