Android商业软件开发全程实战
上QQ阅读APP看本书,新人免费读10天
设备和账号都新为新人

前言

本书基于一个完整的Android商业软件开发全过程而著,并且经过两次培训的实战考验。

本书的核心围绕一款手机安全、监控软件展开讲解,涉及了一个完整Android程序开发的方方面面,基本情况如下。

一、关于Android手机守护神软件

(1)这是一款手机防盗软件:在手机丢失时可以通过备用号码发送短信去获取手机的位置信息,可以实现远程自动开、关机,可以报警。

(2)通过对备份号码发过来的信息协议进行解析:备份短信、电话号码、图片,可以对短信、电话号码、图片等进行删除以防止信息泄露;能够把短信、电话号码、图片等用户数据传输到网络指定的位置;获取地理位置信息;可以自己录音来自定义报警声音,当协议中有开启报警声音指令时播放报警音。

(3)发现Sim8卡更换后,自动给备用手机号码发送短信通知对方手机已经丢失,并可以自动将以前设置的备份信息发送到指定位置。

(4)假如手机丢失了,但是在手机上安装的手机守护神软件里设定了朋友的手机号码为目标手机号码,此时朋友可以发送短信进行报警;也可以通过发送短信或者邮件(自己编写邮件抓取代码)来获取位置信息;如果手机已经到异地(例如从北京到四川),可以发送邮件或短信对手机中的短信、电话号码、通话信息、图片、视频进行备份并删除,然后上传到网络(可以通过邮件也可以通过Web服务器)。

(5)可锁定手机,上传重要的信息和文件,通过自定义的协议销毁相关信息,避免泄露商业机密。

(6)防止丢失功能:需要蓝牙设备和手机的距离感应器进行通信,使手机离开自己2米后就播放报警声音并报警,如果在家里,可以通过GPS定位范围,设置报不报警。

(7)远程控制:可以通过手机软件开通呼叫转移功能,将发送到丢失手机的短信或者将呼叫转移到另外一个手机上,防止信息泄露,对于短信可以通过手机守护神软件截取(通过设置软件中短信接收器的优先级可以截断短信,防止捡到手机的人查看到短信)并转发。

(8)人身保护:可以通过JNI编程,在用户长按某个键时进行报警。

二、解决了开发中的技术难点

(1)解决内存溢出问题:视图树的理念、动态增删视图、高效利用内存。

(2)系统的扩展性好:数据库中的数据使用Key-Value的方式和Android编程中的Map对应,每个Key是一个功能点,可以加入信息的功能点,非常好地实现设置扩展性;借助Android本身系统架构的弱耦合性,可以实现对不同事件的监听并作出相应的业务反应,进而实现系统的扩展。

(3)使用Gallery,并对其Item进行响应,对显示的视图树进行动态的增删,实现非常好的扩展性。

(4)实现短信监听、对目标手机号码监听。如果是目标手机号码,就会解析短信内容,根据内容中发送的协议执行动作,备份数据,并上传到网络。

(5)界面很酷,具有滚动效果,扩展性好。

(6)实现“流氓软件”的功能,使用Service相互调用让系统永远无法“杀死”软件。

(7)用户数据安全:小型的数据可以上传到网络,大型的文件可以加密,防止信息泄露。

(8)实现自定义协议。

(9)动态更新View树,取代TabHost,节省资源。

(10)通过解析短信中自定义协议来达到远程控制和操作软件,进而达到操作手机的目的。

(11)用户可以自定义协议,根据自定义内容进行一些最新的操作。

(12)通过HTTP或TCP/IP协议进行手机客户端和服务端的通信,防止偷盗手机的人发现已经安装了监控软件。

(13)大文件的断点续传功能。

(14)软件的所有操作都是基于协议的,可以通过密码对协议实现简单的加密,实现更安全的通信操作。

(15)通过JNI实现远程开、关机功能。

(16)动态更新视图树的时候,由于采用双缓冲技术,进行addView()和removeView()操作时会自动进行内存对象的绘制和界面的更新,如果还使用setContentView()的话,会销毁所有的View对象,并重新绘制一个和销毁对象一样的空间,这对内存、处理器都是一种资源浪费,同时也会消耗电池。

(17)本软件实现了对四大组件、网络通信、GPS和地图、Sensor、安全技术的综合应用。

(18)具有非常好的安全性,可以在没有网络的情况下对数据进行加密。

(19)在优良的架构的基础上,可以方便地实现不断的重构,从而不断地改善软件本身;另外也可以不断地积累Android软件开发的知识。

(20)根据用户设置安全级别,不同的安全级别拥有不同的数据种类以及保护的程度。

本书的内容已经在很多企业内部讲解过,反响不错,并且随书附赠在北风网以每份380元的收费视频方式发布的视频内容(http://www.ibeifeng.com/goods.php?id=118)。

欢迎广大读者对本书提出宝贵的意见和建议!

王家林

2011年10月