Подключение
Минимальные требования
Убедитесь, что ваш проект соответствует следующим требованиям:
- Уровень API 21 (Lollipop) или выше.
- Android 5.0 или выше
- Используется Jetpack (AndroidX), который включает в себя следующие версии:
- com.android.tools.build:gradle v8.1.1 или новее
- targetSdk 33 или новее
- compileSdkVersion 34 или новее
- kotlin 1.9.10 или новее
Подключение библиотеки edna Chat Center Android
Для работы чата необходимо добавить зависимости:
allprojects {
repositories {
google()
mavenCentral()
maven { url 'https://maven-pub.edna.ru/repository/maven-public/' }
}
}
releaseImplementation "edna.chatcenter.ui.android:release:5.2.0"
debugImplementation "edna.chatcenter.ui.android:debug:5.2.0"
Настройки обфускации
Для корректной работы рекомендуется добавить в ProGuard следуюшие строки:
-keepattributes Signature
# For using GSON @Expose annotation
-keepattributes *Annotation*
# Gson specific classes
-dontwarn sun.misc.**
# Application classes that will be serialized/deserialized over Gson
-keep class edna.chatcenter.ui.** { *; }
# Prevent proguard from stripping interface information from TypeAdapter, TypeAdapterFactory,
# JsonSerializer, JsonDeserializer instances (so they can be used in @JsonAdapter)
-keep class * extends com.google.gson.TypeAdapter
-keep class * implements com.google.gson.TypeAdapterFactory
-keep class * implements com.google.gson.JsonSerializer
-keep class * implements com.google.gson.JsonDeserializer
# Prevent R8 from leaving Data object members always null
-keepclassmembers,allowobfuscation class * {
@com.google.gson.annotations.SerializedName <fields>;
}
Кроме того, SDK использует Retrofit и OKHTTP. Необходимо также добавить их proguard настройки:
- https://github.com/square/retrofit/blob/trunk/retrofit/src/main/resources/META-INF/proguard/retrofit2.pro - proguard retrofit
- https://raw.githubusercontent.com/square/okhttp/master/okhttp/src/main/resources/META-INF/proguard/okhttp3.pro - proguard okhttp
осторожно
В build.gradle (на уровне приложения) установите параметр debuggable
в false
для релизной конфигурации.
Иначе это может привести к дополнительным падениям
Используемые библиотеки
SDK использует несколько библиотек для своей работы. Пожалуйста, не используйте версии библиотек ниже указанных.
androidx.core:core-ktx:1.12.0
androidx.preference:preference-ktx:1.2.1
androidx.security:security-crypto-ktx:1.1.0-alpha06
androidx.appcompat:appcompat:1.7.0
com.google.android.material:material:1.11.0
androidx.swiperefreshlayout:swiperefreshlayout:1.1.0
androidx.activity:activity-ktx:1.8.2
androidx.sqlite:sqlite-ktx:2.4.0
com.google.android.material:material:1.11.0
com.annimon:stream:1.2.1
com.google.firebase:firebase-messaging:23.4.1
io.noties.markwon:core:4.6.2
io.noties.markwon:ext-strikethrough:4.6.2
io.noties.markwon:image:4.6.2
org.jsoup:jsoup:1.15.2
com.writingminds:FFmpegAndroid:0.3.2
com.squareup.okhttp3:okhttp:4.12.0
com.squareup.okhttp3:logging-interceptor:4.12.0
com.squareup.picasso:picasso:2.8
com.squareup.retrofit2:retrofit:2.9.0
com.squareup.retrofit2:converter-gson:2.9.0
com.google.code.gson:gson:2.11.0
androidx.work:work-runtime-ktx:2.9.0
com.google.crypto.tink:tink-android:1.7.0
com.google.code.gson:gson:2.11.0