# swift 使用Ubiboat for IOS 说明

最后更新时间: 2021年07月26日

# 一、新建swift app工程

参考入门指南 第一步至第三步,工程语言选择swift如下图:

# 二、获取UbiboatIOS

参照入门指南 第四步至第六步。

# 三、桥接Ubiboat

  1. 新建objective-C class如下图:
  2. 新建类 language 选择 objective-C 如下图:
  3. 确认之后弹出如下对话框选择 Create Bridging Header 如下图:![](./images/swiftimg6.png
  4. 工程目录增加了 ”工程名-Bridging-Header.h“文件,删除刚才创建的objective-C class。如下图
  5. ”工程名-Bridging-Header.h“引用UbiboatIOS
    #import <Ubiboat/UbiboatManager.h>

# 四、使用Ubiboat示例

  1. 引用代理协议
    class ViewController: UIViewController,UbNetDelegate{
  2. 实现代理协议
    func ubiboatDelegate(_ dataDic: NSMutableDictionary) {
        switch(dataDic["type"] as! Int){
        case UBiBoatRspMessage.status.rawValue:
            //UBiBoat 状态处理
            print(dataDic["msg"]as! String)
            if((dataDic["status"] as! Int) == 1){
                //每次返回成功,请求附近的人
                manager.getNearPoi(50, type: 1)
            }
            break;
        case UBiBoatRspMessage.getNear.rawValue:
            //处理返回附近的人
            break;
        case UBiBoatRspMessage.getNear.rawValue:
            //处理返回附近某人距离
            break;
        default:
            break;
        }

    }
  1. 创建Ubiboat 单例
    let manager = UbiboatManager.shared()
  2. 初始化Ubiboat参数
    let keyStr = "1d0702e2bbe34984c6eddb583e9464cf"
    let userId = "123456789abc"
	manager.initWithAppKey(keyStr, andWithUserID: userId);
  1. 绑定Ubiboat 代理
    manager.ubNetDelegate = self
  2. 启动Ubiboat
    manager.start()
  3. 获取附近的人
    manager.getNearPoi(50, type: 1)