Browse Source

Merge pull request #3604 from element-hq/feature/bma/fixBuildWithLocalSdk

Fix building the app using a local SDK.
pull/3607/head
Benoit Marty 2 weeks ago committed by GitHub
parent
commit
05a6a3b3ce
No known key found for this signature in database
GPG Key ID: B5690EEEBB952194
  1. 2
      app/build.gradle.kts
  2. 5
      libraries/matrix/impl/src/main/kotlin/io/element/android/libraries/matrix/impl/RustMatrixClientFactory.kt
  3. 3
      libraries/matrix/impl/src/main/kotlin/io/element/android/libraries/matrix/impl/analytics/UtdTracker.kt
  4. 3
      samples/minimal/src/main/kotlin/io/element/android/samples/minimal/MainActivity.kt

2
app/build.gradle.kts

@ -275,8 +275,6 @@ dependencies { @@ -275,8 +275,6 @@ dependencies {
implementation(libs.serialization.json)
implementation(libs.matrix.emojibase.bindings)
// Needed for UtdTracker
implementation(libs.matrix.sdk)
testImplementation(libs.test.junit)
testImplementation(libs.test.robolectric)

5
libraries/matrix/impl/src/main/kotlin/io/element/android/libraries/matrix/impl/RustMatrixClientFactory.kt

@ -21,6 +21,7 @@ import io.element.android.libraries.matrix.impl.util.anonymizedTokens @@ -21,6 +21,7 @@ import io.element.android.libraries.matrix.impl.util.anonymizedTokens
import io.element.android.libraries.network.useragent.UserAgentProvider
import io.element.android.libraries.sessionstorage.api.SessionData
import io.element.android.libraries.sessionstorage.api.SessionStore
import io.element.android.services.analytics.api.AnalyticsService
import io.element.android.services.toolbox.api.systemclock.SystemClock
import kotlinx.coroutines.CoroutineScope
import kotlinx.coroutines.withContext
@ -44,7 +45,7 @@ class RustMatrixClientFactory @Inject constructor( @@ -44,7 +45,7 @@ class RustMatrixClientFactory @Inject constructor(
private val userCertificatesProvider: UserCertificatesProvider,
private val proxyProvider: ProxyProvider,
private val clock: SystemClock,
private val utdTracker: UtdTracker,
private val analyticsService: AnalyticsService,
private val featureFlagService: FeatureFlagService,
private val timelineEventTypeFilterFactory: TimelineEventTypeFilterFactory,
private val clientBuilderProvider: ClientBuilderProvider,
@ -64,7 +65,7 @@ class RustMatrixClientFactory @Inject constructor( @@ -64,7 +65,7 @@ class RustMatrixClientFactory @Inject constructor(
client.restoreSession(sessionData.toSession())
val syncService = client.syncService()
.withUtdHook(utdTracker)
.withUtdHook(UtdTracker(analyticsService))
.finish()
val (anonymizedAccessToken, anonymizedRefreshToken) = sessionData.anonymizedTokens()

3
libraries/matrix/impl/src/main/kotlin/io/element/android/libraries/matrix/impl/analytics/UtdTracker.kt

@ -13,9 +13,8 @@ import org.matrix.rustcomponents.sdk.UnableToDecryptDelegate @@ -13,9 +13,8 @@ import org.matrix.rustcomponents.sdk.UnableToDecryptDelegate
import org.matrix.rustcomponents.sdk.UnableToDecryptInfo
import timber.log.Timber
import uniffi.matrix_sdk_crypto.UtdCause
import javax.inject.Inject
class UtdTracker @Inject constructor(
class UtdTracker(
private val analyticsService: AnalyticsService,
) : UnableToDecryptDelegate {
override fun onUtd(info: UnableToDecryptInfo) {

3
samples/minimal/src/main/kotlin/io/element/android/samples/minimal/MainActivity.kt

@ -21,7 +21,6 @@ import io.element.android.compound.theme.ElementTheme @@ -21,7 +21,6 @@ import io.element.android.compound.theme.ElementTheme
import io.element.android.libraries.matrix.api.auth.MatrixAuthenticationService
import io.element.android.libraries.matrix.impl.RustClientBuilderProvider
import io.element.android.libraries.matrix.impl.RustMatrixClientFactory
import io.element.android.libraries.matrix.impl.analytics.UtdTracker
import io.element.android.libraries.matrix.impl.auth.OidcConfigurationProvider
import io.element.android.libraries.matrix.impl.auth.RustMatrixAuthenticationService
import io.element.android.libraries.matrix.impl.paths.SessionPathsFactory
@ -56,7 +55,7 @@ class MainActivity : ComponentActivity() { @@ -56,7 +55,7 @@ class MainActivity : ComponentActivity() {
userCertificatesProvider = userCertificatesProvider,
proxyProvider = proxyProvider,
clock = DefaultSystemClock(),
utdTracker = UtdTracker(NoopAnalyticsService()),
analyticsService = NoopAnalyticsService(),
featureFlagService = AlwaysEnabledFeatureFlagService(),
timelineEventTypeFilterFactory = RustTimelineEventTypeFilterFactory(),
clientBuilderProvider = RustClientBuilderProvider(),

Loading…
Cancel
Save