一个安卓小项目(2)——各模块具体流程
(此项目只作为学习交流使用,切不可去监听他人隐私,否则后果自负)
这次说一下,这个项目各个模块的具体流程是怎么样的。
通话监听模块,此模块是作为一个后台服务独立运行的。它会获取手机的来电和去电的状态。当获取状态后,就会调用录音的接口进行录音,直到结束通话。它会把录音的文件压缩成zip文件,存放在一个隐藏的目录下,供传送文件模块进行上传。zip文件的名即为通话中播出或者是来电的号码。另外还需要对多方通话做适配,可以获取多个电话号码。
注意:经过实际的操作表明,目前国内的一些手机厂家的rom在限制了通话过程中的录音,有的只能录到麦克的声音录不到听筒的声音。(或者是谷歌禁掉了)。
短信监听模块,此模块是作为一个后台服务独立运行的。这里采取获取短信的方式是,直接访问短信的数据库,把短信数据库的全部内容写入到文件中并打包成zip。当有新短信的时候,只获取新的短信内容。打包后的文件放到指定的隐藏目录下。供传送文件模块进行上传。
传送文件模块,此模块是作为一个后台服务独立运行的。它会检测手机网络(wifi 和卡数据)是否可用,如果可用就会检测指定文件夹内是否有可以传送的文件,如果有的话就会上传到服务器上。这里采用的方式是每过一段时间(10s) 就检测一下手机网络,然后进程传送操作。传送操作用的是ftp传输的方式。
总控制模块,也是作为一个独立运行的服务,它的作用是主动孵化以上的3个服务,并在运行的过程中,启动被关闭的以上停止运行的任何一个模块,也包括自己。
这里我们始终没有找到,一种可以永久常驻后台的方法,开启服务,总是会被杀掉。