mirror of
https://github.com/signalapp/libsignal.git
synced 2026-04-25 17:25:18 +02:00
android: Bump minSdkVersion to 23
This commit is contained in:
10
.github/workflows/slow_tests.yml
vendored
10
.github/workflows/slow_tests.yml
vendored
@@ -158,12 +158,12 @@ jobs:
|
||||
strategy:
|
||||
fail-fast: false
|
||||
matrix:
|
||||
# 21 is our minimal API level
|
||||
# 23 is our minimal API level
|
||||
# 33 is our target API level
|
||||
include:
|
||||
- api_level: 21
|
||||
- api_level: 23
|
||||
arch: x86
|
||||
- api_level: 21
|
||||
- api_level: 23
|
||||
arch: x86_64
|
||||
- api_level: 33
|
||||
arch: x86_64
|
||||
@@ -211,7 +211,7 @@ jobs:
|
||||
api-level: ${{ matrix.api_level }}
|
||||
ndk: ${{ env.ANDROID_NDK_VERSION }}
|
||||
force-avd-creation: false
|
||||
disk-size: 1024M
|
||||
disk-size: 2048M
|
||||
emulator-options: -no-window -noaudio -no-boot-anim -no-metrics
|
||||
script: echo "Generated AVD snapshot for caching."
|
||||
|
||||
@@ -221,7 +221,7 @@ jobs:
|
||||
arch: ${{ matrix.arch }}
|
||||
api-level: ${{ matrix.api_level }}
|
||||
ndk: ${{ env.ANDROID_NDK_VERSION }}
|
||||
disk-size: 1024M
|
||||
disk-size: 2048M
|
||||
force-avd-creation: false
|
||||
emulator-options: -no-snapshot-save -no-window -noaudio -no-boot-anim -no-metrics
|
||||
script: |
|
||||
|
||||
@@ -81,7 +81,7 @@ These should usually be prioritized in that order, but adjust the trade-off as n
|
||||
|
||||
# Java
|
||||
|
||||
- Many of our APIs are shared between Android and Server, and we also run the client tests on desktop machines, so **stick to Java 8** unless you've verified that something newer is available on Android (back to our earliest supported version, API level 21, at the time of this writing), and don't use Android-specific APIs unless you're actually in Android-specific code. (This *should* be checked in CI but things have slipped through before, and it'll save you time to know whether you're allowed to use something.)
|
||||
- Many of our APIs are shared between Android and Server, and we also run the client tests on desktop machines, so **stick to Java 8** unless you've verified that something newer is available on Android (back to our earliest supported version, API level 23, at the time of this update), and don't use Android-specific APIs unless you're actually in Android-specific code. (This *should* be checked in CI but things have slipped through before, and it'll save you time to know whether you're allowed to use something.)
|
||||
|
||||
- **Put server-specific APIs in the server/ folder if they're not needed to test client features**, so they don't add code size for Android.
|
||||
|
||||
|
||||
@@ -3,3 +3,5 @@ v0.86.0
|
||||
- Node: export libsignal-net remote config keys as an array.
|
||||
|
||||
- java: Remove protocol.util.Pair in favor of kotlin.Pair
|
||||
|
||||
- Android: The min SDK version is now 23.
|
||||
|
||||
@@ -42,7 +42,7 @@ Rust allows running tests with cross-compiled targets, but normally that only wo
|
||||
ANDROID_NDK_HOME=path/to/ndk
|
||||
CARGO_PROFILE_TEST_STRIP=debuginfo # make the "push" step take less time
|
||||
CARGO_PROFILE_BENCH_STRIP=debuginfo # same for benchmarks
|
||||
CARGO_TARGET_AARCH64_LINUX_ANDROID_LINKER=path/to/ndk/toolchains/llvm/prebuilt/YOUR_HOST_HERE/bin/aarch64-linux-android21-clang
|
||||
CARGO_TARGET_AARCH64_LINUX_ANDROID_LINKER=path/to/ndk/toolchains/llvm/prebuilt/YOUR_HOST_HERE/bin/aarch64-linux-android23-clang
|
||||
CARGO_TARGET_AARCH64_LINUX_ANDROID_RUNNER=bin/adb-run-test # in the repo root
|
||||
```
|
||||
|
||||
|
||||
@@ -13,7 +13,7 @@ android {
|
||||
compileSdk 34
|
||||
|
||||
defaultConfig {
|
||||
minSdkVersion 21
|
||||
minSdkVersion 23
|
||||
targetSdkVersion 33
|
||||
multiDexEnabled true
|
||||
|
||||
|
||||
@@ -22,7 +22,7 @@ android {
|
||||
ndkVersion '28.0.13004108'
|
||||
|
||||
defaultConfig {
|
||||
minSdkVersion 21
|
||||
minSdkVersion 23
|
||||
targetSdkVersion 33
|
||||
multiDexEnabled true
|
||||
testInstrumentationRunner "org.signal.libsignal.util.AndroidJUnitRunner"
|
||||
|
||||
@@ -12,7 +12,7 @@ android {
|
||||
compileSdk 34
|
||||
|
||||
defaultConfig {
|
||||
minSdkVersion 21
|
||||
minSdkVersion 23
|
||||
targetSdkVersion 33
|
||||
multiDexEnabled true
|
||||
|
||||
|
||||
@@ -188,10 +188,11 @@ export CARGO_PROFILE_RELEASE_CODEGEN_UNITS=1
|
||||
|
||||
# Use the Android NDK's prebuilt Clang+lld as pqcrypto's compiler and Rust's linker.
|
||||
ANDROID_TOOLCHAIN_DIR=$(echo "${ANDROID_NDK_HOME}/toolchains/llvm/prebuilt"/*/bin/)
|
||||
export CC_aarch64_linux_android="${ANDROID_TOOLCHAIN_DIR}/aarch64-linux-android21-clang"
|
||||
export CC_armv7_linux_androideabi="${ANDROID_TOOLCHAIN_DIR}/armv7a-linux-androideabi21-clang"
|
||||
export CC_x86_64_linux_android="${ANDROID_TOOLCHAIN_DIR}/x86_64-linux-android21-clang"
|
||||
export CC_i686_linux_android="${ANDROID_TOOLCHAIN_DIR}/i686-linux-android21-clang"
|
||||
ANDROID_MIN_SDK_VERSION=23
|
||||
export CC_aarch64_linux_android="${ANDROID_TOOLCHAIN_DIR}/aarch64-linux-android${ANDROID_MIN_SDK_VERSION}-clang"
|
||||
export CC_armv7_linux_androideabi="${ANDROID_TOOLCHAIN_DIR}/armv7a-linux-androideabi${ANDROID_MIN_SDK_VERSION}-clang"
|
||||
export CC_x86_64_linux_android="${ANDROID_TOOLCHAIN_DIR}/x86_64-linux-android${ANDROID_MIN_SDK_VERSION}-clang"
|
||||
export CC_i686_linux_android="${ANDROID_TOOLCHAIN_DIR}/i686-linux-android${ANDROID_MIN_SDK_VERSION}-clang"
|
||||
|
||||
export CARGO_TARGET_AARCH64_LINUX_ANDROID_LINKER="${CC_aarch64_linux_android}"
|
||||
export CARGO_TARGET_ARMV7_LINUX_ANDROIDEABI_LINKER="${CC_armv7_linux_androideabi}"
|
||||
|
||||
Reference in New Issue
Block a user