当前位置: 首页 > 软件库 > 其他开源 > 物联网 >

GizOpenSource_AppKit_iOS

机智云app源码(ios框架)
授权协议 MIT
开发语言 Objective-C
所属分类 其他开源、 物联网
软件类型 开源软件
地区 国产
投 递 者 江温书
操作系统 iOS
开源组织
适用人群 未知
 软件概览

这是机智云开源的 ios 版本物联网APP框架。开源框架已实现用户登录注册、设备配置、订阅等功能

andriod版本的开源框架见:https://github.com/gizwits/GizOpenSource_AppKit_Android

使用机智云物联网开源APP之前,需要先在机智云开发平台创建您自己的产品和应用。

开源APP需要使用您申请的AppId、AppSecret以及您自己的产品ProductKey才能正常运行。

具体申请流程请参见:http://docs.gizwits.com/hc/

开源框架工程可通过修改配置文件配置开发者的个人应用信息,请参考使用说明中的 第5节 配置文件说明 进行替换。

使用QQ、微信登录或百度或极光推送功能之前,需要您先到相应网站申请对应的应用信息,在配置文件中作相应的替换。

GizWifiSDK 版本号

2.05.05.21618

功能介绍

本文档为机智云物联网开源基础App套件使用说明,旨在为机智云物联网开发者提供一个快速开发模板,可在此工程基础上快速开发智能设备App,或参考这里的相关代码进行开发。

目录结构说明

> Lib:包括 GizWifiSDK 在内的的第三方库目录

> GizOpenSourceModules:组成模块

>> CommonModule // 公共方法类、资源文件 及 自定义 Cell

>> ConfigModule // 设备配置模块,包含 AirLink 及 SoftAP

>> UserModule // 用户模块,包含 用户登录、用户注册、找回密码

>> DeviceModule // 设备模块,包含 设备列表

>> SettingsModule // 设置模块,包含 设置菜单 及其 包含的子菜单项(关于等)

>> PushModule // 推送模块,包含 百度和极光的推送SDK 集成封装

使用说明

1. 默认程序入口

默认程序入口在 UserModule 中的 LoginViewController。

2. 更改启动后的载入界面

如果要启动程序直接进入设备列表,可在 LoginViewController.m 文件的 “- (void)viewDidLoad” 方法中打开最后一行代码的注释:

[self toDeviceListWithoutLogin:nil]

3. 加载控制界面

代码位于 AppDelegate.m 文件中的 didFinishLaunchingWithOptions 方法第一行:

[GosCommon sharedInstance].controlHandler = ^(GizWifiDevice device, UIViewController deviceListController) {
    GosDeviceController *devCtrl = [[GosDeviceController alloc] initWithDevice:device];
    [deviceListController.navigationController pushViewController:devCtrl animated:YES];
};

修改 GosDeviceController 类为开发者自己编写的控制界面的类即可。

4. 设置界面

设置界面位于 SettingsModule 中的 GosSettingsViewController,按照 UITableView 实现官方的委托代理方法即可。

5. 配置文件说明

配置文件位置:GOpenSourceModules/CommonModule/UIConfig.json

配置文件可对程序样式及机智云appid等进行配置。

可配置参数有:

app_id:机智云 app id
app_secret:机智云 app secret
product_key:机智云 product key
wifi_type_select:默认配置模块wifi模组选择功能是否开启
tencent_app_id:qq登录 app id
wechat_app_id:微信登录 app id
wechat_app_secret:微信登录 app secret
push_type:推送类型 【0:关闭,1:极光,2:百度】
jpush_app_key:极光推送 app key
bpush_app_key:百度推送 app key
openAPIDomain:openAPI 域名及端口,格式:“api.gizwits.com”。要指定端口,格式为:”xxx.xxxxxxx.com:81&8443”
siteDomain:site 域名及端口,格式:“site.gizwits.com”。要指定端口,格式为:”xxx.xxxxxxx.com:81&8443”
pushDomain:推送绑定服务器 域名及端口,格式:“push.gizwits.com”。要指定端口,格式为:”xxx.xxxxxxx.com:81&8443”
buttonColor:按钮颜色
buttonTextColor:按钮文字颜色
navigationBarColor:导航栏颜色
navigationBarTextColor:导航栏文字颜色
configProgressViewColor:配置中界面 progress view 颜色
statusBarStyle:状态文字栏颜色 【0:黑色,1:白色】
addDeviceTitle:添加设备界面 导航栏标题文字
qq:是否打开QQ登录【true:打开】
wechat:是否打开微信登录【true:打开】
anonymousLogin:是否打开匿名登录【true:打开】

