diff --git a/app/build.gradle b/app/build.gradle
index 47494ab66..758323627 100644
--- a/app/build.gradle
+++ b/app/build.gradle
@@ -3,12 +3,9 @@ apply plugin: 'com.android.application'
apply plugin: 'com.android.application'
apply plugin: 'kotlin-android'
apply plugin: 'com.huawei.agconnect'
-apply plugin: 'com.tencent.vasdolly'
apply from: '../mob.gradle'
apply plugin: 'android-junk-code'
-def onlyArm64 = Boolean.parseBoolean(only_arm64)
-
android {
compileSdkVersion COMPILE_SDK_VERSION.toInteger()
@@ -21,20 +18,20 @@ android {
testInstrumentationRunner "androidx.test.runner.AndroidJUnitRunner"
multiDexEnabled true
- ndk {
- abiFilters 'armeabi-v7a', 'arm64-v8a', 'x86'
- }
+// ndk {
+// abiFilters 'armeabi-v7a', 'arm64-v8a', 'x86'
+// }
flavorDimensions 'default'
}
- splits {
- abi {
- enable true
- reset()
- include 'armeabi-v7a', 'arm64-v8a', 'x86'
- universalApk true
- }
- }
+// splits {
+// abi {
+// enable true
+// reset()
+// include 'armeabi-v7a', 'arm64-v8a', 'x86'
+// universalApk true
+// }
+// }
//在apk文件后边生成版本号信息
android.applicationVariants.configureEach { variant ->
@@ -50,7 +47,7 @@ android {
if (abi == null) {
abi = "universal"
}
- outputFileName = "yinmeng_${buildType.name}_v${defaultConfig.versionName}_${abi}_${date}.apk"
+ outputFileName = "yinmeng_${variant.flavorName}_${buildType.name}_v${defaultConfig.versionName}_${defaultConfig.versionCode}_${abi}_${date}.apk"
}
}
@@ -182,6 +179,54 @@ android {
buildToolsVersion = '30.0.3'
+ productFlavors {
+ official {
+ ndk {
+ abiFilters 'armeabi-v7a', 'arm64-v8a'
+ }
+ }
+ mlq {
+ ndk {
+ abiFilters 'x86'
+ }
+ }
+ yingyongbao {
+ ndk {
+ abiFilters 'armeabi-v7a'
+ }
+ }
+ vivo {
+ ndk {
+ abiFilters 'arm64-v8a'
+ }
+ }
+ oppo {
+ ndk {
+ abiFilters 'arm64-v8a'
+ }
+ }
+ xiaomi {
+ ndk {
+ abiFilters 'arm64-v8a'
+ }
+ }
+ huawei {
+ ndk {
+ abiFilters 'arm64-v8a'
+ }
+ }
+ kuaishou_01 {
+ ndk {
+ abiFilters 'armeabi-v7a', 'arm64-v8a'
+ }
+ }
+ }
+ productFlavors.all { flavor ->
+ flavor.manifestPlaceholders = [
+ // 渠道
+ CHANNEL_VALUE : name,
+ ]
+ }
}
@@ -258,7 +303,7 @@ dependencies {
//oppo推送需要
implementation 'commons-codec:commons-codec:1.6'
- api 'com.tencent.vasdolly:helper:3.0.3'
+// api 'com.tencent.vasdolly:helper:3.0.3'
implementation "io.github.tencent:vap:2.0.24"
implementation 'com.github.mmin18:realtimeblurview:1.2.1'
@@ -276,36 +321,20 @@ repositories {
}
-channel {
- //多渠道包的输出目录,默认为new File(project.buildDir,"channel")
- outputDir = new File(project.buildDir, "channelapk")
- //多渠道包的命名规则,默认为:${appName}-${versionName}-${versionCode}-${flavorName}-${buildType}-${buildTime}
- def only64 = onlyArm64 ? "-only64" : ""
- apkNameFormat = 'yinmeng-${buildType}only64-${flavorName}-v${versionName}-${buildTime}'.replace("only64", only64)
- //快速模式:生成渠道包时不进行校验(速度可以提升10倍以上,默认为false)
- fastMode = false
- //buildTime的时间格式,默认格式:yyyyMMdd-HHmmss
- buildTimeDateFormat = 'MMddHHmm'
- //低内存模式(仅针对V2签名,默认为false):只把签名块、中央目录和EOCD读取到内存,不把最大头的内容块读取到内存,在手机上合成APK时,可以使用该模式
- lowMemory = false
-}
-
android.applicationVariants.all { variant ->
print("variant.name=" + variant.name)
- switch (variant.name) {//变体名称,如果没有设置productFlavors就是buildType名称,如果有设置productFlavors就是flavor+buildType,例如(freeRelease、proRelease)
- case "release":
- androidJunkCode.configMap.put(variant.name, {
- packageBase = "com.nnbc123.plugin.ui" //生成java类根包名
- packageCount = 30 //生成包数量
- activityCountPerPackage = 30 //每个包下生成Activity类数量
- excludeActivityJavaFile = false
- //是否排除生成Activity的Java文件,默认false(layout和写入AndroidManifest.xml还会执行),主要用于处理类似神策全埋点编译过慢问题
- otherCountPerPackage = 50 //每个包下生成其它类的数量
- methodCountPerClass = 20 //每个类下生成方法数量
- resPrefix = "mango_" //生成的layout、drawable、string等资源名前缀
- drawableCount = 300 //生成drawable资源数量
- stringCount = 300 //生成string数量
- })
- break
+ if (variant.name.contains("release") || variant.name.contains("Release")) {
+ androidJunkCode.configMap.put(variant.name, {
+ packageBase = "com.nnbc123.plugin.ui" //生成java类根包名
+ packageCount = 30 //生成包数量
+ activityCountPerPackage = 30 //每个包下生成Activity类数量
+ excludeActivityJavaFile = false
+ //是否排除生成Activity的Java文件,默认false(layout和写入AndroidManifest.xml还会执行),主要用于处理类似神策全埋点编译过慢问题
+ otherCountPerPackage = 50 //每个包下生成其它类的数量
+ methodCountPerClass = 20 //每个类下生成方法数量
+ resPrefix = "mango_" //生成的layout、drawable、string等资源名前缀
+ drawableCount = 300 //生成drawable资源数量
+ stringCount = 300 //生成string数量
+ })
}
}
\ No newline at end of file
diff --git a/app/src/main/AndroidManifest.xml b/app/src/main/AndroidManifest.xml
index 594c745a0..d37ae22f8 100644
--- a/app/src/main/AndroidManifest.xml
+++ b/app/src/main/AndroidManifest.xml
@@ -86,6 +86,10 @@
android:theme="@style/MyMaterialTheme"
android:usesCleartextTraffic="true"
tools:replace="android:name,android:allowBackup">
+
+