Files
pezkuwi-wallet-android/feature-deep-linking/build.gradle
T
SatoshiQaziMuhammed 2d5d8bec49 fix(deeplink): stop links that fail for good from replaying on every launch (#27)
* test(deeplink): pin terminal-failure replay and referendum path matching

These fail on main: a link that fails for good is kept as pending and
replayed on every launch, and /open/governance matches the referendum
handler.

* fix(deeplink): drop a pending link once it fails for good

RootDeepLinkHandler cleared the persisted pending link only on success or
when no handler matched. A link that reached a handler and failed with a
DeepLinkHandlingException stayed in preferences and was replayed on
every launch. Clear it on terminal handling failures in both the fresh
and pending paths; this also recovers installs already stuck on update.
Other failures keep the link pending for a retry.

* fix(deeplink): match the referendum path exactly

ReferendumDeepLinkHandler matched any path starting with /open/gov, so
the governance banner link /open/governance went to the referendum
screen and failed with ReferendumIsNotSpecified.
2026-10-19 16:46:32 +04:00

39 lines
870 B
Groovy

apply plugin: 'kotlin-parcelize'
android {
buildTypes {
release {
minifyEnabled false
proguardFiles getDefaultProguardFile('proguard-android.txt'), 'proguard-rules.pro'
}
}
namespace 'io.novafoundation.nova.feature_deep_linking'
buildFeatures {
viewBinding true
}
}
dependencies {
implementation fileTree(dir: 'libs', include: ['*.jar'])
implementation project(':common')
implementation kotlinDep
implementation androidDep
implementation materialDep
implementation playServiceIdentifier
implementation coroutinesDep
implementation daggerDep
ksp daggerCompiler
testImplementation project(':test-shared')
androidTestImplementation androidTestRunnerDep
androidTestImplementation androidTestRulesDep
androidTestImplementation androidJunitDep
}