具体细节可以参考【开源框架工程使用文档】:http://docs.gizwits.com/hc/kb/article/181715/

6. 第三方账号登录的使用

使用微信、QQ登录功能,需要在info.plist设置URLScheme,登录完成后可从第三方应用跳回此应用

使用QQ,把tencentxxx中的"xxx"换成UIConfig.json中对应的"tencent_app_id"字段的值
使用微信,把"xxx"换成UIConfig.json中对应的"wechat_app_id"字段的值

程序调试

您可以使用虚拟设备或者实体智能设备搭建调试环境。

▪ 虚拟设备
    机智云官网提供GoKit虚拟设备的支持,链接地址:
http://dev.gizwits.com/zh-cn/developer/product/

▪ 实体设备
    GoKit开发板。您可以在机智云官方网站上免费预约申请,申请地址:
http://www.gizwits.com/zh-cn/gokit

GoKit开发板提供MCU开源代码供智能硬件设计者参考,请去此处下载:https://github.com/gizwits/gokit-mcu

问题反馈

您可以给机智云的技术支持人员发送邮件,反馈您在使用过程中遇到的任何问题。
邮箱:club@gizwits.com
网站:www.gizwits.com
技术社区:http://club.gizwits.com/forum.php
  • 1 . IBOutlet和IBAction关键字 IBOutlet:的定义没有任何作用,因此将不会对他进行编译。 IBAction:定义为void,即以IBAction声明的方法的返回类型是void(也就是什么都不返回)。 IBOutlet和IBAction实际上是为Interface Builder(IB)以及阅读代码的人提供的标记。通过查找这两个关键字,Interface Builder知道某

  • 1.AFNetworking   目前比较推荐的iOS网络请求组件,默认网络请求是异步,通过block回调的方式对返回数据进行处理。 2.FMDB   对sqlite数据库操作进行了封装,demo也比较简单。 3.MBProgressHUD   也是iOS项目常用的一个组件,用于显示过渡效果的,比如网络请求之前显示loading,网络结束隐藏loading。建议封装在BaseViewControl

  • 一、情况1 【file1会被截断】 ofstream out("file1"); ofstream out("file1", ofstream::out); ofstream out("file1", ofstream::out | ofstream::trunc); 二、保留文件内容 【保留文件内容】 ofstream out("file1", ofstream::app); ofstream

  • AVPlayerViewController 一种视图控制器,用于显示来自播放器对象的视频内容以及系统提供的播放控件。 class AVPlayerViewController : UIViewController 总览 使用可以简化向您的应用程序添加与本机系统播放器的样式和功能相匹配的媒体播放功能。因为是系统框架类,所以您的回放应用程序会自动采用新的美学和未来操作系统更新的功能,而无需您进行任

  • C++ 通过以下几个类支持文件的输入输出: ofstream: 写操作(输出)的文件类 (由ostream引申而来) ifstream: 读操作(输入)的文件类(由istream引申而来) fstream: 可同时读写操作的文件类 (由iostream引申而来) 打开文件(Open a file) 对这些类的一个对象所做的第一个操作通常就是将它和一个真正的文件联系起来,也就是说打开一个文件。被打开

  • 1.项目使用的第三方开源库    项目使用了CocoaPods(类似java中的maven)管理常用的第三方库,一些特殊的单独引用,下面介绍下比较好用的几个。 (1)AFNetworking 目前比较推荐的iOS网络请求组件,默认网络请求是异步,通过block回调的方式对返回数据进行处理。 需要注意的是AFNetworking对服务器返回的ContentType要求比较严格,默认只支持applic

  • 1.CocoaSeeds CocoaSeeds跟CocoaPods一样是一款第三方依赖管理工具,如果要在CocoaPods中使用Swift库,则需要强制把CocoaPods中引用的所有库编译为动态库,而动态库需要iOS8以上才支持,如果应用还需要支持到iOS7,显然用CocoaPods就不合适;而CocoaSeeds则将Swift源代码下载到项目中,不需要编译成动态库,从而可以支持到iOS7;以个

  • NSApplication 一个对象,用于管理应用程序的主事件循环和该应用程序的所有对象使用的资源。 class NSApplication : NSResponder 总览 每个应用程序都使用一个实例NSApplication来控制主事件循环,跟踪应用程序的窗口和菜单,将事件分发到适当的对象(即其本身或其窗口之一),设置自动释放池并接收应用程序通知级事件。一个NSApplication对象有一

  • 导语 这篇文章是方便自己学习理解苹果开发者的文档的笔记,希望能给有需要的同学一些帮助,因为自己翻译理解的内容, 必然存在一些不足,还望指出。 Apple Developer (https://developer.apple.com/) *苹果开发者网站 1.Core (1)Application class NSApplication Declaration(声明) class

  • 键盘管理 TPKeyboardAvoiding IQKeyboardManager(1.2.8) 弹窗HUD MBProgressHUD(0.9.2) SVProgressHUD UIView+Toast UIView显示提示Category Toast-Swift Tosat-swift版本 SnailPopupController 快速弹出自定义视图,支持自定义蒙版样式/过渡效果/手势拖动等

 相关资料
  • 概述 180智能编码电机是mbuild平台下入门级编码电机。主要搭配NovaPi主控作为makeX Challenge 赛项的底盘驱动电机。 技术规格 减速比:39.43 额定电压: 12V 空载电流:350mA 通讯端口及协议:串口通信 空载转速:580±10%RPM 功能特性 全金属齿轮组,坚固耐用 内置编码器,能够精确控制机器人运动 自带安装孔,无需电机支架既可稳固连接在makeblock金

  • wh-app-ios 是一个原生的 iOS 应用,用于从白宫网站上获取文章、招聘、直播和视频点播,使用 webView下显示,支持推送。 iPhone 版截图 iPad 版截图 苹果应用商店地址: http://itunes.apple.com/us/app/the-white-house/id350190807?mt=8

  • ProtonMail 官方开源的 iOS 安全邮件客户端,支持 iOS 10-13。 安装地址:https://apps.apple.com/app/protonmail-encrypted-email/id979659905

  • 我的Google App Engine应用程序使用旧(v1)版本的Cloud Endpoint,据我在留档中看到的建议迁移到v2 Cloud Endpoint Framework。 该应用程序使用Java标准环境,是Android和iOS客户端的后端。 目前在API的开发过程中,我同时生成Android的客户端库和iOS移动应用程序的发现文档,如文档中所述: https://cloud.googl

  • 本文向大家介绍CI框架Session.php源码分析,包括了CI框架Session.php源码分析的使用技巧和注意事项,需要的朋友参考一下 CI的Session并不是原生的session,正是我前面所有的cookie based session,另外,CI可以根据用户选择配置是否将session存入数据库中,本人很喜欢这个功能,还有就是“闪出数据”的功能,既闪出数据只是对下次服务器请求可以,之后就

  • 1.介绍一个你的项目 2.问了项目中redis缓存了哪些数据 3.进程和线程的区别 从本质区别、切换的时间开销、通信方式等方面答了 4.前面提到了线程通过进程的共享变量通信,面试官问有哪些解决并发访问问题的方法? 答了 锁和CAS 然后面试官又问什么是CAS 5.Mysql覆盖索引是什么? 6.什么是联合索引?使用联合索引有哪些注意事项? 7.有一个几个T大小的文本文件,每行都是一个长度为32的字