1、公司最近在做硬件设备,这其实已经是软硬件的结合了,
我们要实现的效果是:一步手机装上我们的apk,硬件设备上面也装上,然后通过手机控制硬件设备;
我们的做法思路是这么着:
1)、提供一个安卓系统的硬件设备
2)、在硬件设备上面植入我们的app(一个电台app)
3)、在手机app端控制硬件设备的播放、暂停、切换下一个频道等功能
4)、用手机可以查看收听时长、手机卡剩余流量等用户个人信息
5)、实现的桥梁是服务器(通过推送和极光透传实现,并且通过极光进行手机和硬件设备进行长连接)
一)、提供一个安卓系统的硬件设备
这个是硬件厂商提供的,他们是在硬件设备上面提供一个安卓系统,然后把我们的应用apk烧到系统上面
二)、硬件上面的apk
这个是我们开发人员做的,以安卓apk来说,包含了apk的播放、暂停等基础功能以外
三)、手机控制硬件的播放、暂停等功能
这个就是最主要的和服务器的交互,首先需要和服务器定好指令协议,但是通过什么来很快的进行交互呢,我们使用了极光推送。这里手机里面的apk也要做相应的处理
四)、手机apk、硬件设备上面的apk。他们的交互桥梁是通过 服务器 。
当手机apk点击”播放按钮“进行播放的时候,需要调用接口,给服务器传个指令,然后服务器在给硬件设备的apk推送一个消息。使用的极光的推送,
此时有两个处理方法:1、使用普通的推送2、使用极光推送应用内部的API。这个被成为”透传“。服务器把消息透传给硬件设备上面的apk,然后硬件设备的apk对其进行播放、暂停等功能的处理
五)、服务器和手机apk是如何进行交互的呢
跟4是一样的,当手机切换下一曲的时候,手机apk调用接口传给服务器,服务器处理以后,通过透传的方式告诉硬件apk,然后做完响应处理以后,再告诉服务器,服务器再透传给手机apk,然后手机经过处理,然后做出相应的处理。
如图: