news 2026/8/20 19:55:24

Moukthar通话录音与摄像头控制:远程监控功能实战详解

作者头像

张小明

前端开发工程师

1.2k 24
文章封面图
Moukthar通话录音与摄像头控制:远程监控功能实战详解

Moukthar通话录音与摄像头控制:远程监控功能实战详解

【免费下载链接】mouktharAndroid remote administration tool项目地址: https://gitcode.com/gh_mirrors/mo/moukthar

想对Android设备进行远程监控,却不知道如何下手?Moukthar 是一款开源的Android 远程监控工具(Remote Administration Tool),它把手机变成可被远程操控的"监控终端":远程通话录音、前后摄像头控制、视频录制、短信与通知监听、键盘记录、定位追踪等能力一应俱全。本文将以新手视角,重点拆解通话录音摄像头控制两大核心功能的实现原理与实战操作,并附上完整源码路径,帮你快速掌握这套远程监控系统的用法。


一、Moukthar是什么?先认识这套远程监控系统

Moukthar 由三部分组成,整体架构非常清晰:

组件作用技术栈
Android 客户端安装在目标手机上,接收命令并执行Java / Kotlin
C2 控制面板网页端管理界面,展示设备与数据PHP + MySQL
WebSocket 服务器实时转发命令与状态消息PHP

它支持的功能包括:通话录音、拍照、视频录制、键盘记录(Keylogger)、短信监听、通知监听、读写联系人、文件上传下载、GPS 定位、已安装应用列表等。客户端通过 WebSocket 保持长连接,控制端下发命令后,手机端立即执行并把结果回传,全程近乎实时。

想先看整体效果?项目根目录的 README.md 里有完整功能清单和安装步骤。


二、通话录音功能实战:自动录音并上传到C2服务器

Moukthar 的通话录音非常"自动化"——无需手动操作,来电响铃、接通、挂断三个节点都会被自动捕捉。

1. 录音如何被触发?核心在广播接收器

系统通过PHONE_STATE电话状态广播驱动整个流程,核心代码在 Call.java:

  • 响铃阶段(RINGING):读取来电号码,立即上报给 C2 服务器,记录"谁打来的";
  • 接通阶段(OFFHOOK):自动创建临时文件并启动MediaRecorder开始录音;
  • 挂断阶段(IDLE):停止录音,把音频文件上传到服务器,同时登记录音记录。

录音采用.3gp格式、AMR 音频编码,体积小、便于回传;三星设备会优先使用VOICE_COMMUNICATION音源,其他机型则使用VOICE_CALL音源,兼顾了不同厂商的兼容性。

2. 录音文件去向:自动上传与数据库登记

录音停止后,文件会通过 FileManager.java 的uploadFile()上传到 C2 服务器/recording接口,服务端 ControlPanel.php 的uploadRecording()会把录音文件名、号码、时间戳写入数据库。

之后在控制面板的Recordings(录音)页面,就能按设备查看历史通话录音,点击即可在线播放或下载。录音数据模型可参考 Recording.php。


三、摄像头控制实战:远程调用前后摄像头拍照

如果说通话录音是"听",那么摄像头控制就是"看"。Moukthar 支持远程操控手机前置或后置摄像头拍照,照片即时回传。

1. 控制面板操作:三步完成远程拍照

在控制面板打开某台设备的Images(图片)页面,点击相机图标,会弹出摄像头选择窗口:

  • 选择Front(前置摄像头)Back(后置摄像头)
  • 点击Send message下发拍照命令;
  • 几秒钟后,新照片就会出现在图片列表中,点击即可预览。

2. 拍照背后的代码逻辑

命令由Command枚举中的CAMERA_FRONT/CAMERA_BACK定义,定义见 Command.java。客户端收到命令后,由 WebSocketClient.java 调用 Screenshot.java 的captureImage()

  1. 根据参数选择对应朝向的摄像头(getCamera()自动遍历查找前置/后置);
  2. 启动相机预览并执行takePicture()拍照;
  3. 照片以 PNG 格式保存到相册目录;
  4. 通过FileManager.uploadFile()上传至/image接口,并回传文件名与时间戳。

整个过程不需要手机端任何操作,真正实现"远程抓拍"。


四、视频录制功能:定时录制720p视频

除了拍照,Moukthar 还能远程录制视频,且支持自定义时长,这是监控场景中非常有用的能力。

1. 控制面板操作:设定时长即可录制

Videos(视频)页面点击视频图标,会弹出录制设置窗口:

  • 填写Duration(录制时长,单位秒)
  • 同样选择前置或后置摄像头;
  • 点击Send message下发命令,手机端会自动开始录制。

2. 录制原理:相机 + MediaRecorder 组合

