51fd1bf936
1. trust-all TLS отключён в release: гейт if(!BuildConfig.DEBUG) в UnsafeSsl + OfficeWebViewClient + TalkCallActivity; чекбокс скрыт в release. buildConfig включён в core:network и feature:talk. 2. allowBackup=false (tools:replace поверх vendor true). 3. app password шифруется в покое AndroidKeystore AES-256-GCM (KeystoreCrypto), AuthStore мигрирует legacy-plaintext при первом load. Биометрия — отдельная задача (ломает фоновые push/звонки, нужен кэш в памяти). 4. Ревокация app password при logout (AppPasswordRevoker, DELETE core/apppassword, best-effort). Проверено: assembleRelease 53 МБ, подпись v2+v3, allowBackup=false в манифесте OK.
49 lines
1.6 KiB
Groovy
49 lines
1.6 KiB
Groovy
plugins {
|
|
id 'com.android.library'
|
|
id 'org.jetbrains.kotlin.android'
|
|
id 'org.jetbrains.kotlin.plugin.compose'
|
|
id 'com.google.devtools.ksp'
|
|
}
|
|
|
|
android {
|
|
namespace 'ru.forbion.f7cloud.feature.talk'
|
|
compileSdk 36
|
|
|
|
defaultConfig {
|
|
minSdk 26
|
|
}
|
|
buildFeatures {
|
|
compose true
|
|
buildConfig true // BuildConfig.DEBUG — гейт trust-all TLS в WebView звонка (только debug)
|
|
}
|
|
compileOptions {
|
|
sourceCompatibility JavaVersion.VERSION_17
|
|
targetCompatibility JavaVersion.VERSION_17
|
|
}
|
|
kotlinOptions {
|
|
jvmTarget = '17'
|
|
}
|
|
}
|
|
|
|
dependencies {
|
|
implementation project(':core:auth')
|
|
implementation project(':core:network')
|
|
implementation project(':core:push')
|
|
implementation project(':feature:talk-native')
|
|
implementation project(':core:designsystem')
|
|
implementation 'org.jetbrains.kotlinx:kotlinx-coroutines-android:1.10.1'
|
|
implementation 'org.json:json:20240303'
|
|
def composeBom = platform('androidx.compose:compose-bom:2025.02.00')
|
|
implementation composeBom
|
|
implementation 'androidx.compose.ui:ui'
|
|
implementation 'androidx.compose.material3:material3'
|
|
implementation 'androidx.compose.foundation:foundation'
|
|
implementation 'androidx.compose.foundation:foundation-layout'
|
|
implementation 'androidx.activity:activity-compose:1.10.1'
|
|
implementation 'androidx.lifecycle:lifecycle-viewmodel-compose:2.8.7'
|
|
implementation 'io.coil-kt:coil-compose:2.7.0'
|
|
implementation 'androidx.room:room-runtime:2.7.2'
|
|
implementation 'androidx.room:room-ktx:2.7.2'
|
|
ksp 'androidx.room:room-compiler:2.7.2'
|
|
}
|