Android10 录屏
时间: 2023-09-20 11:12:43 浏览: 69
在 Android 10 上进行屏幕录制有两种方法:
1. 使用内置的屏幕录制器:
- 打开“设置”应用
- 滚动到底部并点击“关于手机”
- 点击“版本号”七次以启用开发者选项
- 返回到“设置”主页并点击“系统”
- 点击“高级”并选择“开发者选项”
- 启用“屏幕录制”选项
- 打开你想要录制的应用或屏幕
- 下拉通知栏并点击“屏幕录制”图标
- 点击“开始录制”按钮
- 当你完成录制后,下拉通知栏并点击“停止录制”按钮
2. 使用第三方应用程序:
你可以下载并使用第三方应用程序来录制 Android 10 屏幕,如 AZ Screen Recorder 或 DU Recorder。这些应用程序通常提供更多的功能和选项,如录制分辨率和帧率,以及视频编辑工具。
相关问题
android 10 录屏适配
Android 10的录屏适配需要注意以下几点:
1. 应用需要申请权限来进行录屏,可以使用MediaProjectionManager类来实现权限申请。
2. 在进行录屏时需要注意屏幕旋转、导航栏的显示以及状态栏的显示,可以使用Display类来获取屏幕旋转以及尺寸信息,并使用WindowInsets类来获取导航栏和状态栏的高度信息。
3. 录屏时需要注意应用的性能,可以通过降低录制视频的分辨率以及帧率来减少应用的负担。
4. 录制的视频文件需要保存到外部存储器中,并需要注意文件读写权限的处理。
以上就是Android 10录屏适配需要注意的几点。
android10录屏代码
在Android 10中,可以使用MediaProjectionManager类和MediaProjection类来实现屏幕录制的功能。以下是录制屏幕的基本代码示例:
1. 首先,在Manifest文件中添加录屏所需的权限:
```xml
<uses-permission android:name="android.permission.WRITE_EXTERNAL_STORAGE"/>
<uses-permission android:name="android.permission.RECORD_AUDIO"/>
<uses-permission android:name="android.permission.MEDIA_CONTENT_CONTROL"/>
<uses-permission android:name="android.permission.PACKAGE_USAGE_STATS" tools:ignore="ProtectedPermissions" />
```
2. 在Activity中,定义以下变量:
```java
private static final int REQUEST_CODE_SCREEN_CAPTURE = 1;
private MediaProjectionManager mediaProjectionManager;
private MediaProjection mediaProjection;
private VirtualDisplay virtualDisplay;
private MediaRecorder mediaRecorder;
private int screenWidth;
private int screenHeight;
private int screenDensity;
```
3. 在onCreate方法中,初始化变量并请求录屏权限:
```java
@Override
protected void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.activity_main);
mediaProjectionManager = (MediaProjectionManager) getSystemService(Context.MEDIA_PROJECTION_SERVICE);
DisplayMetrics metrics = getResources().getDisplayMetrics();
screenWidth = metrics.widthPixels;
screenHeight = metrics.heightPixels;
screenDensity = metrics.densityDpi;
requestScreenCapturePermission();
}
private void requestScreenCapturePermission() {
startActivityForResult(mediaProjectionManager.createScreenCaptureIntent(), REQUEST_CODE_SCREEN_CAPTURE);
}
@Override
protected void onActivityResult(int requestCode, int resultCode, @Nullable Intent data) {
super.onActivityResult(requestCode, resultCode, data);
if (requestCode == REQUEST_CODE_SCREEN_CAPTURE && resultCode == RESULT_OK && data != null) {
mediaProjection = mediaProjectionManager.getMediaProjection(resultCode, data);
startRecording();
}
}
```
4. 开始录制屏幕:
```java
private void startRecording() {
mediaRecorder = new MediaRecorder();
virtualDisplay = createVirtualDisplay();
mediaRecorder.start();
}
private VirtualDisplay createVirtualDisplay() {
return mediaProjection.createVirtualDisplay("ScreenCapture", screenWidth, screenHeight, screenDensity,
DisplayManager.VIRTUAL_DISPLAY_FLAG_AUTO_MIRROR,
mediaRecorder.getSurface(), null, null);
}
```
5. 停止录制屏幕:
```java
private void stopRecording() {
mediaRecorder.stop();
mediaRecorder.reset();
virtualDisplay.release();
mediaProjection.stop();
}
@Override
protected void onDestroy() {
super.onDestroy();
stopRecording();
}
```
请注意,在使用完毕后,您需要调用mediaProjection.stop()来停止MediaProjection对象,并且对MediaRecorder和VirtualDisplay进行适当的释放。此外,对于像WRITE_EXTERNAL_STORAGE和RECORD_AUDIO这样的权限,您也需要在运行时动态请求。
相关推荐
![pdf](https://img-home.csdnimg.cn/images/20210720083512.png)
![pdf](https://img-home.csdnimg.cn/images/20210720083512.png)
![-](https://csdnimg.cn/download_wenku/file_type_column_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)