Skip to content

Support libsignal 0.101.0 Android JNI classifiers - #2105

Open
dvrdnz wants to merge 3 commits into
AsamK:masterfrom
dvrdnz:android-jni-classifier-consumer
Open

Support libsignal 0.101.0 Android JNI classifiers#2105
dvrdnz wants to merge 3 commits into
AsamK:masterfrom
dvrdnz:android-jni-classifier-consumer

Conversation

@dvrdnz

@dvrdnz dvrdnz commented Aug 19, 2026

Copy link
Copy Markdown

Summary

Update signal-cli to libsignal-client 0.101.0 and add support for consuming the Android JNI classifier artifacts published by the corresponding libsignal change (libsignal/pull/689).

Changes

  • Stop relying on the transitive libsignal-client dependency from signal-network.
  • Depend explicitly on org.signal:libsignal-client:0.101.0.
  • Add an optional androidClassifier Gradle property for platform-specific JNI artifacts.
  • Keep the existing libsignal_client_path local-JAR override.
  • Migrate SessionStore to the libsignal-client 0.101.0 hasSenderChain() API.

Android classifier

For example:

-PandroidClassifier=android-aarch64

resolves:

org.signal:libsignal-client:0.101.0
+
org.signal:libsignal-client:0.101.0:android-aarch64

The normal JAR provides the Java API while the classifier provides libsignal_jni.so.

Validation

Verified on Termux / Android aarch64:

./gradlew clean classes
./gradlew :libsignal-cli:compileTestJava
./gradlew --offline \
  -PandroidClassifier=android-aarch64 \
  :libsignal-cli:clean \
  :libsignal-cli:test

The Android-classifier test completed successfully.

This PR depends on the corresponding libsignal change that publishes the Android JNI classifier artifacts.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

1 participant