收藏官网首页
查看: 11460|回复: 0

[技术分享] 机智云Android APP 开源框架使用指南

563

主题

1222

帖子

8097

积分

版主

Rank: 7Rank: 7Rank: 7

积分
8097
发表于 2016-9-29 14:48:00 | 显示全部楼层 |阅读模式
汉枫LPB120模块
如果,你想快速开发机智云开源的APP,那你必看此文。

授人以鱼不如授人以渔,我们教你的是一种方法论。所以,学习此文的小伙伴,也需具备一定的基础。
1.  简介
本文档为机智云物联网开源基础App套件使用说明,旨在为机智云物联网开发者提供一个快速开发模板,可在此工程基础上进行快速开发或参考相关代码进行开发。
Android开源框架工程源码链接:
Android gokit App是使用开源框架工程的源码范例,源码链接:
也可在下载中心下载Android Gokit App:
2.  目录结构说明A.     Libs: 包括 GizWifiSDK 在内的的第三方库目录B.     GizOpenSource: 组成模块
1.        CommonModule: 公共方法类、资源文件 及 自定义 Cell
2.        ConfigModule: 设备配置模块,包含 AirLink 及 SoftAP
3.        UserModule: 用户模块,包含用户登录、用户注册、找回密码
4.        DeviceModule: 设备模块,包含 设备列表
5.        SettingsModule: 设置模块,包含 设置菜单 及其 包含的子菜单项(关于等)
6.        PushModule: 推送模块,包含 百度和极光的推送SDK 集成封装
7.        view: 框架中使用的一些自定义控件。
8.        zxing: 关于扫描二维码的必要文件。
3.  快速集成指南
默认程序入口在 UserModule 中的 GosUserLoginActivity。
A.     设定初始化参数
在工程的 GosApplication.java 文件中填写机智云AppID及AppSecret,如果使用第三方登录或推送,需要填写相应的从其他资源平台申请的参数;如果使用推送需要打开当前需要使用推送的类型的初始化,如果都为注释状态则表示当前不使用第三方推送,同时只支持一种第三方推送,不可打开多个第三方推送宏定义的注释,如图所示:
B.     加载控制界面
1.        框架工程内提供的代码已经可以在不修改任何代码的前提下,进行到控制界面的跳转操作,开发者只需要关心操作界面的逻辑即可,如果需要在设备列表界面中点击某设备后,跳转到自己创建的控制器视图中,请在 GosDeviceListActivity.java  文件中修改相应跳转参数,如图所示,需要修改跳转视图的类定义,如果使用默认提供的空白界面(GosDeviceControlActivity)来进行编写控制界面,可略过此步骤。
2.        在控制界面中注册设备的监听,并实现回调,如图:
用于接收SDK上报的设备状态变化通知,将接收到的上报数据解析并更新界面。

3.        控制界面中对当前设备设置监听,例如:device.setListener(gizWifiDeviceListener);                                                                             
4.        实现控制命令下发,需要调用SDK中GizWifiDevice类实例的接口方法:device.write(concurrentHashMap ,0);                                                                                具体参数解释,请参考SDK使用文档。                                                                                                  
5.        退出控制界面时,需要取消当前设备订阅,调用SDK中GizWifiDevice类实例的接口方法,将参数设为False:                                                  device.setSubscribe(false);
C.     设置界面增加菜单项及点击处理
如果需要在设置界面进行列表项的增加或修改,需要在activity_gos_settings.xml中添加相应控件,并在模块(SettingsModule)中的GosSettingsActivity.java文件中添加相应事件。
4.  常见问题A.     支持Android版本?
目前支持Android 4.0及更高版本系统。

B.     关于修改版本号
1.        在工程的AndroidManifest.xml 文件下,修改versionNmae即可更改SettingsModule模块下,关于界面的版本号显示。示例:

C.     关于推送与包名(以下使用集成极光推送示例)
在新建工程下,替换框架内模块使用时。需要将AndroidManifest.xml 文件package与申请推送时所填包名相对应,并修改集成推送时相应位置。示例:
与申请推送应用保持一致,示例:
修改集成推送的相应位置:
在工程的AndroidManifest.xml文件中修改
1.        <permission android:name=”您应用的包名.permission.JPUSH_MESSAGE” android:protectionLevel=”signature” />
(详见开源APP套件的AndroidManifest.xml文件第13行)
2.        <uses-permission android:name=”您应用的包名.permission.JPUSH_MESSAGE” />
(详见开源APP套件的AndroidManifest.xml文件第17行)
3.        DaemonService下<category android:name=”您应用的包名” />
(详见开源APP套件的AndroidManifest.xml文件第159行)
4.        PushPeceiver下<category android:name=”您应用的包名” />
(详见开源APP套件的AndroidManifest.xml文件第170行)
5.        PushActivity下<category android:name=”您应用的包名” />
(详见开源APP套件的AndroidManifest.xml文件第193行)
6.        JPushReceiver下<category android:name=”您应用的包名” />
(详见开源APP套件的AndroidManifest.xml文件第224行)
7.        <meta-data android:name=”JPUSH_APPKEY” android:value=”Your AppKey” />
(详见开源APP套件的AndroidManifest.xml文件第240行)


1、机智云QQ群: 287087942
机智云爱好者-APP开发群: 599735135
QQ群目前非常活跃,欢迎大家参与进来,交流,讨论,答疑,解惑~~
2、机智云微信公众号: 机智云 gizwits /   机智云智能宠物屋go-kit
关注机智云Gizwits官方公众号随时掌握最新资讯和活动信息
您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

加入Q群 返回顶部

版权与免责声明 © 2006-2024 Gizwits IoT Technology Co., Ltd. ( 粤ICP备11090211号 )

快速回复 返回顶部 返回列表