video录制代码 的核心逻辑在captureVideo()

  • 打开指定朝向的摄像头并解锁给MediaRecorder
  • 视频源设置为摄像头、音频源设置为CAMCORDER
  • 输出720p(1280×720)、30fps的 MP4 文件;
  • 到达设定时长后自动停止录制并上传到/video接口。

视频文件保存后同样会被登记入库,控制面板 ControlPanel.php 的videos()方法负责视频列表展示与在线播放。


五、统一监控面板:设备管理、实时日志与指令下发

以上所有功能,最终都汇聚在一个统一的 Web 监控面板里。登录后(默认账号android/android)即可看到设备仪表盘:

  • 设备列表:显示每台设备的型号、设备ID、IP 地址、系统 API 版本、电话号码;
  • 快捷操作:每行右侧提供电话、相机、定位、播放、麦克风等图标,一键下发对应命令;
  • 实时日志:底部黑色区域实时滚动 WebSocket 连接状态与指令 JSON,方便排查问题。

设备上线后会自动注册,客户端通过 MainService.java 每 5 秒尝试建立 WebSocket 连接并上报设备ID,断线会自动重连,保证远程监控的持续性。


六、快速上手:从零部署一套远程监控环境

想动手实验,可按以下步骤搭建(详细安装见 README.md 的 Installation 章节):

  1. 克隆仓库git clone https://gitcode.com/gh_mirrors/mo/moukthar
  2. 准备环境:安装 PHP、Composer、MySQL、Apache2;
  3. 部署服务端:把Server/目录移动到 Web 根目录,分别在c2-server/web-socket/执行composer install
  4. 初始化数据库:导入database.sql,并在.env配置数据库账号;
  5. 启动 WebSocket:运行php Server/web-socket/App.php,或使用仓库自带的websocket.service注册为系统服务;
  6. 编译客户端:用 Android Studio 打开Client/工程,在 Utils.java 中填入 C2 服务器与 WebSocket 地址,编译 APK 安装到目标设备。

⚠️ 注意:Moukthar 目前对 Android 12 以下版本有更好的权限绕过支持,高版本系统可能需要手动授予相关权限。


七、安全与合规提醒

Moukthar 具备强大的远程监控能力,请务必仅将其用于合法授权的场景,例如:

  • 家长对未成年子女手机的监护管理;
  • 企业设备管理与安全审计;
  • 个人丢失设备的定位与取证;
  • 安全研究人员的教学实验。

未经他人同意私自安装监控软件,可能触犯《刑法》侵犯公民个人信息罪、非法侵入计算机信息系统罪等相关法律。技术本身无善恶,使用者的边界决定了一切。


总结

通过本文的实战拆解可以看到,Moukthar 用一套简洁的「WebSocket 指令下发 + Android 广播/相机监听 + 文件自动回传」机制,把通话录音、前后摄像头拍照、定时视频录制等远程监控能力完整串联了起来:

  • 🔇通话录音:利用PHONE_STATE广播自动触发,录音上传后可在线回放;
  • 📷摄像头控制:前后摄像头任选,远程拍照即拍即传;
  • 🎬视频录制:自定义时长、720p 高清输出;
  • 🖥️统一面板:设备管理、实时日志、一键指令,监控效率极高。

对于想学习远程监控系统架构、Android 端广播与相机编程、PHP + WebSocket 实时通信的开发者来说,Moukthar 是一份非常值得研究的开源参考实现。赶紧克隆源码动手试试吧!

【免费下载链接】mouktharAndroid remote administration tool项目地址: https://gitcode.com/gh_mirrors/mo/moukthar

创作声明:本文部分内容由AI辅助生成(AIGC),仅供参考

版权声明: 本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若内容造成侵权/违法违规/事实不符,请联系邮箱:809451989@qq.com进行投诉反馈,一经查实,立即删除!
网站建设 2026/8/20 19:50:30

告别多App来回切换:洛雪音乐助手全网搜索与聚合播放一网打尽

告别多App来回切换:洛雪音乐助手全网搜索与聚合播放一网打尽 【免费下载链接】lx-music-desktop 一个基于 Electron 的音乐软件 项目地址: https://gitcode.com/GitHub_Trending/lx/lx-music-desktop 深夜想听一首老歌,网易云提示"暂无版权&…

作者头像 李华
网站建设 2026/8/20 19:46:47

10 万行 Excel 不再卡死浏览器:SheetJS 虚拟滚动实战一次讲透

10 万行 Excel 不再卡死浏览器:SheetJS 虚拟滚动实战一次讲透 【免费下载链接】sheetjs 📗 SheetJS Spreadsheet Data Toolkit -- New home https://git.sheetjs.com/SheetJS/sheetjs 项目地址: https://gitcode.com/gh_mirrors/sh/sheetjs 深夜十…

作者头像 李华