第一次提交
1
app/.gitignore
vendored
Normal file
@@ -0,0 +1 @@
|
||||
/build
|
||||
96
app/agconnect-services.json
Normal file
@@ -0,0 +1,96 @@
|
||||
{
|
||||
"agcgw":{
|
||||
"backurl":"connect-drcn.hispace.hicloud.com",
|
||||
"url":"connect-drcn.dbankcloud.cn",
|
||||
"websocketbackurl":"connect-ws-drcn.hispace.dbankcloud.com",
|
||||
"websocketurl":"connect-ws-drcn.hispace.dbankcloud.cn"
|
||||
},
|
||||
"agcgw_all":{
|
||||
"CN":"connect-drcn.dbankcloud.cn",
|
||||
"CN_back":"connect-drcn.hispace.hicloud.com",
|
||||
"DE":"connect-dre.dbankcloud.cn",
|
||||
"DE_back":"connect-dre.hispace.hicloud.com",
|
||||
"RU":"connect-drru.hispace.dbankcloud.ru",
|
||||
"RU_back":"connect-drru.hispace.dbankcloud.cn",
|
||||
"SG":"connect-dra.dbankcloud.cn",
|
||||
"SG_back":"connect-dra.hispace.hicloud.com"
|
||||
},
|
||||
"websocketgw_all":{
|
||||
"CN":"connect-ws-drcn.hispace.dbankcloud.cn",
|
||||
"CN_back":"connect-ws-drcn.hispace.dbankcloud.com",
|
||||
"DE":"connect-ws-dre.hispace.dbankcloud.cn",
|
||||
"DE_back":"connect-ws-dre.hispace.dbankcloud.com",
|
||||
"RU":"connect-ws-drru.hispace.dbankcloud.ru",
|
||||
"RU_back":"connect-ws-drru.hispace.dbankcloud.cn",
|
||||
"SG":"connect-ws-dra.hispace.dbankcloud.cn",
|
||||
"SG_back":"connect-ws-dra.hispace.dbankcloud.com"
|
||||
},
|
||||
"client":{
|
||||
"cp_id":"30086000686564064",
|
||||
"product_id":"388421841221488221",
|
||||
"client_id":"1162386077042888192",
|
||||
"client_secret":"F0EC8EDDA52B38AE144E494CB505C344801B5DE325B08BDA0D7649B1983DA93F",
|
||||
"project_id":"388421841221488221",
|
||||
"app_id":"108318391",
|
||||
"api_key":"DAEDACb//MwJd8VoONZ8qwwwfyYb5+/Oeh0YImMODrMKXBRAkqUXPO+jp44QOcybtAsiOgIaYZ2Wgor4WLQTbhJYtLxHmmFE9Dy/xw==",
|
||||
"package_name":"com.fengliyan.tianlesue"
|
||||
},
|
||||
"oauth_client":{
|
||||
"client_id":"108318391",
|
||||
"client_type":1
|
||||
},
|
||||
"app_info":{
|
||||
"app_id":"108318391",
|
||||
"package_name":"com.fengliyan.tianlesue"
|
||||
},
|
||||
"service":{
|
||||
"analytics":{
|
||||
"collector_url":"datacollector-drcn.dt.hicloud.com,datacollector-drcn.dt.dbankcloud.cn",
|
||||
"collector_url_ru":"datacollector-drru.dt.dbankcloud.ru,datacollector-drru.dt.hicloud.com",
|
||||
"collector_url_sg":"datacollector-dra.dt.hicloud.com,datacollector-dra.dt.dbankcloud.cn",
|
||||
"collector_url_de":"datacollector-dre.dt.hicloud.com,datacollector-dre.dt.dbankcloud.cn",
|
||||
"collector_url_cn":"datacollector-drcn.dt.hicloud.com,datacollector-drcn.dt.dbankcloud.cn",
|
||||
"resource_id":"p1",
|
||||
"channel_id":""
|
||||
},
|
||||
"edukit":{
|
||||
"edu_url":"edukit.edu.cloud.huawei.com.cn",
|
||||
"dh_url":"edukit.edu.cloud.huawei.com.cn"
|
||||
},
|
||||
"search":{
|
||||
"url":"https://search-drcn.cloud.huawei.com"
|
||||
},
|
||||
"cloudstorage":{
|
||||
"storage_url_sg_back":"https://agc-storage-dra.cloud.huawei.asia",
|
||||
"storage_url_ru_back":"https://agc-storage-drru.cloud.huawei.ru",
|
||||
"storage_url_ru":"https://agc-storage-drru.cloud.huawei.ru",
|
||||
"storage_url_de_back":"https://agc-storage-dre.cloud.huawei.eu",
|
||||
"storage_url_de":"https://ops-dre.agcstorage.link",
|
||||
"storage_url":"https://agc-storage-drcn.platform.dbankcloud.cn",
|
||||
"storage_url_sg":"https://ops-dra.agcstorage.link",
|
||||
"storage_url_cn_back":"https://agc-storage-drcn.cloud.huawei.com.cn",
|
||||
"storage_url_cn":"https://agc-storage-drcn.platform.dbankcloud.cn"
|
||||
},
|
||||
"ml":{
|
||||
"mlservice_url":"ml-api-drcn.ai.dbankcloud.com,ml-api-drcn.ai.dbankcloud.cn"
|
||||
}
|
||||
},
|
||||
"region":"CN",
|
||||
"configuration_version":"3.0",
|
||||
"appInfos":[
|
||||
{
|
||||
"package_name":"com.fengliyan.tianlesue",
|
||||
"client":{
|
||||
"app_id":"108318391"
|
||||
},
|
||||
"app_info":{
|
||||
"package_name":"com.fengliyan.tianlesue",
|
||||
"app_id":"108318391"
|
||||
},
|
||||
"oauth_client":{
|
||||
"client_type":1,
|
||||
"client_id":"108318391"
|
||||
}
|
||||
}
|
||||
]
|
||||
}
|
||||
402
app/build.gradle
Normal file
@@ -0,0 +1,402 @@
|
||||
apply plugin: 'com.android.application'
|
||||
apply plugin: 'com.huawei.agconnect'
|
||||
apply plugin: 'kotlin-android'
|
||||
apply plugin: 'kotlin-android-extensions'
|
||||
apply plugin: 'com.hihonor.mcs.asplugin'
|
||||
|
||||
//apply plugin: 'android-junk-code'
|
||||
//androidJunkCode {
|
||||
// def config = {
|
||||
// //变体名称,如果没有设置productFlavors就是buildType名称,如果有设置productFlavors就是flavor+buildType,例如(freeRelease、proRelease)
|
||||
// packageBase = "com.live.siyu" //生成java类根包名
|
||||
// packageCount = 60 //生成包数量
|
||||
// activityCountPerPackage = 6 //每个包下生成Activity类数量
|
||||
// excludeActivityJavaFile = false
|
||||
// //是否排除生成Activity的Java文件,默认false(layout和写入AndroidManifest.xml还会执行),主要用于处理类似神策全埋点编译过慢问题
|
||||
// otherCountPerPackage = 60 //每个包下生成其它类的数量
|
||||
// methodCountPerClass = 60 //每个类下生成方法数量
|
||||
// resPrefix = "sy_" //生成的layout、drawable、string等资源名前缀
|
||||
// drawableCount = 300 //生成drawable资源数量
|
||||
// stringCount = 300 //生成string数量
|
||||
// }
|
||||
// variantConfig {
|
||||
// devDebug config
|
||||
// ossRelease config
|
||||
// }
|
||||
//}
|
||||
|
||||
android {
|
||||
aaptOptions.cruncherEnabled = false
|
||||
aaptOptions.useNewCruncher = false
|
||||
compileSdkVersion 31
|
||||
buildToolsVersion "30.0.3"
|
||||
viewBinding {
|
||||
enabled = true
|
||||
}
|
||||
useLibrary 'org.apache.http.legacy'
|
||||
defaultConfig {
|
||||
applicationId "com.fengliyan.tianlesue"
|
||||
minSdkVersion 24
|
||||
targetSdkVersion 30
|
||||
versionCode 38
|
||||
versionName "2.5.1"
|
||||
testInstrumentationRunner 'androidx.test.runner.AndroidJUnitRunner'
|
||||
flavorDimensions "versionCode"
|
||||
buildConfigField "String", "AUTH_SECRET", '"tX1pY3+d9GOsDdek6c8EkqlBagajAzzq4Yl8xWzKxE66qzaa51BRukuNO66MPcv92lK5tTifKP6md8Jn/vIcgQCLpJWhr4vKvcGeOmBFIPmdo/++elnHTJdJ10RSRN8fDaQVUhX7Ap3KoPQ4n/oSUNSpa/HKZihCLQK31vyNCL/GZ4bGijb2e63JDN4GbUOP1d7yw4vbaNEA883Da+CQ+CyYW4aXWuLca/1ngoszOw3wRFhe/ZMVDhDRRMc7Bpp/+judD4ehwydRzLprBpVSQufZV6XAUpec3V7eJRH3FHGXE4fwtZK4BA=="'
|
||||
multiDexEnabled true
|
||||
ndk {
|
||||
abiFilters "arm64-v8a", "armeabi-v7a"
|
||||
}
|
||||
}
|
||||
|
||||
compileOptions {
|
||||
sourceCompatibility JavaVersion.VERSION_1_8
|
||||
targetCompatibility JavaVersion.VERSION_1_8
|
||||
}
|
||||
configurations.all {
|
||||
resolutionStrategy {
|
||||
force 'androidx.core:core:1.7.0'
|
||||
}
|
||||
}
|
||||
packagingOptions {
|
||||
pickFirst 'lib/arm64-v8a/libc++_shared.so'
|
||||
pickFirst 'lib/armeabi-v7a/libc++_shared.so'
|
||||
}
|
||||
|
||||
signingConfigs {
|
||||
release {
|
||||
// default keystore file, PLZ config file path in local.properties
|
||||
//Properties properties = new Properties()
|
||||
//加载本地local.properties文件
|
||||
/*if(rootProject.file("local.properties").exists()) {
|
||||
properties.load(rootProject.file("local.properties").newDataInputStream())
|
||||
}
|
||||
storeFile file(properties.get("storeFile") ?: System.getenv("FLOW_CERTIFICATE_FILE"))
|
||||
storePassword properties.get("storePassword") ?: System.getenv("FLOW_KEYSTORE_PASS")
|
||||
keyAlias properties.get("keyAlias") ?: System.getenv("FLOW_ALIAS_NAME")
|
||||
keyPassword properties.get("keyPassword") ?: System.getenv("FLOW_ALIAS_PASS")*/
|
||||
|
||||
storeFile file("xiayue.jks")
|
||||
storePassword 'Chenqihong3'
|
||||
keyAlias 'chenqihong3'
|
||||
keyPassword 'Chenqihong3'
|
||||
v1SigningEnabled true
|
||||
v2SigningEnabled true
|
||||
}
|
||||
}
|
||||
|
||||
|
||||
//更改打包名字
|
||||
applicationVariants.all { variant ->
|
||||
variant.outputs.all {
|
||||
//qingyu_v1.4.5_oppo_id1389900
|
||||
// def code = getBuildConfigFieldValue(variant, "InviteCode")
|
||||
// def codeReplace = code.replace("\"", "").replace("\"", "")
|
||||
// def fileName = "qingyu_v${versionName}_${variant.productFlavors[0].name}_id${codeReplace}_${buildType.name}.apk"
|
||||
def fileName = "siyu_v${versionName}_${variant.productFlavors[0].name}_${buildType.name}.apk"
|
||||
outputFileName = fileName
|
||||
}
|
||||
variant.mergeAssetsProvider.configure {
|
||||
doLast {
|
||||
delete(fileTree(dir: outputDir,
|
||||
includes: ['model/ai_bgseg_green.bundle',
|
||||
'model/ai_face_processor_lite.bundle',
|
||||
'model/ai_hairseg.bundle',
|
||||
'model/ai_hand_processor.bundle',
|
||||
'model/ai_human_processor_mb_fast.bundle',
|
||||
'graphics/face_makeup.bundle',
|
||||
'graphics/body_slim.bundle',
|
||||
'graphics/controller_cpp.bundle',
|
||||
'graphics/fuzzytoonfilter.bundle',
|
||||
'graphics/tongue.bundle',
|
||||
'graphics/fxaa.bundle']))
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
buildTypes {
|
||||
release {
|
||||
minifyEnabled false
|
||||
// shrinkResources true
|
||||
// useProguard true
|
||||
// zipAlignEnabled true
|
||||
proguardFiles getDefaultProguardFile('proguard-android.txt'), 'proguard-rules.pro'
|
||||
signingConfig signingConfigs.release
|
||||
}
|
||||
|
||||
debug {
|
||||
minifyEnabled false
|
||||
proguardFiles getDefaultProguardFile('proguard-android.txt'), 'proguard-rules.pro'
|
||||
signingConfig signingConfigs.release
|
||||
}
|
||||
}
|
||||
|
||||
repositories {
|
||||
flatDir {
|
||||
dirs 'libs'
|
||||
}
|
||||
}
|
||||
sourceSets {
|
||||
main {
|
||||
jniLibs.srcDirs = ['libs']
|
||||
}
|
||||
|
||||
main.assets.srcDirs += ['src/main/assets']
|
||||
main.res.srcDirs += ['src/mian/res', 'src/main/filters/res']
|
||||
}
|
||||
|
||||
lintOptions {
|
||||
checkReleaseBuilds false
|
||||
// Or, if you prefer, you can continue to check for errors in release builds,
|
||||
// but continue the build even when errors are found:
|
||||
abortOnError false
|
||||
}
|
||||
|
||||
productFlavors {
|
||||
// dev {
|
||||
// applicationId "com.fengliyan.tianlesue"
|
||||
// buildConfigField "boolean", "IS_DEV", "true"
|
||||
// buildConfigField "String", "PRIVACY", '"/index/about/siyuPrivacy.html"'
|
||||
// buildConfigField "String", "AGREEMENT", '"/index/about/siyuAgreement.html"'
|
||||
// buildConfigField "String", "VIP_AGREEMENT", '"/index/about/siyuVipAgreement.html"'
|
||||
// manifestPlaceholders = [APPLICATION_ID: "com.fengliyan.tianlesue",
|
||||
// MARKET_VALUE : "oss",
|
||||
// APP_NAME : "私语"
|
||||
// ]
|
||||
// }
|
||||
oss {
|
||||
applicationId "com.fengliyan.tianlesue"
|
||||
buildConfigField "boolean", "IS_DEV", "false"
|
||||
buildConfigField "String", "PRIVACY", '"/index/about/siyuPrivacy.html"'
|
||||
buildConfigField "String", "AGREEMENT", '"/index/about/siyuAgreement.html"'
|
||||
buildConfigField "String", "VIP_AGREEMENT", '"/index/about/siyuVipAgreement.html"'
|
||||
manifestPlaceholders = [APPLICATION_ID: "com.fengliyan.tianlesue",
|
||||
MARKET_VALUE : "oss",
|
||||
APP_NAME : "私语"
|
||||
]
|
||||
}
|
||||
|
||||
// vivo {
|
||||
// applicationId "com.fengliyan.tianlesue"
|
||||
// buildConfigField "boolean", "IS_DEV", "false"
|
||||
// buildConfigField "String", "PRIVACY", '"/index/about/siyuPrivacy.html"'
|
||||
// buildConfigField "String", "AGREEMENT", '"/index/about/siyuAgreement.html"'
|
||||
// buildConfigField "String", "VIP_AGREEMENT", '"/index/about/siyuVipAgreement.html"'
|
||||
// manifestPlaceholders = [APPLICATION_ID: "com.fengliyan.tianlesue",
|
||||
// MARKET_VALUE : "vivo",
|
||||
// APP_NAME : "私语"
|
||||
// ]
|
||||
// }
|
||||
// oppo {
|
||||
// applicationId "com.fengliyan.tianlesue"
|
||||
// buildConfigField "boolean", "IS_DEV", "false"
|
||||
// buildConfigField "String", "PRIVACY", '"/index/about/siyuPrivacy.html"'
|
||||
// buildConfigField "String", "AGREEMENT", '"/index/about/siyuAgreement.html"'
|
||||
// buildConfigField "String", "VIP_AGREEMENT", '"/index/about/siyuVipAgreement.html"'
|
||||
// manifestPlaceholders = [APPLICATION_ID: "com.fengliyan.tianlesue",
|
||||
// MARKET_VALUE : "oppo",
|
||||
// APP_NAME : "私语",
|
||||
// ]
|
||||
// }
|
||||
// xiaomi {
|
||||
// applicationId "com.fengliyan.tianlesue"
|
||||
// buildConfigField "boolean", "IS_DEV", "false"
|
||||
// buildConfigField "String", "PRIVACY", '"/index/about/siyuPrivacy.html"'
|
||||
// buildConfigField "String", "AGREEMENT", '"/index/about/siyuAgreement.html"'
|
||||
// buildConfigField "String", "VIP_AGREEMENT", '"/index/about/siyuVipAgreement.html"'
|
||||
// manifestPlaceholders = [APPLICATION_ID: "com.fengliyan.tianlesue",
|
||||
// MARKET_VALUE : "xiaomi",
|
||||
// APP_NAME : "私语"
|
||||
// ]
|
||||
// }
|
||||
// yingyongbao {
|
||||
// applicationId "com.fengliyan.tianlesue"
|
||||
// buildConfigField "boolean", "IS_DEV", "false"
|
||||
// buildConfigField "String", "PRIVACY", '"/index/about/siyuPrivacy.html"'
|
||||
// buildConfigField "String", "AGREEMENT", '"/index/about/siyuAgreement.html"'
|
||||
// buildConfigField "String", "VIP_AGREEMENT", '"/index/about/siyuVipAgreement.html"'
|
||||
// manifestPlaceholders = [APPLICATION_ID: "com.fengliyan.tianlesue",
|
||||
// MARKET_VALUE : "yingyongbao",
|
||||
// APP_NAME : "私语"
|
||||
// ]
|
||||
// }
|
||||
// huawei {
|
||||
// applicationId "com.fengliyan.tianlesue"
|
||||
// buildConfigField "boolean", "IS_DEV", "false"
|
||||
// buildConfigField "String", "PRIVACY", '"/index/about/siyuSocialPrivacy.html"'
|
||||
// buildConfigField "String", "AGREEMENT", '"/index/about/siyuSocialAgreement.html"'
|
||||
// buildConfigField "String", "VIP_AGREEMENT", '"/index/about/siyuSocialVipAgreement.html"'
|
||||
// manifestPlaceholders = [APPLICATION_ID: "com.fengliyan.tianlesue",
|
||||
// MARKET_VALUE : "huawei",
|
||||
// APP_NAME : "私语交友"
|
||||
// ]
|
||||
// }
|
||||
// honor {
|
||||
// applicationId "com.fengliyan.tianlesue"
|
||||
// buildConfigField "boolean", "IS_DEV", "false"
|
||||
// buildConfigField "String", "PRIVACY", '"/index/about/siyuPrivacy.html"'
|
||||
// buildConfigField "String", "AGREEMENT", '"/index/about/siyuAgreement.html"'
|
||||
// buildConfigField "String", "VIP_AGREEMENT", '"/index/about/siyuVipAgreement.html"'
|
||||
// manifestPlaceholders = [APPLICATION_ID: "com.fengliyan.tianlesue",
|
||||
// MARKET_VALUE : "honor",
|
||||
// APP_NAME : "私语"
|
||||
// ]
|
||||
// }
|
||||
// meizu {
|
||||
// applicationId "com.fengliyan.tianlesue"
|
||||
// buildConfigField "boolean", "IS_DEV", "false"
|
||||
// buildConfigField "String", "PRIVACY", '"/index/about/siyuPrivacy.html"'
|
||||
// buildConfigField "String", "AGREEMENT", '"/index/about/siyuAgreement.html"'
|
||||
// buildConfigField "String", "VIP_AGREEMENT", '"/index/about/siyuVipAgreement.html"'
|
||||
// manifestPlaceholders = [APPLICATION_ID: "com.fengliyan.tianlesue",
|
||||
// MARKET_VALUE : "meizu",
|
||||
// APP_NAME : "私语"
|
||||
// ]
|
||||
// }
|
||||
// baiduss {
|
||||
// applicationId "com.fengliyan.tianlesue"
|
||||
// buildConfigField "boolean", "IS_DEV", "false"
|
||||
// buildConfigField "String", "PRIVACY", '"/index/about/siyuPrivacy.html"'
|
||||
// buildConfigField "String", "AGREEMENT", '"/index/about/siyuAgreement.html"'
|
||||
// buildConfigField "String", "VIP_AGREEMENT", '"/index/about/siyuVipAgreement.html"'
|
||||
// manifestPlaceholders = [APPLICATION_ID: "com.fengliyan.tianlesue",
|
||||
// MARKET_VALUE : "baiduss",
|
||||
// APP_NAME : "私语"
|
||||
// ]
|
||||
// }
|
||||
// baiduxxl {
|
||||
// applicationId "com.fengliyan.tianlesue"
|
||||
// buildConfigField "boolean", "IS_DEV", "false"
|
||||
// buildConfigField "String", "PRIVACY", '"/index/about/siyuPrivacy.html"'
|
||||
// buildConfigField "String", "AGREEMENT", '"/index/about/siyuAgreement.html"'
|
||||
// buildConfigField "String", "VIP_AGREEMENT", '"/index/about/siyuVipAgreement.html"'
|
||||
// manifestPlaceholders = [APPLICATION_ID: "com.fengliyan.tianlesue",
|
||||
// MARKET_VALUE : "baiduxxl",
|
||||
// APP_NAME : "私语"
|
||||
// ]
|
||||
// }
|
||||
// threesixzero {
|
||||
// applicationId "com.fengliyan.tianlesue"
|
||||
// buildConfigField "boolean", "IS_DEV", "false"
|
||||
// buildConfigField "String", "PRIVACY", '"/index/about/siyuPrivacy.html"'
|
||||
// buildConfigField "String", "AGREEMENT", '"/index/about/siyuAgreement.html"'
|
||||
// buildConfigField "String", "VIP_AGREEMENT", '"/index/about/siyuVipAgreement.html"'
|
||||
// manifestPlaceholders = [APPLICATION_ID: "com.fengliyan.tianlesue",
|
||||
// MARKET_VALUE : "\"360\"",
|
||||
// APP_NAME : "私语"
|
||||
// ]
|
||||
// }
|
||||
// ali {
|
||||
// applicationId "com.fengliyan.tianlesue"
|
||||
// buildConfigField "boolean", "IS_DEV", "false"
|
||||
// buildConfigField "String", "PRIVACY", '"/index/about/siyuPrivacy.html"'
|
||||
// buildConfigField "String", "AGREEMENT", '"/index/about/siyuAgreement.html"'
|
||||
// buildConfigField "String", "VIP_AGREEMENT", '"/index/about/siyuVipAgreement.html"'
|
||||
// manifestPlaceholders = [APPLICATION_ID: "com.fengliyan.tianlesue",
|
||||
// MARKET_VALUE : "ali",
|
||||
// APP_NAME : "私语"
|
||||
// ]
|
||||
// }
|
||||
// kuaishou {
|
||||
// applicationId "com.fengliyan.tianlesue"
|
||||
// buildConfigField "boolean", "IS_DEV", "false"
|
||||
// buildConfigField "String", "PRIVACY", '"/index/about/siyuPrivacy.html"'
|
||||
// buildConfigField "String", "AGREEMENT", '"/index/about/siyuAgreement.html"'
|
||||
// buildConfigField "String", "VIP_AGREEMENT", '"/index/about/siyuVipAgreement.html"'
|
||||
// manifestPlaceholders = [APPLICATION_ID: "com.fengliyan.tianlesue",
|
||||
// MARKET_VALUE : "kuaishou",
|
||||
// APP_NAME : "私语"
|
||||
// ]
|
||||
// }
|
||||
// douyin {
|
||||
// applicationId "com.fengliyan.tianlesue"
|
||||
// buildConfigField "boolean", "IS_DEV", "false"
|
||||
// buildConfigField "String", "PRIVACY", '"/index/about/siyuPrivacy.html"'
|
||||
// buildConfigField "String", "AGREEMENT", '"/index/about/siyuAgreement.html"'
|
||||
// buildConfigField "String", "VIP_AGREEMENT", '"/index/about/siyuVipAgreement.html"'
|
||||
// manifestPlaceholders = [APPLICATION_ID: "com.fengliyan.tianlesue",
|
||||
// MARKET_VALUE : "douyin",
|
||||
// APP_NAME : "私语"
|
||||
// ]
|
||||
// }
|
||||
}
|
||||
|
||||
dependencies {
|
||||
//noinspection GradleCompatible
|
||||
implementation 'com.github.gzu-liyujiang:Android_CN_OAID:4.2.4'
|
||||
implementation 'androidx.appcompat:appcompat:1.2.0'
|
||||
implementation 'androidx.recyclerview:recyclerview:1.1.0-beta04'
|
||||
implementation 'androidx.constraintlayout:constraintlayout:1.1.2'
|
||||
testImplementation 'junit:junit:4.12'
|
||||
androidTestImplementation 'com.androidx.support.test:runner:1.0.1'
|
||||
androidTestImplementation 'com.android.support.test.espresso:espresso-core:3.0.1'
|
||||
implementation 'com.facebook.fresco:fresco:1.8.1'
|
||||
implementation 'com.contrarywind:Android-PickerView:4.0.1'
|
||||
implementation 'com.google.code.gson:gson:2.8.2'
|
||||
implementation 'io.reactivex.rxjava2:rxandroid:2.0.2'
|
||||
implementation 'io.reactivex.rxjava2:rxjava:2.1.12'
|
||||
implementation 'in.srain.cube:ultra-ptr:1.0.11'
|
||||
implementation 'commons-io:commons-io:2.6'
|
||||
implementation 'me.relex:photodraweeview:1.1.3'
|
||||
implementation 'me.himanshusoni.quantityview:quantity-view:1.2.0'
|
||||
implementation project(path: ':uikit')
|
||||
implementation project(path: ':location')
|
||||
implementation project(path: ':http')
|
||||
implementation project(path: ':share')
|
||||
implementation project(path: ':device')
|
||||
implementation project(path: ':messaging')
|
||||
implementation project(path: ':storage')
|
||||
implementation project(path: ':yunxinkit')
|
||||
implementation project(':faceunity')
|
||||
//EventBus
|
||||
implementation 'de.greenrobot:eventbus:2.4.0'
|
||||
implementation 'com.tencent.mm.opensdk:wechat-sdk-android-without-mta:6.8.0'
|
||||
//魅族推送
|
||||
implementation 'com.meizu.flyme.internet:push-internal:3.6.3@aar'
|
||||
implementation 'de.hdodenhof:circleimageview:2.2.0'
|
||||
implementation 'org.adw.library:discrete-seekbar:1.0.1'
|
||||
//设置状态栏颜色
|
||||
implementation 'com.githang:status-bar-compat:0.7'
|
||||
//banner
|
||||
implementation 'com.youth.banner:banner:1.4.10'
|
||||
//最新版本
|
||||
//仿微信图片预览
|
||||
implementation 'com.google.android.material:material:1.4.0'
|
||||
|
||||
implementation fileTree(include: ['*.aar', '*.jar'], exclude: [], dir: 'libs')
|
||||
|
||||
implementation 'com.huawei.hms:push:6.12.0.300' //华为
|
||||
implementation 'com.hihonor.mcs:push:7.0.61.303'
|
||||
implementation 'com.github.yyued:SVGAPlayer-Android:2.5.12'//svga
|
||||
|
||||
implementation 'com.tencent.bugly:crashreport:4.0.4'
|
||||
implementation 'com.github.getActivity:XXPermissions:13.6'
|
||||
|
||||
|
||||
implementation 'me.jessyan:autosize:1.2.1'
|
||||
//圆角控件
|
||||
implementation 'com.flyco.roundview:FlycoRoundView_Lib:1.1.4@aar'
|
||||
implementation 'com.github.CymChad:BaseRecyclerViewAdapterHelper:3.0.6'
|
||||
implementation 'com.github.eralpyucel:CircleProgressView:v1.1'
|
||||
//implementation 'com.github.CarGuo.GSYVideoPlayer:GSYVideoPlayer:v8.1.0'
|
||||
implementation 'com.shuyu:GSYVideoPlayer:8.1.0'
|
||||
|
||||
implementation 'com.googlecode.mp4parser:isoparser:1.1.21'
|
||||
|
||||
implementation "io.agora.rtc:full-rtc-basic:3.6.2"
|
||||
// implementation 'commons-codec:commons-codec:1.6'
|
||||
implementation 'io.github.happylishang:antifake:1.7.0'
|
||||
implementation 'com.blankj:utilcodex:1.31.1'
|
||||
implementation 'com.airbnb.android:lottie:5.2.0'
|
||||
// implementation 'com.mcxiaoke.packer-ng:helper:2.0.1'
|
||||
// implementation(name: 'alipaySdk-15.8.03.210428205839', ext: 'aar')
|
||||
// 商业化转化组件(必须)
|
||||
implementation 'com.bytedance.ads:AppConvert:2.0.0'
|
||||
implementation 'com.ryan.github:menupopupview:1.0.0'
|
||||
implementation 'io.github.scwang90:refresh-layout-kernel:3.0.0-alpha'
|
||||
implementation 'io.github.scwang90:refresh-footer-classics:3.0.0-alpha'
|
||||
implementation 'com.devzld:expandlayout:1.0.0'
|
||||
implementation 'io.github.lucksiege:pictureselector:v3.11.2'
|
||||
implementation 'com.github.Dimezis:BlurView:version-3.1.0'
|
||||
}
|
||||
}
|
||||
BIN
app/libs/APSecuritySDK-deepSec-7.0.1.20240528.jiagu.aar
Normal file
BIN
app/libs/Android-AliyunFaceGuard-10052.2.aar
Normal file
BIN
app/libs/HTProtectLib-5.5.9.1.aar
Normal file
BIN
app/libs/MiPush_SDK_Client_6_0_1-C_3rd.aar
Normal file
BIN
app/libs/alipaysdk-15.8.03.210428205839.aar
Normal file
BIN
app/libs/aliyun-base-2.3.32.1.250219103019.aar
Normal file
BIN
app/libs/aliyun-facade-2.3.32.1.250219103019.aar
Normal file
BIN
app/libs/aliyun-face-2.3.32.1.250219103019.aar
Normal file
BIN
app/libs/aliyun-faceaudio-2.3.32.1.250219103019.aar
Normal file
BIN
app/libs/aliyun-facelanguage-2.3.32.1.250219103019.aar
Normal file
BIN
app/libs/aliyun-facequality-2.3.32.1.250219103019.aar
Normal file
BIN
app/libs/aliyun-photinus-2.3.32.1.250219103019.aar
Normal file
BIN
app/libs/aliyun-wishverify-2.3.32.1.250219103019.aar
Normal file
BIN
app/libs/arm64-v8a/libNetHTProtect.so
Normal file
BIN
app/libs/arm64-v8a/libhtpcrash.so
Normal file
BIN
app/libs/arm64-v8a/libhtpcrash_dumper.so
Normal file
BIN
app/libs/arm64-v8a/libmsaoaidauth.so
Normal file
BIN
app/libs/arm64-v8a/libnllvm1632808251147706677.so
Normal file
BIN
app/libs/armeabi-v7a/libNetHTProtect.so
Normal file
BIN
app/libs/armeabi-v7a/libhtpcrash.so
Normal file
BIN
app/libs/armeabi-v7a/libhtpcrash_dumper.so
Normal file
BIN
app/libs/armeabi-v7a/libmsaoaidauth.so
Normal file
BIN
app/libs/armeabi-v7a/libnllvm1632808251147706677.so
Normal file
BIN
app/libs/com.heytap.msp.aar
Normal file
BIN
app/libs/crashshield-2.1.4-release.aar
Normal file
BIN
app/libs/logger-2.2.1-release.aar
Normal file
BIN
app/libs/main-2.2.1-release.aar
Normal file
BIN
app/libs/oaid.jar
Normal file
BIN
app/libs/sand-paytypesdk-1.0.0.aar
Normal file
BIN
app/libs/video-capture.aar
Normal file
BIN
app/libs/vivo_pushSDK_v3.0.0.4_484.aar
Normal file
BIN
app/libs/x86/libNetHTProtect.so
Normal file
BIN
app/libs/x86/libhtpcrash.so
Normal file
BIN
app/libs/x86/libhtpcrash_dumper.so
Normal file
BIN
app/libs/x86/libmsaoaidauth.so
Normal file
BIN
app/libs/x86/libnllvm1632808251147706677.so
Normal file
BIN
app/libs/x86_64/libNetHTProtect.so
Normal file
BIN
app/libs/x86_64/libhtpcrash.so
Normal file
BIN
app/libs/x86_64/libhtpcrash_dumper.so
Normal file
BIN
app/libs/x86_64/libmsaoaidauth.so
Normal file
BIN
app/libs/x86_64/libnllvm1632808251147706677.so
Normal file
6
app/mcs-services.json
Normal file
@@ -0,0 +1,6 @@
|
||||
{
|
||||
"developer_id":"109999896480",
|
||||
"app_id":"104457750",
|
||||
"package_name":"com.fengliyan.tianlesue",
|
||||
"version":"1.0"
|
||||
}
|
||||
276
app/proguard-rules.pro
vendored
Normal file
@@ -0,0 +1,276 @@
|
||||
# Add project specific ProGuard rules here.
|
||||
# You can control the set of applied configuration files using the
|
||||
# proguardFiles setting in build.gradle.
|
||||
#
|
||||
# For more details, see
|
||||
# http://developer.android.com/guide/developing/tools/proguard.html
|
||||
|
||||
# If your project uses WebView with JS, uncomment the following
|
||||
# and specify the fully qualified class name to the JavaScript interface
|
||||
# class:
|
||||
#-keepclassmembers class fqcn.of.javascript.interface.for.webview {
|
||||
# public *;
|
||||
#}
|
||||
|
||||
# Uncomment this to preserve the line number information for
|
||||
# debugging stack traces.
|
||||
#-keepattributes SourceFile,LineNumberTable
|
||||
|
||||
# If you keep the line number information, uncomment this to
|
||||
# hide the original source file name.
|
||||
#-renamesourcefileattribute SourceFile
|
||||
|
||||
#
|
||||
#-------------------------------------------基本不用动区域----------------------------------------------
|
||||
#
|
||||
#
|
||||
# -----------------------------基本 -----------------------------
|
||||
#
|
||||
|
||||
# 指定代码的压缩级别 0 - 7(指定代码进行迭代优化的次数,在Android里面默认是5,这条指令也只有在可以优化时起作用。)
|
||||
-optimizationpasses 5
|
||||
# 混淆时不会产生形形色色的类名(混淆时不使用大小写混合类名)
|
||||
-dontusemixedcaseclassnames
|
||||
# 指定不去忽略非公共的库类(不跳过library中的非public的类)
|
||||
-dontskipnonpubliclibraryclasses
|
||||
# 指定不去忽略包可见的库类的成员
|
||||
-dontskipnonpubliclibraryclassmembers
|
||||
#不进行优化,建议使用此选项,
|
||||
-dontoptimize
|
||||
# 不进行预校验,Android不需要,可加快混淆速度。
|
||||
-dontpreverify
|
||||
# 屏蔽警告
|
||||
-ignorewarnings
|
||||
# 指定混淆是采用的算法,后面的参数是一个过滤器
|
||||
# 这个过滤器是谷歌推荐的算法,一般不做更改
|
||||
-optimizations !code/simplification/arithmetic,!field/*,!class/merging/*
|
||||
# 保护代码中的Annotation不被混淆
|
||||
-keepattributes *Annotation*
|
||||
# 避免混淆泛型, 这在JSON实体映射时非常重要
|
||||
-keepattributes Signature
|
||||
# 抛出异常时保留代码行号
|
||||
-keepattributes SourceFile,LineNumberTable
|
||||
#优化时允许访问并修改有修饰符的类和类的成员,这可以提高优化步骤的结果。
|
||||
# 比如,当内联一个公共的getter方法时,这也可能需要外地公共访问。
|
||||
# 虽然java二进制规范不需要这个,要不然有的虚拟机处理这些代码会有问题。当有优化和使用-repackageclasses时才适用。
|
||||
#指示语:不能用这个指令处理库中的代码,因为有的类和类成员没有设计成public ,而在api中可能变成public
|
||||
-allowaccessmodification
|
||||
#当有优化和使用-repackageclasses时才适用。
|
||||
-repackageclasses ''
|
||||
# 混淆时记录日志(打印混淆的详细信息)
|
||||
# 这句话能够使我们的项目混淆后产生映射文件
|
||||
# 包含有类名->混淆后类名的映射关系
|
||||
-verbose
|
||||
|
||||
#
|
||||
# ----------------------------- 默认保留 -----------------------------
|
||||
#
|
||||
#----------------------------------------------------
|
||||
# 保持哪些类不被混淆
|
||||
#继承activity,application,service,broadcastReceiver,contentprovider....不进行混淆
|
||||
-keep public class * extends android.app.Activity
|
||||
-keep public class * extends android.app.Application
|
||||
-keep public class * extends android.support.multidex.MultiDexApplication
|
||||
-keep public class * extends android.app.Service
|
||||
-keep public class * extends android.content.BroadcastReceiver
|
||||
-keep public class * extends android.content.ContentProvider
|
||||
-keep public class * extends android.app.backup.BackupAgentHelper
|
||||
-keep public class * extends android.preference.Preference
|
||||
-keep public class * extends android.view.View
|
||||
-keep class android.support.** {*;}## 保留support下的所有类及其内部类
|
||||
|
||||
-keep public class com.google.vending.licensing.ILicensingService
|
||||
-keep public class com.android.vending.licensing.ILicensingService
|
||||
#表示不混淆上面声明的类,最后这两个类我们基本也用不上,是接入Google原生的一些服务时使用的。
|
||||
#----------------------------------------------------
|
||||
|
||||
# 保留继承的
|
||||
-keep public class * extends android.support.v4.**
|
||||
-keep public class * extends android.support.v7.**
|
||||
-keep public class * extends android.support.annotation.**
|
||||
|
||||
|
||||
#表示不混淆任何包含native方法的类的类名以及native方法名,这个和我们刚才验证的结果是一致
|
||||
-keepclasseswithmembernames class * {
|
||||
native <methods>;
|
||||
}
|
||||
|
||||
|
||||
#这个主要是在layout 中写的onclick方法android:onclick="onClick",不进行混淆
|
||||
#表示不混淆Activity中参数是View的方法,因为有这样一种用法,在XML中配置android:onClick=”buttonClick”属性,
|
||||
#当用户点击该按钮时就会调用Activity中的buttonClick(View view)方法,如果这个方法被混淆的话就找不到了
|
||||
-keepclassmembers class * extends android.app.Activity{
|
||||
public void *(android.view.View);
|
||||
}
|
||||
|
||||
#表示不混淆枚举中的values()和valueOf()方法,枚举我用的非常少,这个就不评论了
|
||||
-keepclassmembers enum * {
|
||||
public static **[] values();
|
||||
public static ** valueOf(java.lang.String);
|
||||
}
|
||||
|
||||
#表示不混淆任何一个View中的setXxx()和getXxx()方法,
|
||||
#因为属性动画需要有相应的setter和getter的方法实现,混淆了就无法工作了。
|
||||
-keep public class * extends android.view.View{
|
||||
*** get*();
|
||||
void set*(***);
|
||||
public <init>(android.content.Context);
|
||||
public <init>(android.content.Context, android.util.AttributeSet);
|
||||
public <init>(android.content.Context, android.util.AttributeSet, int);
|
||||
}
|
||||
-keepclasseswithmembers class * {
|
||||
public <init>(android.content.Context, android.util.AttributeSet);
|
||||
public <init>(android.content.Context, android.util.AttributeSet, int);
|
||||
}
|
||||
|
||||
#表示不混淆Parcelable实现类中的CREATOR字段,
|
||||
#毫无疑问,CREATOR字段是绝对不能改变的,包括大小写都不能变,不然整个Parcelable工作机制都会失败。
|
||||
-keep class * implements android.os.Parcelable {
|
||||
public static final android.os.Parcelable$Creator *;
|
||||
}
|
||||
# 这指定了继承Serizalizable的类的如下成员不被移除混淆
|
||||
-keepclassmembers class * implements java.io.Serializable {
|
||||
static final long serialVersionUID;
|
||||
private static final java.io.ObjectStreamField[] serialPersistentFields;
|
||||
private void writeObject(java.io.ObjectOutputStream);
|
||||
private void readObject(java.io.ObjectInputStream);
|
||||
java.lang.Object writeReplace();
|
||||
java.lang.Object readResolve();
|
||||
}
|
||||
# 保留R下面的资源
|
||||
#-keep class **.R$* {
|
||||
# *;
|
||||
#}
|
||||
#不混淆资源类下static的
|
||||
-keepclassmembers class **.R$* {
|
||||
public static <fields>;
|
||||
}
|
||||
|
||||
# 对于带有回调函数的onXXEvent、**On*Listener的,不能被混淆
|
||||
-keepclassmembers class * {
|
||||
void *(**On*Event);
|
||||
void *(**On*Listener);
|
||||
}
|
||||
|
||||
# 保留我们自定义控件(继承自View)不被混淆
|
||||
-keep public class * extends android.view.View{
|
||||
*** get*();
|
||||
void set*(***);
|
||||
public <init>(android.content.Context);
|
||||
public <init>(android.content.Context, android.util.AttributeSet);
|
||||
public <init>(android.content.Context, android.util.AttributeSet, int);
|
||||
}
|
||||
|
||||
#
|
||||
#----------------------------- WebView(项目中没有可以忽略) -----------------------------
|
||||
#
|
||||
#webView需要进行特殊处理
|
||||
-keepclassmembers class fqcn.of.javascript.interface.for.Webview {
|
||||
public *;
|
||||
}
|
||||
-keepclassmembers class * extends android.webkit.WebViewClient {
|
||||
public void *(android.webkit.WebView, java.lang.String, android.graphics.Bitmap);
|
||||
public boolean *(android.webkit.WebView, java.lang.String);
|
||||
}
|
||||
-keepclassmembers class * extends android.webkit.WebViewClient {
|
||||
public void *(android.webkit.WebView, jav.lang.String);
|
||||
}
|
||||
#在app中与HTML5的JavaScript的交互进行特殊处理
|
||||
#我们需要确保这些js要调用的原生方法不能够被混淆,于是我们需要做如下处理:
|
||||
-keepclassmembers class com.ljd.example.JSInterface {
|
||||
<methods>;
|
||||
}
|
||||
|
||||
#
|
||||
#---------------------------------实体类---------------------------------
|
||||
#--------(实体Model不能混淆,否则找不到对应的属性获取不到值)-----
|
||||
#
|
||||
-dontwarn com.suchengkeji.android.confusiondemo.md.**
|
||||
#对含有反射类的处理
|
||||
-keep class com.suchengkeji.android.confusiondemo.md.** { *; }
|
||||
#
|
||||
# ----------------------------- 其他的 -----------------------------
|
||||
#
|
||||
# 删除代码中Log相关的代码
|
||||
-assumenosideeffects class android.util.Log {
|
||||
public static boolean isLoggable(java.lang.String, int);
|
||||
public static int v(...);
|
||||
public static int i(...);
|
||||
public static int w(...);
|
||||
public static int d(...);
|
||||
public static int e(...);
|
||||
}
|
||||
|
||||
# 保持测试相关的代码
|
||||
-dontnote junit.framework.**
|
||||
-dontnote junit.runner.**
|
||||
-dontwarn android.test.**
|
||||
-dontwarn android.support.test.**
|
||||
-dontwarn org.junit.**
|
||||
|
||||
#华为推送
|
||||
-ignorewarnings
|
||||
-keepattributes *Annotation*
|
||||
-keepattributes Exceptions
|
||||
-keepattributes InnerClasses
|
||||
-keepattributes Signature
|
||||
-keepattributes SourceFile,LineNumberTable
|
||||
-keep class com.hianalytics.android.**{*;}
|
||||
-keep class com.huawei.updatesdk.**{*;}
|
||||
-keep class com.huawei.hms.**{*;}
|
||||
|
||||
|
||||
#小米推送
|
||||
-dontwarn com.xiaomi.push.**
|
||||
-keep class com.xiaomi.** {*;}
|
||||
|
||||
#oppo推送
|
||||
-keep public class * extends android.app.Service
|
||||
|
||||
# OAID
|
||||
# sdk
|
||||
-keep class com.bun.miitmdid.** { *; }
|
||||
-keep interface com.bun.supplier.** { *; }
|
||||
# asus
|
||||
-keep class com.asus.msa.SupplementaryDID.** { *; }
|
||||
-keep class com.asus.msa.sdid.** { *; }
|
||||
# freeme
|
||||
-keep class com.android.creator.** { *; }
|
||||
-keep class com.android.msasdk.** { *; }
|
||||
# huawei
|
||||
-keep class com.huawei.hms.ads.** { *; }
|
||||
-keep interface com.huawei.hms.ads.** {*; }
|
||||
# lenovo
|
||||
-keep class com.zui.deviceidservice.** { *; }
|
||||
-keep class com.zui.opendeviceidlibrary.** { *; }
|
||||
# meizu
|
||||
-keep class com.meizu.flyme.openidsdk.** { *; }
|
||||
# nubia
|
||||
-keep class com.bun.miitmdid.provider.nubia.NubiaIdentityImpl
|
||||
{ *; }
|
||||
# oppo
|
||||
-keep class com.heytap.openid.** { *; }
|
||||
# samsung
|
||||
-keep class com.samsung.android.deviceidservice.** { *; }
|
||||
# vivo
|
||||
-keep class com.vivo.identifier.** { *; }
|
||||
# xiaomi
|
||||
-keep class com.bun.miitmdid.provider.xiaomi.IdentifierManager
|
||||
{ *; }
|
||||
# zte
|
||||
-keep class com.bun.lib.** { *; }
|
||||
# coolpad
|
||||
-keep class com.coolpad.deviceidsupport.** { *; }
|
||||
|
||||
|
||||
-dontwarn com.tencent.bugly.**
|
||||
-keep public class com.tencent.bugly.**{*;}
|
||||
|
||||
-keep class com.tencent.mm.opensdk.** {*;}
|
||||
|
||||
-keep class com.tencent.mm.sdk.** {*;}
|
||||
|
||||
-keep class com.tencent.wxop.** {*;}
|
||||
|
||||
-dontwarn com.unionpay.**
|
||||
-keep class com.unionpay.** {*;}
|
||||
@@ -0,0 +1,26 @@
|
||||
package com.fengliyan.tianlesue;
|
||||
|
||||
import android.content.Context;
|
||||
import android.support.test.InstrumentationRegistry;
|
||||
import android.support.test.runner.AndroidJUnit4;
|
||||
|
||||
import org.junit.Test;
|
||||
import org.junit.runner.RunWith;
|
||||
|
||||
import static org.junit.Assert.*;
|
||||
|
||||
/**
|
||||
* Instrumented test, which will execute on an Android device.
|
||||
*
|
||||
* @see <a href="http://d.android.com/tools/testing">Testing documentation</a>
|
||||
*/
|
||||
@RunWith(AndroidJUnit4.class)
|
||||
public class ExampleInstrumentedTest {
|
||||
@Test
|
||||
public void useAppContext() throws Exception {
|
||||
// Context of the app under test.
|
||||
Context appContext = InstrumentationRegistry.getTargetContext();
|
||||
|
||||
assertEquals("com.fengliyan.tianlesue", appContext.getPackageName());
|
||||
}
|
||||
}
|
||||
1025
app/src/main/AndroidManifest.xml
Normal file
@@ -0,0 +1,12 @@
|
||||
// IMyAidlInterface.aidl
|
||||
package com.fengliyan.tianlesue.aidl;
|
||||
|
||||
// Declare any non-default types here with import statements
|
||||
|
||||
interface IMyAidlInterface {
|
||||
/**
|
||||
* Demonstrates some basic types that you can use as parameters
|
||||
* and return values in AIDL.
|
||||
*/
|
||||
String getServiceName();
|
||||
}
|
||||
BIN
app/src/main/assets/china_cities_v3.db
Normal file
33
app/src/main/assets/com.live.xiayueonline.cert.pem
Normal file
@@ -0,0 +1,33 @@
|
||||
-----BEGIN CERTIFICATE-----
|
||||
MIIFoDCCA4igAwIBAgICJuwwDQYJKoZIhvcNAQELBQAwgYAxCzAJBgNVBAYTAkNO
|
||||
MRAwDgYDVQQIDAdCZWlqaW5nMQwwCgYDVQQKDANNU0ExETAPBgNVBAsMCE9BSURf
|
||||
U0RLMR4wHAYDVQQDDBVjb20uYnVuLm1paXRtZGlkLnNpZ24xHjAcBgkqhkiG9w0B
|
||||
CQEWD21zYUBjYWljdC5hYy5jbjAeFw0yMjA2MjcxNTAzNTFaFw0yMzA2MjgxNTAz
|
||||
NTFaMIGSMQswCQYDVQQGEwJDTjEQMA4GA1UECAwHQmVpamluZzEQMA4GA1UEBwwH
|
||||
QmVpamluZzETMBEGA1UECgwKcWluZ3l1MjAyMjEeMBwGA1UEAwwVY29tLmxpdmUu
|
||||
eGlheXVlb25saW5lMSowKAYJKoZIhvcNAQkBFhtqdUBzenNoZmtqeXhnczM4Lndl
|
||||
Y29tLndvcmswggIiMA0GCSqGSIb3DQEBAQUAA4ICDwAwggIKAoICAQCyGC9T3GW4
|
||||
BSsvnVNqb8+HlnjJAQvTPd7H13m1f945uUsUYYMaaZuICYjb4qefZUyQgyxBUTYf
|
||||
BOTpE7ccdcNoZgCp05RTng30zvkc4pjawJIkNeIC2NGlN7RquO4Ka/06LSuq5N+b
|
||||
fL78E0MwZAinoxSswf/yNY5R1LJ2b3I7BnW7rVSb7KbB0Q4z5KmuJ04hPVl7BtSd
|
||||
fVnvnRVTBDRm/cMgyupEl+CCGW8HUejzPHdHeHRK1rx7fuwQI+5jgMmDYRNXZD4A
|
||||
mJ0vClurQR5avN2xOuxB8HbtB+lQitsNnQCvYY1Xp4s7FtfmT6JzDNQ//vRgXxYr
|
||||
OaVFfoY/ugrO+SfZtqej+mdKR3KgOaAA75t8zcJfM6WGrbPJl3xHc2bhD4kGwRkT
|
||||
AcHJ7WQOIrWz85CPCfIoYh8nZlBlsCNamJJh6Pl2nAtmnfMtDuYZJo/2QK6J/KFt
|
||||
ywsYIekU6fiRsJaaunBf5sD9IxbvJcRRB+HRCsySKYEg8z7Xlh90fHimfUgT0Gt4
|
||||
4/o+nzPh7Cq9Ay6dWtMxYFx78Z1epapOJdUNpZWIET8wQHriJmbJ18TlidGRAW85
|
||||
kW2ka2cr4u6Ed68JQa+nN+kbS0dDeuvOBGOsiqqCy5aeA0oz88HRWWIga02PLTZb
|
||||
Es4PdYrNzHWCISjnk34KpwwxYJUn6Zpy1wIDAQABoxAwDjAMBgNVHRMBAf8EAjAA
|
||||
MA0GCSqGSIb3DQEBCwUAA4ICAQCRRKZLtYiCh86150a7thE/YsQxE3PEVHd4/Ufm
|
||||
UqDRZEbt/ObUNE0Pl0f4ZYu3eSqUeljwTI9E2AHlMznMzVhi0JMQSpLKMdl+5D2L
|
||||
S7tX3YBtAGhYQ7N66Sa4XDXbVQQdup3RxpQ5vwPGKlkHUUG8z+0wgcWzqRoBe1bG
|
||||
+BodXmvfFVqpOqH/1w8M9o10KHpc0hfoq4NJhtYLaZ5xAJh488W+fFywSai2ybqx
|
||||
1xar/q0fiB68J+5/i/6jkBfBS3/MT1hFRu1ieWVEFr71qtN4df+UoiP7DTtmuNzS
|
||||
Z+NQgVKP33PkGT/UrLq4IT1V5jKJHc1+ihUQi/9TeBIrn5d+XdND1Ci063ezJAok
|
||||
S42ZmJK3CHza1nu0bUW8eddX6byv/PxSFRCprpkbi0LPMzEiUtwxpVSBc4P322oQ
|
||||
wRUgL52BXO7zAYrRHWtuBGI1xcJqXiQcBfczEYZrLKx39qZtgBievhppT10HVdLl
|
||||
5E8aRgVMorx/ZUjgScJQFYDPOaRZBeDSmqSf8DqHGSUXlnUey6AIpqH97gfQBsrK
|
||||
U1rmJpKbLZkWyC1G9Lhxti8CE2u1oWjORf57gngKpZEYJ8TU9gKsJsmuJFfHLQWq
|
||||
fPYVB3GlKL/pmNhG0JIzG5fgHd+/bhig7VrUOO+b4IidWeZ5Jqixg7PcVo5wKlGC
|
||||
vkmAyQ==
|
||||
-----END CERTIFICATE-----
|
||||
BIN
app/src/main/assets/emoji/default/emoji_00.png
Normal file
|
After Width: | Height: | Size: 6.9 KiB |
BIN
app/src/main/assets/emoji/default/emoji_01.png
Normal file
|
After Width: | Height: | Size: 6.4 KiB |
BIN
app/src/main/assets/emoji/default/emoji_02.png
Normal file
|
After Width: | Height: | Size: 6.9 KiB |
BIN
app/src/main/assets/emoji/default/emoji_03.png
Normal file
|
After Width: | Height: | Size: 6.6 KiB |
BIN
app/src/main/assets/emoji/default/emoji_04.png
Normal file
|
After Width: | Height: | Size: 6.8 KiB |
BIN
app/src/main/assets/emoji/default/emoji_05.png
Normal file
|
After Width: | Height: | Size: 7.2 KiB |
BIN
app/src/main/assets/emoji/default/emoji_06.png
Normal file
|
After Width: | Height: | Size: 7.5 KiB |
BIN
app/src/main/assets/emoji/default/emoji_07.png
Normal file
|
After Width: | Height: | Size: 6.8 KiB |
BIN
app/src/main/assets/emoji/default/emoji_08.png
Normal file
|
After Width: | Height: | Size: 7.2 KiB |
BIN
app/src/main/assets/emoji/default/emoji_09.png
Normal file
|
After Width: | Height: | Size: 6.8 KiB |
BIN
app/src/main/assets/emoji/default/emoji_10.png
Normal file
|
After Width: | Height: | Size: 6.9 KiB |
BIN
app/src/main/assets/emoji/default/emoji_100.png
Normal file
|
After Width: | Height: | Size: 7.3 KiB |
BIN
app/src/main/assets/emoji/default/emoji_101.png
Normal file
|
After Width: | Height: | Size: 4.9 KiB |
BIN
app/src/main/assets/emoji/default/emoji_102.png
Normal file
|
After Width: | Height: | Size: 8.8 KiB |
BIN
app/src/main/assets/emoji/default/emoji_103.png
Normal file
|
After Width: | Height: | Size: 5.6 KiB |
BIN
app/src/main/assets/emoji/default/emoji_104.png
Normal file
|
After Width: | Height: | Size: 5.4 KiB |
BIN
app/src/main/assets/emoji/default/emoji_105.png
Normal file
|
After Width: | Height: | Size: 4.3 KiB |
BIN
app/src/main/assets/emoji/default/emoji_106.png
Normal file
|
After Width: | Height: | Size: 5.6 KiB |
BIN
app/src/main/assets/emoji/default/emoji_107.png
Normal file
|
After Width: | Height: | Size: 6.4 KiB |
BIN
app/src/main/assets/emoji/default/emoji_108.png
Normal file
|
After Width: | Height: | Size: 7.5 KiB |
BIN
app/src/main/assets/emoji/default/emoji_109.png
Normal file
|
After Width: | Height: | Size: 7.6 KiB |
BIN
app/src/main/assets/emoji/default/emoji_11.png
Normal file
|
After Width: | Height: | Size: 6.4 KiB |
BIN
app/src/main/assets/emoji/default/emoji_110.png
Normal file
|
After Width: | Height: | Size: 7.0 KiB |
BIN
app/src/main/assets/emoji/default/emoji_111.png
Normal file
|
After Width: | Height: | Size: 7.4 KiB |
BIN
app/src/main/assets/emoji/default/emoji_112.png
Normal file
|
After Width: | Height: | Size: 5.8 KiB |
BIN
app/src/main/assets/emoji/default/emoji_113.png
Normal file
|
After Width: | Height: | Size: 5.7 KiB |
BIN
app/src/main/assets/emoji/default/emoji_114.png
Normal file
|
After Width: | Height: | Size: 5.1 KiB |
BIN
app/src/main/assets/emoji/default/emoji_115.png
Normal file
|
After Width: | Height: | Size: 7.7 KiB |
BIN
app/src/main/assets/emoji/default/emoji_12.png
Normal file
|
After Width: | Height: | Size: 8.1 KiB |
BIN
app/src/main/assets/emoji/default/emoji_13.png
Normal file
|
After Width: | Height: | Size: 6.8 KiB |
BIN
app/src/main/assets/emoji/default/emoji_14.png
Normal file
|
After Width: | Height: | Size: 6.6 KiB |
BIN
app/src/main/assets/emoji/default/emoji_145.png
Normal file
|
After Width: | Height: | Size: 6.9 KiB |
BIN
app/src/main/assets/emoji/default/emoji_15.png
Normal file
|
After Width: | Height: | Size: 6.8 KiB |
BIN
app/src/main/assets/emoji/default/emoji_16.png
Normal file
|
After Width: | Height: | Size: 6.4 KiB |
BIN
app/src/main/assets/emoji/default/emoji_160.png
Normal file
|
After Width: | Height: | Size: 8.5 KiB |
BIN
app/src/main/assets/emoji/default/emoji_161.png
Normal file
|
After Width: | Height: | Size: 9.0 KiB |
BIN
app/src/main/assets/emoji/default/emoji_162.png
Normal file
|
After Width: | Height: | Size: 9.0 KiB |
BIN
app/src/main/assets/emoji/default/emoji_163.png
Normal file
|
After Width: | Height: | Size: 8.8 KiB |
BIN
app/src/main/assets/emoji/default/emoji_164.png
Normal file
|
After Width: | Height: | Size: 9.7 KiB |
BIN
app/src/main/assets/emoji/default/emoji_165.png
Normal file
|
After Width: | Height: | Size: 9.7 KiB |
BIN
app/src/main/assets/emoji/default/emoji_166.png
Normal file
|
After Width: | Height: | Size: 10 KiB |
BIN
app/src/main/assets/emoji/default/emoji_167.png
Normal file
|
After Width: | Height: | Size: 6.5 KiB |
BIN
app/src/main/assets/emoji/default/emoji_17.png
Normal file
|
After Width: | Height: | Size: 7.0 KiB |
BIN
app/src/main/assets/emoji/default/emoji_18.png
Normal file
|
After Width: | Height: | Size: 7.3 KiB |
BIN
app/src/main/assets/emoji/default/emoji_19.png
Normal file
|
After Width: | Height: | Size: 8.2 KiB |
BIN
app/src/main/assets/emoji/default/emoji_20.png
Normal file
|
After Width: | Height: | Size: 6.7 KiB |
BIN
app/src/main/assets/emoji/default/emoji_21.png
Normal file
|
After Width: | Height: | Size: 6.9 KiB |
BIN
app/src/main/assets/emoji/default/emoji_22.png
Normal file
|
After Width: | Height: | Size: 7.1 KiB |