apply plugin: 'com.android.application'
apply plugin: 'img-optimizer'
apply plugin: 'com.google.gms.google-services'

android {
    dexOptions {
        jumboMode = true
    }
  /*  applicationVariants.all { variant ->
        variant.mergeAssetsProvider.configure {
            doLast {
                delete(fileTree(dir: outputDir, includes: [
                        'model/ai_bgseg_green.bundle',
                        'model/ai_face_processor.bundle',
                        'model/ai_face_processor_lite.bundle',
                        'model/ai_hairseg.bundle',
                        'model/ai_hand_processor.bundle',
                        'model/ai_human_processor.bundle',
                        'model/ai_human_processor_gpu.bundle',
                        'model/ai_human_processor_mb_fast.bundle',
                        'graphics/body_slim.bundle',
                        'graphics/controller_cpp.bundle',
                        'graphics/face_beautification.bundle',
                        'graphics/face_makeup.bundle',
                        'graphics/fuzzytoonfilter.bundle',
                        'graphics/fxaa.bundle',
                        'graphics/tongue.bundle'
                ]))
            }
        }
    }*/

    compileSdkVersion rootProject.ext.android.compileSdkVersion
    buildToolsVersion rootProject.ext.android.buildToolsVersion
    packagingOptions {
        pickFirst "lib/armeabi/libyuvutils.so"
        pickFirst "lib/arm64-v8a/libyuvutils.so"
        pickFirst "lib/armeabi-v7a/libyuvutils.so"
        pickFirst "lib/armeabi/libyuvtools.so"
        pickFirst "lib/arm64-v8a/libyuvtools.so"
        pickFirst "lib/armeabi-v7a/libyuvtools.so"
        exclude "lib/arm64-v8a/libmmcv_api_handgesture.so"
        exclude "lib/arm64-v8a/libmmcv_api_express.so"
        exclude "lib/arm64-v8a/libMediaEncoder.so"
        exclude "lib/arm64-v8a/libarcore_sdk_c.so"
        exclude "lib/arm64-v8a/libmediadecoder.so"
        exclude "lib/arm64-v8a/libMediaMuxer.so"
        exclude "lib/arm64-v8a/libarcore_sdk_jni.so"
        exclude "lib/arm64-v8a/libMediaUtils.so"
        exclude "lib/arm64-v8a/libcosmosffmpeg.so"

    }
    compileOptions {
        sourceCompatibility JavaVersion.VERSION_1_8
        targetCompatibility JavaVersion.VERSION_1_8
    }
    signingConfigs {
        release {
            keyAlias 'phonelive'
            keyPassword 'phonelive'
            storeFile file('../hdl.jks')
            storePassword 'phonelive'
        }
        //陌陌本地配置需要
        config {//TODO BEAUTYSDK 这里需要配置keystore相关信息
            keyAlias 'phonelive'
            keyPassword 'phonelive'
            storeFile file('../hdl.jks')//keystore的存放路径
            storePassword 'phonelive'
            v2SigningEnabled true   // android 5.0-8.0,必须用V2,否则会有安全问题
            v1SigningEnabled true
        }
    }
    aaptOptions {
        cruncherEnabled = false
        useNewCruncher = false
    }

    packagingOptions {//加上这写代码 为了mob兼容性androidx
      //  pickFirst 'META-INF/*'
    }


    defaultConfig {
//        applicationId "myname.pdlive.shayu"
        applicationId "com.pdlive.shayu"
        minSdkVersion rootProject.ext.android.minSdkVersion
        //版本在这里修改
        targetSdkVersion rootProject.ext.android.targetSdkVersion
        versionCode rootProject.ext.android.versionCode
        versionName rootProject.ext.android.versionName
        manifestPlaceholders = rootProject.ext.manifestPlaceholders
        multiDexEnabled true
        ndk {
            // TODO: 谷歌商城需要兼容两个平台
            abiFilters "armeabi-v7a", "arm64-v8a"
        }
        javaCompileOptions {
            annotationProcessorOptions {
                arguments = [AROUTER_MODULE_NAME: project.getName()]
            }
        }

    }
    buildTypes {
        release {
            minifyEnabled false
            proguardFiles getDefaultProguardFile('proguard-android.txt'), 'proguard-rules.pro'
            signingConfig signingConfigs.release
        }
        debug {
            minifyEnabled false
            signingConfig signingConfigs.release
        }
    }
    lintOptions {
        checkReleaseBuilds false
        abortOnError false
    }
}


repositories {
    flatDir {
        dirs 'libs', '../libs'
    }
}

dependencies {
    implementation 'androidx.constraintlayout:constraintlayout:1.1.3'
    implementation fileTree(dir: 'libs', include: ['*.jar', '*.aar'])
    //直播
    api project(':main')
    //短视频
    api project(':video')

    annotationProcessor rootProject.ext.dependencies["arouter-compiler"]

  //  implementation rootProject.ext.dependencies["leakcanary"]


}
// 链接包需要注释掉 否正无法更新 谷歌包需要打开
project.afterEvaluate {
    android.applicationVariants.all { variant ->
        variant.outputs.each { output ->
            output.processResources.doFirst { pm->
                String manifestPath = output.processResources.manifestFile;
                def manifestContent = file(manifestPath).getText()
                manifestContent = manifestContent.replace('android.permission.REQUEST_INSTALL_PACKAGES', '')
                file(manifestPath).write(manifestContent)
            }
        }
    }
}