网页变化, 编辑器升级, 项目依赖升级
封闭版本
2) 播放操作 3) 暂停操作 4) 修改后复原状态 5) 录制和播放声音
6) 远程展示,多端展示 7) 不同知识点的无缝衔接(暂定 关闭当前项目,直接打开新的知识点项目 无缝切换其他的虚拟机)
linux 虚拟机(方便部署)
1个主干项目,3个分支学习项目
切换到操作环境
1)在某一个进程下进行fork操作.隐藏老进程,用户可以操作新的进程.
成本少,fork操作速度快,节省资源 不能隔离文件,文件需要还原, 跳转播放实现逻辑不一样.
2)切换虚拟机
虚拟机消耗增加,能够将内容完全隔离,需要记录操作的瞬时状态. 需要清理 操作虚拟机. //为操作系统增加一个受限用户,将项目的git清理一下. //虚拟机删除/新建 *** 记录Application状态
1) 保存每个时刻的状态
2) 从0开始一直’播放’到指定状态 鼠标+键盘记录 -> 人工智能 补充处理loading等操作 -> 多分辨率下的鼠标 键盘录制/播放
屏幕信息传输到网页上,网页操作传输到远程
三、如何能操作对方的电脑 原理和远程控制木马是一样的。这里的终端指被控制的电脑。
连接建立之后,终端的电脑图像压缩后发回本地,这样本地就能看到画面, 本地进行键鼠操作的动作封装成数据包发送给终端解开后还原成动作进行 远程的模拟操作。终端反馈的画面通过压缩后继续发回给控制端。 就终端的图像传输来说,早年终端都是直接进行JPEG截图后传输, 所以速度不太理想。之后各种高手延伸出很多很厉害的基于截图的方式的屏幕 传输的算法,传输效率进一步提高,通常是先加载一个虚拟屏幕驱动,然后对 屏幕做逐行扫描,然后计算变化的部分,之后只传输变化的部分。
虚拟屏幕驱动
软件是否侵权
录制一段Android/java代码 + 播放 + 操作.
连接远程服务器的加密问题.
录制(在html上操作,在远程服务器录制?) -> 上传 在本地录制? 如何保证本地环境 录制信息: (基础软件/文件) + 鼠标键盘事件 + 录音(文字?)
优势: 对本地电脑无要求.
参考网址 https://blog.csdn.net/qq_29496709/article/details/79448582
时间归回(天) RecycleView源码 7 基于idea的操作快捷键和Vim的内容编辑 7 (https://www.jianshu.com/p/43862126b88f) 熟悉 linux 录制和播放键盘代码(不同目录,暂停 和播放, 基于git的回退) 14 (暂停可编辑,基于git的保存后回滚操作) 熟悉 屏幕投射代码(投射到html/novnc) 7 https://novnc.com/info.html html的状态控制展示和交互 7 整合 7
暂不考虑 android模拟器和其他意外情况
后续发展: 从 无声到有声(边写代码边做说明), 从源码 到个人代码,从单个源码知识点 到知识网络. 极大丰富学习IT(或其他 比如ps财经等)知识的体验 (网状 - 有质量的交互 - 自媒体 - 逻辑性强 - 开放式 - 注重每一个人的学习体验)