手机看片1024精品国产,丁香婷婷成人,午夜国产一级片,黄色片网站在线免费观看,男人的天堂香蕉在线视频,一级特黄毛片在线,中文日产国产精品久久

智慧服務(wù),成就美好體驗(yàn) 項(xiàng)目咨詢

主頁(yè) > 服務(wù)與支持 > 開(kāi)發(fā)平臺(tái) > 客戶端SDK參考 > iOS UI SDK > 快速入門 快速入門

入門使用

快速入門

更新時(shí)間:2019-11-20

以實(shí)現(xiàn)登錄企業(yè)云通信服務(wù)器并加入視頻會(huì)議為例,介紹如何使用iOS SDK進(jìn)行二次集成開(kāi)發(fā)。

開(kāi)發(fā)環(huán)境準(zhǔn)備

在開(kāi)發(fā)的過(guò)程中請(qǐng)滿足如下環(huán)境要求。

表1 環(huán)境要求

環(huán)境和工具名稱

版本要求

說(shuō)明

操作系統(tǒng)

Mac OSX High Sierra 10.13.6及以上

-

Xcode

Xcode9.4.1及以上

其他IDE工具。

iOS系統(tǒng)版本

iOS9.0及以上,64位設(shè)備

-

會(huì)議云服務(wù)的用戶帳號(hào)

-

帳號(hào)可來(lái)源于華為公有云。開(kāi)通方法請(qǐng)參見(jiàn)“開(kāi)發(fā)前準(zhǔn)備”。

