网易首页 > 网易号 > 正文 申请入驻

开发屏幕录制工具的技巧

0
分享至

每日分享最新,最流行的软件开发知识与最新行业趋势,希望大家能够一键三连,多多支持,跪求关注,点赞,留言。

面对现实吧。有时,当我们的应用程序加载了各种功能时,我们的应用程序用户可能很难找到特定的应用程序功能。我们中的许多人倾向于编写详细说明应用程序中的每个功能的指南,但是 - 老实说 - 用户真的没有时间或耐心阅读长指南,而且并非所有指南都是用户友好的。有时,使用一个函数比查找和了解它更快。但这会导致用户无法充分利用我们应用程序的功能。

幸运的是,制作屏幕录制是一种向用户展示功能如何工作的好方法,一步一步。

就在几天前,我决定为自己的应用创建一些视频教程,但首先我需要开发一个屏幕录像机——一个看起来像这样的屏幕录像机。

屏幕录制工具的工作原理

点击主屏幕上的开始录制以开始录制然后,切换到要录制的屏幕。录制过程中,演示应用程序在后台运行,以便整个屏幕都可见以进行录制。要停止录制,只需在屏幕上向下滑动并点击通知中心的停止,或返回应用程序并点击停止录制。就这么简单!录屏将保存到指定目录并显示在应用主屏幕上。

要打造这样一款轻量级的录屏工具,我们只需要使用HMS Core Video Editor Kit的录屏SDK的基本功能即可。此 SDK 易于集成。正因为如此,我相信除了用它来开发一个独立的录屏APP,它也很适合给APP配备录屏功能。这对于游戏和在线教育中的应用程序非常有帮助,使用户无需切换到另一个应用程序即可记录他们的屏幕。

我还发现这个 SDK 实际上允许的不仅仅是开始和停止录制。以下是一些示例。

该服务允许自定义其通知。例如,我们可以在通知栏上添加暂停或恢复按钮,让用户只需按一下按钮即可暂停和恢复录制。不仅如此,还可以在通知栏显示录屏时长,用户只需访问通知中心即可实时查看录屏时长。

SDK 还提供了一系列其他功能,具有极大的灵活性。支持多种主要分辨率(包括480p、720p、1080p),可根据不同场景(如设备型号限制)进行设置,并允许用户手动选择录音保存位置。

现在,让我们进入开发部分,看看演示应用程序是如何创建的。

开发流程
必要的准备工作

第一步:在AppGallery Connect中配置应用信息。

  1. 注册为开发人员。
  2. 创建一个应用程序。
  3. 生成签名证书指纹。
  4. 配置签名证书指纹。
  5. 根据需要为应用启用服务。

第二步:集成HMS Core SDK。

第 3 步:配置混淆脚本。

第 4 步:声明必要的权限,包括允许屏幕录像机 SDK 访问设备麦克风、将数据写入存储、从存储读取数据、关闭系统对话框和访问前台服务的权限。

构建录屏功能

步骤 1:创建HVERecordListener的实例(它是屏幕录制期间发生的事件的侦听器)并覆盖侦听器中的方法。

