精简山东大学自card.sdu.edu.cn的转账网站,简化输入过程,快捷充值
点我下载或者在项目的release文件夹中下载。也可将项目clone到本地自行编译
由于在card.sdu.edu.cn上从银行卡到校园卡转账不是很方便
,因此模拟网站登录过程的http包简化登录的过程。全过程模拟浏览器动作,无任何后门代码。
项目代码结构十分简单,分为在com.casin.transfer2.MainFrame的主界面和
com.casin.task包中的登录、转账请求以及在登录中用到的屏幕键盘的识别。在
com.casin.info包中负责用户信息的存储。
com.caisin.transfer2.MainFrame主要实现App的各项界面功能。由于本人Android开发
经验较少,代码并不美观。具体有两个用于登录的AsyncTask
和两个用于转账的AsyncTask
组
成。其余的是界面相关。AsyncTask
具体表现为四个内部类。
com.casin.task负责登录、转账及屏幕键盘识别。登录、转账相对较为简
单。难度在屏幕键盘的识别上。由于转账过程中需要将校园卡查询密码由屏幕键盘映射为
一组数字后逆序POST到服务器中,为了简化转账过程,屏幕键盘的识别是必须的。作者尝试
过OCR开源的软件,如Tesseract
等,但是效果不是很理想,经常出现5、6识别错误的情况。
因此按照自己的想法将屏幕键盘表示为横竖像素数的有序序列进行识别,最后将1、7
和5、6具体分别开来。
com.casin.info包中主要是信息的存储。此处使用Android的SharedPreference
进行保
存。
1.代码不美观,结构也较混乱。
2.屏幕键盘识别的代码也显得较为笨拙,方法不够通用。
3.由于作者能力有限,整个程序的功能很单一。
添加查询余额的功能。
添加自定义转账金额的功能。
去除了不必要的库及源文件。