103 lines
3.9 KiB
Groovy
103 lines
3.9 KiB
Groovy
plugins {
|
|
id "com.android.application"
|
|
id "org.jetbrains.kotlin.android"
|
|
id "org.jetbrains.kotlin.plugin.compose"
|
|
}
|
|
|
|
def umengPublicAppKey = providers.gradleProperty("multicaUmengPublicAppKey")
|
|
.orElse("")
|
|
.get()
|
|
def postHogPublicApiKey = providers.gradleProperty("multicaPostHogPublicApiKey")
|
|
.orElse("")
|
|
.get()
|
|
def postHogPublicHost = providers.gradleProperty("multicaPostHogPublicHost")
|
|
.orElse("https://us.i.posthog.com")
|
|
.get()
|
|
def analyticsRoute = providers.gradleProperty("multicaAnalyticsRoute")
|
|
.orElse("auto")
|
|
.get()
|
|
|
|
android {
|
|
namespace "ai.multica.app"
|
|
compileSdk 36
|
|
buildToolsVersion "36.1.0"
|
|
|
|
defaultConfig {
|
|
applicationId "ai.multicasual.app"
|
|
minSdk 24
|
|
targetSdk 36
|
|
versionCode 1
|
|
versionName "1.0"
|
|
testInstrumentationRunner "androidx.test.runner.AndroidJUnitRunner"
|
|
}
|
|
|
|
compileOptions {
|
|
sourceCompatibility JavaVersion.VERSION_17
|
|
targetCompatibility JavaVersion.VERSION_17
|
|
}
|
|
|
|
kotlinOptions {
|
|
jvmTarget = "17"
|
|
}
|
|
|
|
buildFeatures {
|
|
compose true
|
|
buildConfig true
|
|
}
|
|
|
|
flavorDimensions "distribution"
|
|
productFlavors {
|
|
create("public") {
|
|
dimension "distribution"
|
|
applicationId "ai.multicasual.app"
|
|
resValue "string", "app_name", "Multi-Casual"
|
|
manifestPlaceholders = [
|
|
usesCleartextTraffic: "false",
|
|
deepLinkScheme: "multi-casual",
|
|
umengDeepLinkScheme: "um.${umengPublicAppKey}"
|
|
]
|
|
buildConfigField "String", "MULTICA_ENVIRONMENT", "\"public\""
|
|
buildConfigField "String", "MULTICA_API_BASE_URL", "\"https://api.multica.ai\""
|
|
buildConfigField "String", "MULTICA_WEB_BASE_URL", "\"https://app.multica.ai\""
|
|
buildConfigField "String", "MULTICA_WS_BASE_URL", "\"wss://api.multica.ai\""
|
|
buildConfigField "String", "MULTICA_AUTH_PREFS_NAME", "\"multi_casual_auth\""
|
|
buildConfigField "String", "ANALYTICS_ROUTE", "\"${analyticsRoute}\""
|
|
buildConfigField "boolean", "UMENG_ENABLED", "true"
|
|
buildConfigField "String", "UMENG_APP_KEY", "\"${umengPublicAppKey}\""
|
|
buildConfigField "String", "UMENG_CHANNEL", "\"public\""
|
|
buildConfigField "boolean", "POSTHOG_ENABLED", "true"
|
|
buildConfigField "String", "POSTHOG_API_KEY", "\"${postHogPublicApiKey}\""
|
|
buildConfigField "String", "POSTHOG_HOST", "\"${postHogPublicHost}\""
|
|
}
|
|
}
|
|
|
|
buildTypes {
|
|
release {
|
|
proguardFiles getDefaultProguardFile("proguard-android-optimize.txt"), "proguard-rules.pro"
|
|
}
|
|
}
|
|
}
|
|
|
|
dependencies {
|
|
publicImplementation "com.umeng.umsdk:common:9.9.2"
|
|
publicImplementation "com.umeng.umsdk:asms:1.8.7.2"
|
|
publicImplementation "com.posthog:posthog-android:3.47.0"
|
|
implementation platform("androidx.compose:compose-bom:2024.10.01")
|
|
implementation "androidx.activity:activity-compose:1.9.3"
|
|
implementation "androidx.compose.foundation:foundation"
|
|
implementation "androidx.compose.material3:material3"
|
|
implementation "androidx.compose.material:material-icons-extended"
|
|
implementation "androidx.compose.ui:ui"
|
|
implementation "androidx.compose.ui:ui-tooling-preview"
|
|
implementation "io.github.alexzhirkevich:cupertino:0.1.0-alpha04"
|
|
implementation "dev.chrisbanes.haze:haze:1.6.10"
|
|
implementation "com.airbnb.android:lottie-compose:6.7.1"
|
|
implementation "io.coil-kt:coil-compose:2.7.0"
|
|
testImplementation "junit:junit:4.13.2"
|
|
testImplementation "org.json:json:20240303"
|
|
androidTestImplementation "androidx.test:runner:1.6.2"
|
|
androidTestImplementation "androidx.test.ext:junit:1.2.1"
|
|
androidTestImplementation "androidx.test.uiautomator:uiautomator:2.3.0"
|
|
debugImplementation "androidx.compose.ui:ui-tooling"
|
|
}
|