HVERecordListener mHVERecordListener = new HVERecordListener(){ @Override public void onRecordStateChange(HVERecordState recordingStateHve) { // Callback when the screen recording status changes. } @Override public void onRecordProgress(int duration) { // Callback when the screen recording progress is received. } @Override public void onRecordError(HVEErrorCode err, String msg) { // Callback when an error occurs during screen recording. } @Override public void onRecordComplete(HVERecordFile fileHve) { // Callback when screen recording is complete. } };

第 2 步:使用应用上下文和 HVERecordListener 实例初始化HVERecord

HVERecord.init(this, mHVERecordListener);

第 3 步:创建一个HVERecordConfiguration.Builder实例来设置屏幕录制配置。请注意,此步骤是可选的。

HVERecordConfiguration hveRecordConfiguration = new HVERecordConfiguration.Builder() .setMicStatus(true) .setOrientationMode(HVEOrientationMode.LANDSCAPE) .setResolutionMode(HVEResolutionMode.RES_480P) .setStorageFile(new File("/sdcard/DCIM/Camera")) .build(); HVERecord.setConfigurations(hveRecordConfiguration);

第 4 步:自定义屏幕录制通知。

在此之前,我们需要创建一个指定通知布局的 XML 文件。此文件包含通知中组件的 ID,例如按钮。下面的代码说明了我如何将 XML 文件用于我的应用程序,其中为按钮分配了 ID btn_1。当然,按键数可以根据自己的需要进行调整。

HVENotificationConfig notificationData = new HVENotificationConfig(R.layout.hms_scr_layout_custom_notification); notificationData.addClickEvent(R.id.btn_1, () -> { HVERecord.stopRecord(); }); notificationData.setDurationViewId(R.id.duration); notificationData.setCallingIntent(new Intent(this, SettingsActivity.class) .addFlags(Intent.FLAG_ACTIVITY_CLEAR_TOP | Intent.FLAG_ACTIVITY_CLEAR_TASK)); HVERecord.setNotificationConfig(notificationData);

如您所见,在上面的代码中,我最初将自定义通知布局传递给了HVENotificationConfig的初始化方法。然后,我使用addClickEvent方法创建了一个点击事件。为此,我使用了按钮和textView的 ID ,以及在 XML 文件中指定的点击事件。第三,我调用setDurationViewId来设置 textView 的 ID 以确定屏幕录制时长的显示位置。在此之后,我调用了 setCallingIntent设置点击通知时返回的意图。在我的应用程序中,此意图用于打开一个 Activity,如您所知,这是一种常见的意图使用。最后,我在HVERecord类中设置了通知配置。

第五步:开始录屏。

HVERecord.startRecord();

第 6 步:停止屏幕录制。

HVERecord.stopRecord();

就这样,我创建了一个功能齐全的屏幕录像机。

除了使用它为应用程序制作教学视频外,屏幕录像机还可以成为一系列其他情况的有用伴侣。例如,它可以用来录制在线会议或讲座,也可以录制和保存与家人和朋友的视频聊天。

我注意到屏幕录像机 SDK 还能够拾取外部声音并在横向和纵向模式之间切换。对于想要在录制带有实时评论的视频时炫耀自己的技能的游戏玩家来说,这是理想的选择。

这很好地总结了我对如何使用屏幕录制应用程序的想法。所以你怎么看?我期待在评论部分阅读您的想法。

结论

屏幕录制非常适合制作应用程序功能的视频教程,在视频中展示游戏技巧,以及录制在线会议或讲座。它不仅对录制屏幕上显示的内容很有用,它还能够录制外部声音,这意味着您可以创建一个支持带有评论的视频的应用程序。

特别声明:以上内容(如有图片或视频亦包括在内)为自媒体平台“网易号”用户上传并发布,本平台仅提供信息存储服务。

Notice: The content above (including the pictures and videos if any) is uploaded and posted by a user of NetEase Hao, which is a social media platform and only provides information storage services.

相关推荐
热点推荐
俄罗斯重新成为欧洲天然气最大供应国

俄罗斯重新成为欧洲天然气最大供应国

财联社
2024-06-17 16:10:06
一查就停产,很多大老板开始失眠了

一查就停产,很多大老板开始失眠了

大猫财经Pro
2024-06-17 18:00:38
翻旧账?民营企业被倒查税30年,专家直言:企业老实交税基本会死

翻旧账?民营企业被倒查税30年,专家直言:企业老实交税基本会死

财话连篇
2024-06-17 14:50:26
安徽宿州公示:拟录用一名斯坦福大学博士为所辖县乡镇公务员

安徽宿州公示:拟录用一名斯坦福大学博士为所辖县乡镇公务员

澎湃新闻
2024-06-17 17:46:44
以色列向全球发出沉痛之声!

以色列向全球发出沉痛之声!

林林爱天堂
2024-06-17 18:40:06
A股:刚刚,证监局出手,事关私募量化!明天的A股将要直接起飞?

A股:刚刚,证监局出手,事关私募量化!明天的A股将要直接起飞?

兵哥闲聊
2024-06-17 18:04:40
王思聪回应私生女事件,网友炸开了锅!

王思聪回应私生女事件,网友炸开了锅!

拾点先生
2024-06-15 19:00:02
复旦教授称95%的数学专业学生写不出姜萍那样的答卷,校方回应“她考621分为何上了中专”

复旦教授称95%的数学专业学生写不出姜萍那样的答卷,校方回应“她考621分为何上了中专”

极目新闻
2024-06-17 10:50:44
台军7年前买的美制反坦克导弹 到现在一枚没交

台军7年前买的美制反坦克导弹 到现在一枚没交

观察者网
2024-06-17 11:07:03
一个人如把一个肉体凡胎当成神一样崇拜,那这个世界就真没救了!

一个人如把一个肉体凡胎当成神一样崇拜,那这个世界就真没救了!

雪莉故事汇
2024-06-17 08:43:26
再见朱婷!恭喜王云蕗!中国女排总决赛14人换血,曝蔡家军3进5出

再见朱婷!恭喜王云蕗!中国女排总决赛14人换血,曝蔡家军3进5出

二哥聊球
2024-06-17 16:09:11
中国海警会使用“致命性力量”应对菲方船只吗?外交部回应

中国海警会使用“致命性力量”应对菲方船只吗?外交部回应

澎湃新闻
2024-06-17 15:58:27
1934年,红军俘虏两名国民党女兵,李克农说:那个穿靴子的放了吧

1934年,红军俘虏两名国民党女兵,李克农说:那个穿靴子的放了吧

可乐86
2024-06-16 10:53:37
养老金上调3%:给你公式算算你能涨多少,呼声:给企业老人多涨点

养老金上调3%:给你公式算算你能涨多少,呼声:给企业老人多涨点

大风文字
2024-06-17 18:46:14
这工资打败了全国50%的人!

这工资打败了全国50%的人!

人情皆文史
2024-06-17 17:20:43
南方医科大处分救人老师后续:俞莉已被停诊,校方二次回应太教条

南方医科大处分救人老师后续:俞莉已被停诊,校方二次回应太教条

六毛朵朵
2024-06-17 16:31:15
这居然哑火了英超MVP+德甲金靴+阿森纳射手王!一个赛季91球

这居然哑火了英超MVP+德甲金靴+阿森纳射手王!一个赛季91球

直播吧
2024-06-17 09:01:13
宁德时代:网传消息系造谣

宁德时代:网传消息系造谣

每日经济新闻
2024-06-17 15:44:07
39岁中国跑酷元老因心脏病去世,曾是甄子丹御用替身

39岁中国跑酷元老因心脏病去世,曾是甄子丹御用替身

都市快报橙柿互动
2024-06-17 07:59:52
新加坡前总理李光耀:过早翘起尾巴与美国对抗,是中国颠覆性错误

新加坡前总理李光耀:过早翘起尾巴与美国对抗,是中国颠覆性错误

黑天鹅洞察
2024-06-16 22:33:10
2024-06-17 21:32:49
墨谈科技
墨谈科技
业务数码玩家.无聊的博主
2995文章数 567关注度
往期回顾 全部

科技要闻

为什么你的iPhone,肯定用不上"苹果AI"?

头条要闻

哈佛大学中国官方机构:不清楚前招生委员喊话姜萍一事

头条要闻

哈佛大学中国官方机构:不清楚前招生委员喊话姜萍一事

体育要闻

豪华阵容,原始战术 英格兰10亿天团就这?

娱乐要闻

上影节红毯:倪妮好松弛,娜扎吸睛

财经要闻

定了!退休人员基本养老金上调3%

汽车要闻

传奇新篇章 全新一代大众迈腾来了

态度原创

教育
艺术
家居
亲子
军事航空

教育要闻

湖北一学霸放弃清华的保送,说要享受高考过程,后来他考多少分?

艺术要闻

穿越时空的艺术:《马可·波罗》AI沉浸影片探索人类文明

家居要闻

研己实景 古典与现代的交融

亲子要闻

用爸爸的光头砸蛋,是玩具蛋比较硬还是头?

军事要闻

内塔尼亚胡宣布战时内阁已解散

无障碍浏览 进入关怀版