mirror of
https://github.com/selfxyz/self.git
synced 2026-01-09 22:58:20 -05:00
chore: android studio agp assistant; 16kb pagesize fix (#1107)
* upgrade android agp * update ndk and add manual linker for 16kb * upgarde ndk
This commit is contained in:
2
.github/workflows/mobile-ci.yml
vendored
2
.github/workflows/mobile-ci.yml
vendored
@@ -4,7 +4,7 @@ env:
|
||||
# Node version is read from .nvmrc during workflow execution
|
||||
RUBY_VERSION: 3.2
|
||||
JAVA_VERSION: 17
|
||||
ANDROID_NDK_VERSION: 27.0.11718014
|
||||
ANDROID_NDK_VERSION: 27.0.12077973
|
||||
XCODE_VERSION: 16.4
|
||||
# Path configuration
|
||||
WORKSPACE: ${{ github.workspace }}
|
||||
|
||||
2
.github/workflows/mobile-deploy.yml
vendored
2
.github/workflows/mobile-deploy.yml
vendored
@@ -5,7 +5,7 @@ env:
|
||||
RUBY_VERSION: 3.2
|
||||
JAVA_VERSION: 17
|
||||
ANDROID_API_LEVEL: 35
|
||||
ANDROID_NDK_VERSION: 27.0.11718014
|
||||
ANDROID_NDK_VERSION: 27.0.12077973
|
||||
XCODE_VERSION: 16.4
|
||||
|
||||
# Cache versioning - increment these to bust caches when needed
|
||||
|
||||
2
.github/workflows/mobile-e2e.yml
vendored
2
.github/workflows/mobile-e2e.yml
vendored
@@ -4,7 +4,7 @@ env:
|
||||
# Build environment versions
|
||||
JAVA_VERSION: 17
|
||||
ANDROID_API_LEVEL: 33
|
||||
ANDROID_NDK_VERSION: 27.0.11718014
|
||||
ANDROID_NDK_VERSION: 27.0.12077973
|
||||
XCODE_VERSION: 16.4
|
||||
# Cache versions
|
||||
GH_CACHE_VERSION: v1 # Global cache version
|
||||
|
||||
@@ -17,7 +17,7 @@
|
||||
| Java | 17 | [Install Java](https://www.oracle.com/java/technologies/javase-jdk17-downloads.html) |
|
||||
| Android Studio (Optional)\* | Latest | [Install Android Studio](https://developer.android.com/studio) |
|
||||
| Android SDK | Latest | See instructions for Android below |
|
||||
| Android NDK | 27.0.11718014 | See instructions for Android below |
|
||||
| Android NDK | 27.0.12077973 | See instructions for Android below |
|
||||
|
||||
\* To facilitate the installation of the SDK and the NDK, and to pair with development devices with a conventient QR code, you can use Android Studio.
|
||||
|
||||
@@ -60,7 +60,7 @@ In Android Studio, go to **Tools** > **SDK Manager** in the menu
|
||||
|
||||
Under **SDK Platforms**, install the platform with the highest API number
|
||||
|
||||
Under **SDK Tools**, check the **Show Package Details** checkbox, expand **NDK (Side by side)**, select version **27.0.11718014** and install.
|
||||
Under **SDK Tools**, check the **Show Package Details** checkbox, expand **NDK (Side by side)**, select version **27.0.12077973** and install.
|
||||
|
||||
#### Using sdkmanager via CLI
|
||||
|
||||
@@ -83,10 +83,10 @@ $ANDROID_HOME/cmdline-tools/latest/bin/sdkmanager --install "platforms;android-N
|
||||
Install the NDK
|
||||
|
||||
```bash
|
||||
$ANDROID_HOME/cmdline-tools/latest/bin/sdkmanager --install "ndk;27.0.11718014"
|
||||
$ANDROID_HOME/cmdline-tools/latest/bin/sdkmanager --install "ndk;27.0.12077973"
|
||||
```
|
||||
|
||||
Define the environment variable `ANDROID_NDK_VERSION` to `27.0.11718014` and `ANDROID_NDK` to `$ANDROID_HOME/ndk/27.0.11718014`
|
||||
Define the environment variable `ANDROID_NDK_VERSION` to `27.0.12077973` and `ANDROID_NDK` to `$ANDROID_HOME/ndk/27.0.12077973`
|
||||
|
||||
Install Platform Tools, needed for the `adb` tool
|
||||
|
||||
|
||||
@@ -109,6 +109,14 @@ android {
|
||||
buildToolsVersion rootProject.ext.buildToolsVersion
|
||||
compileSdkVersion rootProject.ext.compileSdkVersion
|
||||
|
||||
compileOptions {
|
||||
sourceCompatibility JavaVersion.VERSION_17
|
||||
targetCompatibility JavaVersion.VERSION_17
|
||||
}
|
||||
kotlinOptions {
|
||||
jvmTarget = '17'
|
||||
}
|
||||
|
||||
namespace "com.proofofpassportapp"
|
||||
|
||||
// Build optimizations
|
||||
@@ -128,6 +136,7 @@ android {
|
||||
cmake {
|
||||
cppFlags += "-fexceptions -frtti -std=c++11"
|
||||
arguments += "-DANDROID_STL=c++_shared"
|
||||
arguments += "-Wl,-z,max-page-size=16384"
|
||||
}
|
||||
ndk {
|
||||
if (System.env.E2E_BUILD == "true") {
|
||||
@@ -172,13 +181,13 @@ android {
|
||||
}
|
||||
|
||||
packagingOptions {
|
||||
exclude 'META-INF/LICENSE'
|
||||
exclude 'META-INF/NOTICE'
|
||||
exclude 'META-INF/versions/9/OSGI-INF/MANIFEST.MF'
|
||||
pickFirst '**/libc++_shared.so'
|
||||
jniLibs {
|
||||
// Use modern packaging so AGP can 16 KB-align uncompressed .so files
|
||||
useLegacyPackaging false
|
||||
pickFirsts += ['**/libc++_shared.so']
|
||||
}
|
||||
resources {
|
||||
excludes += ['META-INF/LICENSE', 'META-INF/NOTICE', 'META-INF/versions/9/OSGI-INF/MANIFEST.MF']
|
||||
}
|
||||
}
|
||||
}
|
||||
@@ -222,3 +231,9 @@ dependencies {
|
||||
|
||||
implementation "com.google.android.play:app-update:2.1.0"
|
||||
}
|
||||
|
||||
java {
|
||||
toolchain {
|
||||
languageVersion = JavaLanguageVersion.of(17)
|
||||
}
|
||||
}
|
||||
|
||||
@@ -18,7 +18,7 @@
|
||||
android:icon="@mipmap/ic_launcher"
|
||||
android:roundIcon="@mipmap/ic_launcher"
|
||||
android:extractNativeLibs="false"
|
||||
tools:replace="android:icon, android:roundIcon, android:name, android:extractNativeLibs"
|
||||
tools:replace="android:icon, android:roundIcon, android:name, android:extractNativeLibs"
|
||||
android:theme="@style/AppTheme"
|
||||
android:supportsRtl="true"
|
||||
android:usesCleartextTraffic="true"
|
||||
|
||||
@@ -7,7 +7,7 @@ buildscript {
|
||||
compileSdkVersion = 35
|
||||
targetSdkVersion = 35
|
||||
// Updated NDK to support 16k page size devices
|
||||
ndkVersion = "27.1.12297006"
|
||||
ndkVersion = "27.0.12077973"
|
||||
kotlinVersion = "1.9.24"
|
||||
firebaseMessagingVersion = "23.4.0"
|
||||
firebaseBomVersion = "32.7.3"
|
||||
@@ -20,7 +20,7 @@ buildscript {
|
||||
}
|
||||
}
|
||||
dependencies {
|
||||
classpath("com.android.tools.build:gradle:8.6.0")
|
||||
classpath('com.android.tools.build:gradle:8.11.2')
|
||||
classpath("com.facebook.react:react-native-gradle-plugin")
|
||||
classpath "org.jetbrains.kotlin:kotlin-gradle-plugin:$kotlinVersion"
|
||||
classpath 'com.google.gms:google-services:4.4.0'
|
||||
|
||||
@@ -1,7 +1,7 @@
|
||||
#Mon Feb 03 16:12:34 CET 2025
|
||||
distributionBase=GRADLE_USER_HOME
|
||||
distributionPath=wrapper/dists
|
||||
distributionUrl=https\://services.gradle.org/distributions/gradle-8.12-all.zip
|
||||
distributionUrl=https\://services.gradle.org/distributions/gradle-8.13-all.zip
|
||||
networkTimeout=600000
|
||||
validateDistributionUrl=true
|
||||
zipStoreBase=GRADLE_USER_HOME
|
||||
|
||||
@@ -4,9 +4,10 @@ apply plugin: 'kotlin-android'
|
||||
android {
|
||||
namespace "io.tradle.nfc"
|
||||
// Use NDK that supports 16k page size
|
||||
ndkVersion = "27.1.12297006"
|
||||
ndkVersion = "27.0.12077973"
|
||||
compileSdkVersion 33
|
||||
defaultConfig {
|
||||
minSdkVersion 21
|
||||
targetSdkVersion 33
|
||||
versionCode 1
|
||||
versionName "1.0"
|
||||
|
||||
@@ -116,7 +116,7 @@ NODE_VERSION: 18
|
||||
RUBY_VERSION: 3.2
|
||||
JAVA_VERSION: 17
|
||||
ANDROID_API_LEVEL: 35
|
||||
ANDROID_NDK_VERSION: 27.0.11718014
|
||||
ANDROID_NDK_VERSION: 27.0.12077973
|
||||
```
|
||||
|
||||
## 🏷️ Git Tags & Releases
|
||||
@@ -214,4 +214,4 @@ Before certificates expire:
|
||||
|
||||
---
|
||||
|
||||
For local development and manual release processes, see [`app/README.md`](../app/README.md)
|
||||
For local development and manual release processes, see [`app/README.md`](../app/README.md)
|
||||
|
||||
@@ -4,7 +4,7 @@ buildscript {
|
||||
minSdkVersion = 23
|
||||
compileSdkVersion = 35
|
||||
targetSdkVersion = 35
|
||||
ndkVersion = "27.0.11718014"
|
||||
ndkVersion = "27.0.12077973"
|
||||
kotlinVersion = "1.9.24"
|
||||
}
|
||||
repositories {
|
||||
|
||||
@@ -4,7 +4,7 @@ buildscript {
|
||||
minSdkVersion = 24
|
||||
compileSdkVersion = 36
|
||||
targetSdkVersion = 36
|
||||
ndkVersion = "27.1.12297006"
|
||||
ndkVersion = "27.0.12077973"
|
||||
kotlinVersion = "2.1.20"
|
||||
}
|
||||
repositories {
|
||||
|
||||
Reference in New Issue
Block a user