更新時間:2019-11-20
本文面向有一定Android原生開發(fā)能力的開發(fā)者,以登錄企業(yè)通信云服務(wù)器并發(fā)起和加入視頻會議的流程為例,介紹如何使用SDK 進行二次開發(fā)。
在接入SDK前需要準備如下環(huán)境:
名稱 |
要求 |
---|---|
JDK版本 |
>1.8.0 |
Android系統(tǒng)版本 |
>= Android 5.0 |
最小Android API 版本 |
API 21 |
CPU架構(gòu)支持 |
ARM64、ARMV7 |
集成工具 |
Android Studio |
會議云服務(wù)的用戶帳號 |
帳號可來源于華為公有云。開通方法請參見“開發(fā)前準備”。 |
開發(fā)此Demo時的開發(fā)環(huán)境,目的是為了給編譯運行源碼的人員提供參考。
名稱 |
要求 |
---|---|
Android Studio版本 |
3.2.1 |
JRE |
build 1.8.0_181-b13 |
minSdkVersion |
21 |
gradle version |
gradle-4.6-all |
compileSdkVersion |
28 |
targetSdkVersion |
26 |
gradle plugin version |
com.android.tools.build:gradle:3.2.1 |
buildToolsVersion |
28.0.3 |
SDK依賴了一些優(yōu)秀的開源庫,需要在gradle中添加對這些庫的依賴,用如下方式添加。
maven { url 'http://developer.huawei.com/repo/' } |
添加后的效果如圖。
implementation 'com.huawei.android.hms:push:2.5.2.300' implementation 'com.google.zxing:core:3.3.0' implementation 'com.android.support:appcompat-v7:28.0.0' implementation 'com.android.support:support-v13:28.0.0' implementation "com.tencent.mm.opensdk:wechat-sdk-android-without-mta:1.4.0" implementation "com.github.bumptech.glide:glide:3.8.0" implementation "pub.devrel:easypermissions:2.0.0" |
添加后的效果如下圖所示。
從步驟1中的CloudLinkMeeting_Android_Demo中拷貝DemoActivity中的代碼和res文件夾的資源到自己新建的工程中,或者自己寫好頁面的代碼,調(diào)用SDK提供的接口,實現(xiàn)登錄,創(chuàng)建會議,加入會議等邏輯。
SDK提供的接口如下:
// 初始化 ,該接口已經(jīng)廢棄,請使用下面的初始化接口 void clmInit(@NonNull Application application, Context context, CLMCompleteHandler callback); //初始化 void clmInit(@NonNull Application application, Context context, @NonNull String appId, CLMCompleteHandler callback,CLMNotifyHandler notify, CLMConfig config); //登錄 void clmLogin(@NonNull String account, @NonNull String password, CLMCompleteHandler handler); //創(chuàng)建會議 void clmCreateMeeting(@NonNull String meetingSubject, int meetingType, boolean needPassword, CLMCompleteHandler handler); //加入會議 void clmJoinMeetingById(@NonNull String meetingID, String accessCode, String nickName, CLMCompleteHandler handler); //攜帶與會者創(chuàng)建會議 void clmCreateMeetingWithMembers(@NonNull String meetingSubject, int meetingType, boolean needPassword, Set<CLMParticipant> members, CLMCompleteHandler handler); //SSO登錄 void clmSSOLogin(@NonNull String domain, @NonNull String userTicket, CLMCompleteHandler handler); //注銷 void clmLogout(@NonNull CLMCompleteHandler handler); |
CloudLinkSDK.getOpenApi().clmInit(getActivity().getApplication(), getContext(), "openSDKDemo" ,completeHandler, notifyHandler, config); |
CloudLinkSDK.getOpenApi().clmLogin(account,password,completeHandler); |
CloudLinkSDK.getOpenApi().clmCreateMeeting(subject,type,needPassword,completeHandler); |
CloudLinkSDK.getOpenApi().clmJoinMeetingById(mId,passCode,nickname,completeHandler);
CloudLinkSDK.getOpenApi().clmSSOLogin(domain,userTicket,completeHandler); |
CloudLinkSDK.getOpenApi().clmLogout(completeHandler); |
完成上述調(diào)用步驟,就可以運行 Android SDK的demo工程。