专业 靠谱 的软件外包伙伴

您的位置:首页 > 新闻动态 > Adnroid短信通讯监控APP开发解决方案!

Adnroid短信通讯监控APP开发解决方案!

2017-07-20 19:24:01

一:

 

首先对整个小项目做一下简单的架构分析:

1.整个项目前端包括两种客户端,监控端和被监控端,后台服务器当然少不了

2.架构的总体思路就是被监控监听通话和短信(后续会有对qq和微信的监听),并上传数据到服务器,

监控端定时向服务器发送请求获取最新数据,并显示给监控端,监控端可以看到被监控端的详细通话信息

和短信等内容,包括通话音频文件,监控端可以监控多个手机号,也可以是多台设备

3.在被监控端安装软件就看自己啦,首次安装要获取全部需要的权限,程序在后台运行(Service层),没有界面,

开机后程序会自动在后台运行

二:

那么就先从被监控端说起吧

1.从Activity启动监听通话的Service和监听短信的Service

android通话短信监控项目——被监控端通话录音上传到服务器的实现

从Activity启动Service

2.Service层先说监听通话的Service,也算是对上一篇文章的修改和补充吧

在Service的onCreate()方法中初始化成员变量

MediaRecorder(录制通话音频),TelephonyManager,

MyPhoneStateListener,以及通话信息实体类等

android通话短信监控项目——被监控端通话录音上传到服务器的实现

onCreate()方法中初始化成员变量

android通话短信监控项目——被监控端通话录音上传到服务器的实现

保存通话 信息的实体类(CallInfo)


MyMediaRecorder是对MediaRecorder的简单封装,主要用到start()和end(),开始录音和结束录音
android通话短信监控项目——被监控端通话录音上传到服务器的实现

MyMediaRecorder(录音工具类)

MyPhoneStateListener是核心类,通话时的回调方法都在此类里,逻辑处理看起来有点乱

android通话短信监控项目——被监控端通话录音上传到服务器的实现
android通话短信监控项目——被监控端通话录音上传到服务器的实现

MyPhoneStateListener类

setPrperties()的功能就是在通话结束后,为CallInfo这个成员变量赋值,

不在onCallStateChanged()中设置CallInfo的属性值,以免代码混乱

android通话短信监控项目——被监控端通话录音上传到服务器的实现

setProperties()方法

此处用到了第三方组件,Json转换相关的Gson组件和网络请求相关的OKHttpUtils组件,

详细学习的可以去github

android通话短信监控项目——被监控端通话录音上传到服务器的实现

上传通话信息方法

上传成功后删除本地音频文件(避免被发现),这就算完成一次通话监听,reset()一下,继续下一次监听。

android通话短信监控项目——被监控端通话录音上传到服务器的实现

reset()

三:

下一步就涉及到服务器端了,服务器主要框架用spring4,jpa,springData和Hibernate。

 

关于:中科研拓

深圳市中科研拓科技有限公司专注提供软件+硬件结合系统解决方案定制开发服务,其中包括:软件外包软件开发软件定制、硬件开发、硬件定制、智能硬件开发、物联网项目等开发外包服务,通过IT技术实现创造客户和社会的价值,成为优秀的软件公司,通过客户需求导向、开放式创新、卓越运营管理等战略的实施,全面打造公司的核心竞争力。优秀软件外包公司、软件开发公司,联系电话400-0316-532,邮箱sales@zhongkerd.com,网址www.zhongkerd.com


  上一篇   [返回首页] [打印] [返回上页]   下一篇