SDK快速集成

  1. 在Mac電腦上解壓下載到的“CloudLinkMeeting_iOS_SDK.zip”軟件包。
  2. 在本地創(chuàng)建名為“CloudLinkDemo”的文件夾,將軟件包解壓到此文件夾下,得到如下圖所示5個(gè)framework和1個(gè)xml文件。分別為CloudLink_Meeting.framework、CloudLinkMeetingScreenShare.framework、config.xml、Cordova.framework、sqlite_plugin.framework、websockets.framework。

     

    圖1 本地目錄 

     

  3. 打開(kāi)“Xcode”軟件。
  4. 單擊File>New>Project...,選擇Single View App>Next,填寫(xiě)應(yīng)用信息,選擇已創(chuàng)建的CloudLinkMeetingDemo文件夾作為存儲(chǔ)路徑,選擇“Create”完成新工程創(chuàng)建,具體步驟可參考下圖。

     

    圖2 選擇創(chuàng)建新工程 
    圖3 選擇新工程模板為Single View App 
    圖4 新建工程保存到CloudLinkMeetingDemo目錄 

     

  5. 步驟1中解壓得到的5個(gè)FrameWork和1個(gè)xml文件放到工程目錄下,跟工程文件同一目錄下。

     

    圖5 工程目錄 

     

  6. 進(jìn)行工程文件的配置。

     

    1. Build Phases頁(yè)簽項(xiàng)配置,包含鏈接文件配置和拷貝文件配置,分別為:Link Binary With Libraries和Copy Files(默認(rèn)沒(méi)有此項(xiàng),可在此頁(yè)簽上單擊+號(hào)添加)。

      兩種配置下需要配置的文件分別如下圖所示,需要按照此順序進(jìn)行配置。

      圖6 Link Binary With Libraries配置 
      圖7 Copy Files配置 
    2. General配置,需要配置Deployment Info,開(kāi)發(fā)證書(shū)請(qǐng)根據(jù)自己需要進(jìn)行配置。
      圖8 General中Deployment Info配置 
    3. Capabilities配置,需要打開(kāi)應(yīng)用的Background Modes。
      圖9 Background Modes配置 
    4. Info配置,需要配置權(quán)限提示語(yǔ)(語(yǔ)言信息根據(jù)自己需要進(jìn)行設(shè)置)和拉起第三方應(yīng)用等信息,需要配置的字段如下:
      • Privacy - Media Library Usage Description 使用系統(tǒng)相冊(cè)權(quán)限提示語(yǔ)
      • Privacy - Calendars Usage Description 使用系統(tǒng)日歷權(quán)限提示語(yǔ)
      • Privacy - Camera Usage Description 使用相機(jī)權(quán)限提示語(yǔ)
      • Privacy - Microphone Usage Description 使用麥克風(fēng)權(quán)限提示語(yǔ)
      • Privacy - Bluetooth Peripheral Usage Description 使用藍(lán)牙權(quán)限提示語(yǔ)
      • Privacy - Contacts Usage Description 使用通訊錄權(quán)限提示語(yǔ)
      • Privacy - Photo Library Usage Description 使用相冊(cè)權(quán)限提示語(yǔ)
      • App Transport Security Settings--Allow Arbitrary Loads 需要設(shè)置為YES
      • LSApplicationQueriesSchemes---新增mailto,類型均為String
      圖10 Info信息配置 
    5. Build Settings配置,需要配置Enable Bitcode設(shè)置為NO,Valid Architectures設(shè)置為arm64,添加Other Link Flags為-ObjC。
      圖11 Build Setting配置 
      圖12 Valid Architectures設(shè)置 
      圖13 添加Other Link Flags為-ObjC 
    6. 將xml文件添加到工程中,右鍵工程選擇“Add Files to "CloudLinkDemo"...”,然后在下一步選中config.xml文件,單擊“add”,完成xml文件添加。
      圖14 右鍵選擇添加文件 
      圖15 選擇要添加的config.xml文件 
      圖16 完成xml文件的添加的效果 

     

  7. 添加代碼如下。

     

    在調(diào)用CloudLinkMeeting接口的文件中必須包含以下頭文件。

    #import <CloudLink_Meeting/CloudLinkMeeting.h>
     

    CloudLinkMeeting包含了如下這幾個(gè)接口。

    /**
     初始化配置接口
     @param initParam 初始化參數(shù)
     @param completionBlock 完成回調(diào)
     */
    - (void)clm_init:(clmInitParam *)initParam completionBlock:(clmActionCompletionBlock)completionBlock;
    /**
     登錄接口
    
     @param loginParam 登錄參數(shù)
     @param completionBlock 完成回調(diào)(需要先初始化才能調(diào)用)
     */
    - (void)clm_login:(clmLoginParam *)loginParam
            completionBlock:(clmActionCompletionBlock)completionBlock;
    
    
    /**
     創(chuàng)建會(huì)議接口
    
     @param createParam 創(chuàng)會(huì)參數(shù)
     @param completionBlock 完成回調(diào)(需要先初始化登錄才能調(diào)用)
     */
    - (void)clm_createMeeting:(clmCreateMeetingParam *)createParam
              completionBlock:(clmActionCompletionBlock)completionBlock;
    /**
     攜帶與會(huì)者創(chuàng)建會(huì)議接口
    
     @param createParam 創(chuàng)會(huì)參數(shù)
     @param participants 與會(huì)者參數(shù)
     @param completionBlock 完成回調(diào)(需要先初始化登錄才能調(diào)用)
     */
    - (void)clm_createMeeting:(clmCreateMeetingParam *)createParam
             withParticipants:(NSArray <clmMeetingParticipantParam *>*)participants
              completionBlock:(clmActionCompletionBlock)completionBlock;
    /**
     使用會(huì)議ID入會(huì)接口
    
     @param joinParam 加入會(huì)議參數(shù)
     @param completionBlock 完成回調(diào)(需要先初始化登錄才能調(diào)用)
     */
    - (void)clm_joinMeetingById:(clmJoinMeetingParam *)joinParam
                completionBlock:(clmActionCompletionBlock)completionBlock;
     

    需要在demo中新增控件分別用于四個(gè)接口的調(diào)用使用,其中后面三個(gè)接口需要參數(shù)輸入,因此需要有UI控件界面支持參數(shù)輸入。

    下面分別列舉各個(gè)接口的調(diào)用示例;

    1. 初始化接口:(其他接口調(diào)用之前必須先初始化)

    - (void)clm_init:(clmInitParam *)initParam completionBlock:(clmActionCompletionBlock)completionBlock

    使用示例如下。
    - (void)initClm {
    //調(diào)用接口
        CloudLinkMeeting *clm = [CloudLinkMeeting sharedInstance];
    //init第一個(gè)參數(shù)為配置信息字符串,為預(yù)留,沒(méi)有特殊需求的時(shí)候可以傳遞nil
        [clm clm_init:nil completionBlock:^(NSError *error) {
    //響應(yīng)回調(diào)處理,這里的示例對(duì)返回做了打印處理,error為nil表示成功
             NSLog(@"clm_init result is:%@", error);
        }];
    }
     

    2. 登錄接口:

    - (void)clm_login:(clmLoginParam *)loginParam

    completionBlock:(clmActionCompletionBlock)completionBlock

    使用示例如下。
    - (void)loginToClm {
    //登錄參數(shù)準(zhǔn)備,這里以TextField輸入為示例
        CloudLinkMeeting *clm = [CloudLinkMeeting sharedInstance];
        clmLoginParam *loginParam = [[clmLoginParam alloc] init];
        loginParam.account = self.userAccountField.text;
        loginParam.password = self.userPasswordField.text;
    //調(diào)用接口
        [clm clm_login:loginParam completionBlock:^(NSError *error) {
    //響應(yīng)回調(diào)處理,這里的示例對(duì)返回做了打印處理,error為nil表示成功
            NSLog(@"clm_login result is:%@", error);
        }];
    }
     

    3.創(chuàng)會(huì)接口:

    - (void)clm_createMeeting:(clmCreateMeetingParam *)createParam

    completionBlock:(clmActionCompletionBlock)completionBlock;

    使用示例如下。

    - (void)createClmConf {
    //創(chuàng)會(huì)參數(shù)準(zhǔn)備,這里以TextField輸入作為示例
        CloudLinkMeeting *clm = [CloudLinkMeeting sharedInstance];
        clmCreateMeetingParam *param = [[clmCreateMeetingParam alloc] init];
        param.meetingSubject = self.subjectTextField.text;
        param.meetingType = (self.mediaTypeSwitch.isOn ? CONF_MEDIA_FLAG_VIDEO_DATA : CONF_MEDIA_FLAG_VOICE_DATA);
    //調(diào)用接口
        [clm clm_createMeeting:param completionBlock:^(NSError *error) {
    //響應(yīng)回調(diào)處理,這里的示例對(duì)返回做了打印處理,error為nil表示成功
            NSLog(@"create clm conf ,error is:%@", error);
        }];
    }
     

    4.創(chuàng)會(huì)接口(攜帶與會(huì)者):

    - (void)clm_createMeeting:(clmCreateMeetingParam *)createParam

    withParticipants:(NSArray<clmMeetingParticipantParam *> *)participants

    completionBlock:(clmActionCompletionBlock)completionBlock;

    使用示例如下。
    - (void)createClmConfWithParticipants {
    //創(chuàng)會(huì)參數(shù)準(zhǔn)備,這里以TextField輸入作為示例
        CloudLinkMeeting *clm = [CloudLinkMeeting sharedInstance];
        clmCreateMeetingParam *param = [[clmCreateMeetingParam alloc] init];
        param.meetingSubject = self.subjectTextField.text;
        param.meetingType = (self.mediaTypeSwitch.isOn ? CONF_MEDIA_FLAG_VIDEO_DATA : CONF_MEDIA_FLAG_VOICE_DATA);
    //與會(huì)者參數(shù)準(zhǔn)備,這里以TextField輸入為示例,這里僅添加一個(gè)與會(huì)者作為示例
        clmMeetingParticipantParam *participant = [[clmMeetingParticipantParam alloc] init];
        participant.number = self.participantNumberTextField.text;
        participant.name = self.participantNameTextField.text;
        NSarray *participants = @[participant];
    //調(diào)用接口
        [clm clm_createMeeting:param 
              withParticipants:participants
               completionBlock:^(NSError *error) {
    //響應(yīng)回調(diào)處理,這里的示例對(duì)返回做了打印處理,error為nil表示成功
            NSLog(@"create clm conf ,error is:%@", error);
        }];
    }
     

    5.入會(huì)接口:

    - (void)clm_joinMeetingById:(clmJoinMeetingParam *)joinParam

    completionBlock:(clmActionCompletionBlock)completionBlock;

    - (void)joinClmConf {
    //入會(huì)參數(shù)準(zhǔn)備,這里以TextField輸入作為示例
        CloudLinkMeeting *clm = [CloudLinkMeeting sharedInstance];
        clmJoinMeetingParam *param = [[clmJoinMeetingParam alloc] init];
        param.meetingID = self.confIdField.text;
        param.accessCode = self.accessCodeField.text;
    //調(diào)用接口
        [clm clm_joinMeetingById:param completionBlock:^(NSError *error) {
    //響應(yīng)回調(diào)處理,這里的示例對(duì)返回做了打印處理,error為nil表示成功
            NSLog(@"clm join meeting, result is:%@", error);
            }
        }];
    }
     

    完成上述接口調(diào)用代碼后即可完成基于CloudLinkMeeting iOS的demo,更詳細(xì)信息請(qǐng)參考CloudLinkMeetingDemo樣例代碼。