最近事情比较多,学安卓,四大组件都没搞完,但是一有时间我就抽空出来写的,带着自己远大的目标和理想,奋斗中。。。
这是这次实例的示意图,不过三个人物的功能,这个示意图没画对,普通用户存钱取钱贷款,银行工作人员也能存钱取钱贷款啊,所以后面的人物的功能是含括前面的人物的功能的
我们第一步是写接口,为啥使用到接口,听过那个大牛说的视频就知道,这是在项目开发中常用的,比如银行服务这块一部分人做,服务用户这块一部分人做,不用接口就得等一边做好另一边做,用接口调用就可以两边并发,效率就成倍增加了。
可以看出,我们使用的这三个接口,分别对应的三个人物,普通人,工作人员,老板,
每个里面都定义了虚拟方法,至于后面的继承前面的接口,是为了让高级的人物使用前面人物的方法,继承这块和接口这块,这个项目实例用的活灵活现,受益匪浅啊。
定义了接口,就给它实现接口,至于为啥用单独的类去实现,为了让代码复用,以及模块化,便于理解。
开头就说过,更高级的人物权限越大,含括了前面人物的所有方法,所以,我们都给他实现了
可以看出来,我们的功能十分的简单,里面都是固定的金额;其实如果可以,咱自己也能用一个活动实现它,然后给他设计布局,然后输入金额进行修改。
接着就是写一个服务
服务第一步:继承Service写一个类
第二步:AndroidManifest.xml注册好。
注意exported这个属性,为的就是让他可以跨进程使用,也就是跨程序使用,到时候注意写就行
第三步:进行调用
不过这边得插入一个,因为是并行的去操作,这时候我们就得写界面,给用户使用的界面
咱在主活动里写用户登陆的样式;
选择人物身份
让它跳转到各个特指那几个人物的活动,让那几个活动去绑定服务,并调用服务内部的那些接口和方法
为啥不是启动服务?
因为启动服务并不能调用服务里的方法
然后创建这些按钮跳转的类,并绑定服务。这就是第三步。
挺长的,但是其中的绑定是固定的,这个写法跟广播里的挺像的,反正四大组件基本都得用到Intent,这
com.example.bankserive.ACTION_NORMAL_USER
是我们在AndroidManifest1里面注册服务的时候定义的IntentFilter里的
因为服务里是根据跳转的action进行选择相应的接口和实现类
所以我们得给它一个名字,一般是包名加大写的东西(跟安卓源代码学的)
这里的绑定服务和上次的绑定形式不一样,上次是当成成员变量来使用,这次用内部类形式,然后调用的时候进行new对象就好,每次把服务强转,为的就是让绑定后调用服务内部方法或者接口
然后让他们变成成员变量,让定义了的活动里的布局按钮调用它,然后调用服务内部的方法或接口,所以服务连接相当于一个使用服务的媒介,用一个接口new出来就可以使用接口里的所有方法了
然后就是活动的布局
这里我们用到了标题形式,然后让include进行导入,这样也是为了代码复用,
调用活动布局时只需要一句话就好了
后面的两个活动的布局就叠加,
两句话完成
老板的也是一样,调用前面的,然后写自己的
接着我们分别写了其他两个活动,
反正我学到第一个活动写法后就自己写了第二个和第三个,大同小异
就不介绍了
然后就可以测试了
就测试了普通用户
后续会跨程序进行服务,使用到了AIDL,这个东西就是创建活动时,Activity上面的那个类型
这个服务好像并没太大吸引力,因为并没有给它优化功能,简单的服务功能还是体现了
等学完四大组件,后面自己再优化下画面,然后体会下四大组件的作用吧,,,
又写到这个点了,时间不等人呐,加油,相信勤能补拙,会变得优秀的。