android项目导入zoom视频会议流程

目录

一、新建项目

二、将两个文件包拷贝到项目目录下

三、在settings.gradle 中加入

四、在app的build.gradle中加入

五、app的build.gradle中;

六、将PomeloService拷贝到项目中,

七、编译项目,查漏补缺

八、在MyApplication进行初始化;

九、在Manifest中加入对应权限;


一、新建项目

新建项目后,app的build.gradle文件中targetSdkVersion设置为26或以下

apply plugin: 'com.android.application'

android {
    compileSdkVersion 26
    defaultConfig {
        applicationId "com.ph.zoomdemo"
        minSdkVersion 19
        targetSdkVersion 26
        versionCode 1
        versionName "1.0"
        testInstrumentationRunner "android.support.test.runner.AndroidJUnitRunner"

        ndk {
            //设置支持的SO库架构,注意三方sdk需要各种架构so库,否则仅armeabi 会报错:device supports x86,armeabi-v7a,
            //  but apk only support armeabi
            abiFilter "armeabi-v7a" //, "armeabi", "x86" 按需设置
        }

    }
    buildTypes {
        release {
            minifyEnabled false
            proguardFiles getDefaultProguardFile('proguard-android.txt'), 'proguard-rules.pro'
        }
    }
}

configurations.all {
    resolutionStrategy.force 'com.android.support:support-annotations:26.1.0'
}

dependencies {
    implementation fileTree(dir: 'libs', include: ['*.jar'])
    implementation 'com.android.support:appcompat-v7:26.1.0'
    implementation 'com.android.support.constraint:constraint-layout:1.1.3'
    testImplementation 'junit:junit:4.12'
    androidTestImplementation 'com.android.support.test:runner:1.0.2'
    androidTestImplementation 'com.android.support.test.espresso:espresso-core:3.0.2'

    //butterknife
    compile 'com.jakewharton:butterknife:8.5.1'
    annotationProcessor 'com.jakewharton:butterknife-compiler:8.5.1'
    //gson
    compile 'com.google.code.gson:gson:2.7'

    //glide
    compile 'com.github.bumptech.glide:glide:3.6.1'

    //okhttp3
    compile 'com.squareup.okhttp3:okhttp:3.4.2'
    compile 'com.squareup.okio:okio:1.7.0'

    //zoom视频聊天依赖包
    compile project(':zoomcommonlib')
    compile project(':zoommobilertc')

}

二、将两个文件包拷贝到项目目录下

如下图

android项目导入zoom视频会议流程_第1张图片

三、在settings.gradle 中加入

include ':zoomcommonlib'    

include ':zoommobilertc'

android项目导入zoom视频会议流程_第2张图片

四、在app的build.gradle中加入

compile project(':zoomcommonlib')  

compile project(':zoommobilertc')

五、app的build.gradle中;

(提醒:不加这个会报错)

ndk {
            //设置支持的SO库架构,注意三方sdk需要各种架构so库,否则仅armeabi 会报错:device supports x86,armeabi-v7a,
            //  but apk only support armeabi
            abiFilter "armeabi-v7a" //, "armeabi", "x86" 按需设置
        }

android项目导入zoom视频会议流程_第3张图片

六、将PomeloService拷贝到项目中,

PomeloService拷贝后,声明PomeloService

其他所需的东西拷贝进去(java目录下建包 org.pomelo.network,并把对应文件拷贝进去);

android项目导入zoom视频会议流程_第4张图片

七、编译项目,查漏补缺

把一些需要设置和拷贝的东西加入进项目

八、在MyApplication进行初始化;

记得在Manifest文件中配置application name:

public class App extends Application {

    //上下文
    private static Context mContext;
    private static int mMainThreadId;
    private static Handler mMainThreadHandler;

    private static final String APP_KEY = "JalUzHrB9MVQy21CPYDcVn9FKhEyVl0EtW5i";
    private static final String APP_SECRET = "Z4mVMhT1GMkBGJr3bvqQ59Eiv94B58ooNUtD";
    private static final String WEB_DOMAIN = "www.zoomus.cn";

    @Override
    public void onCreate() {
        super.onCreate();

        mContext = getApplicationContext();
        //主线程ID
        mMainThreadId = android.os.Process.myTid();
        //主线程Handler
        mMainThreadHandler = new Handler();

        OkHttpSingleton.getInstance().init(this);

        initZoomSDK();

    }

    public static Context getContext() {
        return mContext;
    }

    //获取主线程id
    public static int getMainThreadId() {
        return mMainThreadId;
    }

    //获取主线程
    public static Handler getMainThreadHandler() {
        return mMainThreadHandler;
    }

    @Override
    protected void attachBaseContext(Context base) {
        super.attachBaseContext(base);
//        MultiDex.install(this);
    }

    private void initZoomSDK() {
        ZoomSDK sdk = ZoomSDK.getInstance();
        sdk.initialize(this, APP_KEY, APP_SECRET, WEB_DOMAIN, new ZoomSDKInitializeListener() {
            @Override
            public void onZoomSDKInitializeResult(int errorCode, int internalErrorCode) {
                Log.i("vivi", "onZoomSDKInitializeResult, errorCode=" + errorCode +
                        ", internalErrorCode=" + internalErrorCode);
            }
        });
    }

}

 

九、在Manifest中加入对应权限;

 

    

注意:KUBI_MESSAGE6最后的数字一定不要与其他项目冲突,否则APP间会出现冲突。

 

关于方法数超过65535的问题解决方案:

com.android.dex.DexIndexOverflowException:(包括Android Studio3.0之前和之后解决方案)

 

 

 

 

你可能感兴趣的:(Andorid:视频会议)