第一步: 在清单文件中添加AndroidManifest.xml文件
<meta-data android:name="FT_SOURCEID" android:value="${FT_SOURCEID}" />
第二步:app的build.gradle中添加如下代码
import org.apache.tools.ant.taskdefs.condition.Os
apply plugin: ‘com.android.application’
android {
compileSdkVersion PROP_COMPILE_SDK_VERSION.toInteger()
buildToolsVersion PROP_BUILD_TOOLS_VERSION
defaultConfig {
applicationId "com.xxxx.xxxx.xxx"
minSdkVersion 16
targetSdkVersion 18
versionCode 3804
versionName "3.8.04"
}
sourceSets.main {
java.srcDir "src"
res.srcDir "res"
jniLibs.srcDir "libs"
manifest.srcFile "AndroidManifest.xml"
}
signingConfigs {
release {
storeFile file('../../xxxx.keystore')
storePassword "xxxx"
keyAlias "xxxx"
keyPassword "xxxx"
}
debug {
storeFile file('../../xxxx.keystore')
storePassword "xxxx"
keyAlias "xxxx"
keyPassword "xxxx"
}
}
buildTypes {
release {
minifyEnabled false
zipAlignEnabled true
signingConfig signingConfigs.release
proguardFiles getDefaultProguardFile('proguard-android.txt'), 'proguard-rules.pro'
}
debug {
debuggable true
minifyEnabled false
zipAlignEnabled true
signingConfig signingConfigs.debug
proguardFiles getDefaultProguardFile('proguard-android.txt'), 'proguard-rules.pro'
}
}
//添加代码 一定要加
productFlavors.all { flavor ->
flavor.manifestPlaceholders = [FT_SOURCEID: name]
}
flavorDimensions "color" //不加这个报错
//多渠道id appid
productFlavors {
Ab_7pro {//7po
manifestPlaceholders = [FT_SOURCEID:"265"] //渠道号1
applicationId "com.xxxx.xxxx.xxx" //包名1
dimension "color"
}
Ab_nfas {//nfas
manifestPlaceholders = [FT_SOURCEID:"268"] //渠道号2
applicationId "com.xxxx.xxxx.xxx" //包名2
dimension "color"
}
Ab_pptv {//pptv
manifestPlaceholders = [ FT_SOURCEID:"264"] //渠道号3
applicationId "com.xxxx.xxxx.xxx" //包名3
dimension "color"
}
Ab_wj { //微鲸263
manifestPlaceholders = [FT_SOURCEID:"263"] //渠道号4
applicationId "com.xxxx.xxxx.xxx"包名4
dimension "color"
}
}
}
android.applicationVariants.all { variant ->
// delete previous files first
delete “
b
u
i
l
d
D
i
r
/
i
n
t
e
r
m
e
d
i
a
t
e
s
/
a
s
s
e
t
s
/
{buildDir}/intermediates/assets/
buildDir/intermediates/assets/{variant.dirName}”
variant.mergeAssets.doLast {
copy {
from "${buildDir}/../../../../../res"
into "${buildDir}/intermediates/assets/${variant.dirName}/res"
}
copy {
from "${buildDir}/../../../../../src"
into "${buildDir}/intermediates/assets/${variant.dirName}/src"
}
copy {
from "${buildDir}/../../../../../jsb-adapter"
into "${buildDir}/intermediates/assets/${variant.dirName}/jsb-adapter"
}
// copy {
// from “
b
u
i
l
d
D
i
r
/
.
.
/
.
.
/
.
.
/
.
.
/
.
.
/
m
a
i
n
.
j
s
"
/
/
f
r
o
m
"
{buildDir}/../../../../../main.js" // from "
buildDir/../../../../../main.js"//from"{buildDir}/…/…/…/…/…/project.json”
// into “
b
u
i
l
d
D
i
r
/
i
n
t
e
r
m
e
d
i
a
t
e
s
/
a
s
s
e
t
s
/
{buildDir}/intermediates/assets/
buildDir/intermediates/assets/{variant.dirName}”
// }
copy {
from “
b
u
i
l
d
D
i
r
/
.
.
/
a
s
s
e
t
s
"
i
n
t
o
"
{buildDir}/../assets" into "
buildDir/../assets"into"{buildDir}/intermediates/assets/${variant.dirName}”
}
}
//自动输出apk包+版本号
android.applicationVariants.all { variant ->
variant.outputs.all {
outputFileName = “xxxxxx_xxx_xxx_
v
a
r
i
a
n
t
.
n
a
m
e
−
{variant.name}-
variant.name−{variant.versionName}.apk”
}
}
dependencies {
implementation fileTree(include: [’.jar’, '.aar’], dir: ‘libs’)
implementation fileTree(include: [’*.jar’], dir: ‘…/…/eclipse_lib/android/java/libs’)
implementation project(’:libcocos2dx’)
implementation files(‘libs/iapppay_plugin.jar’)
}