Skip to content
Draft
Show file tree
Hide file tree
Changes from all commits
Commits
Show all changes
20 commits
Select commit Hold shift + click to select a range
fa15cc7
build: support 16kb page on android.
richardo2016x Oct 10, 2025
5847383
build: enable `android:pageSizeCompat` to make app run in API level 3…
richardo2016x Oct 10, 2025
b6fec46
build: fix `libconceal.so` alignment for x86_64 platform
richardo2016x Oct 14, 2025
78a6709
build: fix `libpl_droidsonroids_gif.so` alignment for x86_64 platform
richardo2016x Oct 14, 2025
7a97526
build: fix ts error
richardo2016x Oct 14, 2025
828d842
build: fix error on iOS.
richardo2016x Oct 14, 2025
a58197d
chore: code cleanup
richardo2016x Oct 16, 2025
3d9756d
Merge remote-tracking branch 'origin/develop' into build/android_16kb…
richardo2016x Nov 3, 2025
2d4a281
Merge remote-tracking branch 'origin/develop' into build/android_16kb…
richardo2016x Nov 7, 2025
c52646a
style: make @rneui-base adapt to rn 0.77
richardo2016x Nov 7, 2025
945f6a2
fix: disallow cache user's authentication result
richardo2016x Nov 7, 2025
9a764a8
Merge remote-tracking branch 'origin/develop' into build/android_16kb…
richardo2016x Nov 7, 2025
1e5bcd0
Merge remote-tracking branch 'origin/develop' into build/android_16kb…
richardo2016x Nov 8, 2025
54d87f4
Merge remote-tracking branch 'origin/develop' into build/android_16kb…
richardo2016x Nov 10, 2025
97960ec
build: downgrade react-native-keychain to 9.x
richardo2016x Nov 11, 2025
d0cb020
feat: also record perps account.
richardo2016x Nov 10, 2025
2b51c73
style: avoid white flash on bootstrap
richardo2016x Nov 10, 2025
7c55fb9
style: little fix.
richardo2016x Nov 12, 2025
f10c411
feat: remove loading token tips
richardo2016x Nov 12, 2025
c15a871
Merge branch 'style/fix' into build/android_16kb_page_support
richardo2016x Nov 12, 2025
File filter

Filter by extension

Filter by extension


Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
13 changes: 13 additions & 0 deletions .yarn/patches/@rneui-base-npm-4.0.0-rc.8-23456f2e0d.patch
Original file line number Diff line number Diff line change
@@ -0,0 +1,13 @@
diff --git a/dist/Slider/Slider.js b/dist/Slider/Slider.js
index 87dab6d9ed1366f9f3f33f53a2560917e947c0de..bb3f9550d931c6c7b114092f89aef0396c853b2b 100644
--- a/dist/Slider/Slider.js
+++ b/dist/Slider/Slider.js
@@ -15,7 +15,7 @@ import { Rect } from './components/Rect';
import { SliderThumb } from './components/SliderThumb';
const TRACK_SIZE = 4;
const THUMB_SIZE = 40;
-const TRACK_STYLE = Platform.select({ web: 0, default: -1 });
+const TRACK_STYLE = Platform.select({ web: 0, default: 0 });
const DEFAULT_ANIMATION_CONFIGS = {
spring: {
friction: 7,
26 changes: 26 additions & 0 deletions .yarn/patches/react-native-keychain-npm-10.0.0-66d5ef899d.patch
Original file line number Diff line number Diff line change
@@ -0,0 +1,26 @@
diff --git a/android/src/main/java/com/oblador/keychain/cipherStorage/CipherStorageKeystoreAesGcm.kt b/android/src/main/java/com/oblador/keychain/cipherStorage/CipherStorageKeystoreAesGcm.kt
index 6b6e626161945d21d2cf1392a5d16d41d1675b57..aec25ae774a0084e39c69959bb365482f6d13dbe 100644
--- a/android/src/main/java/com/oblador/keychain/cipherStorage/CipherStorageKeystoreAesGcm.kt
+++ b/android/src/main/java/com/oblador/keychain/cipherStorage/CipherStorageKeystoreAesGcm.kt
@@ -158,7 +158,7 @@ class CipherStorageKeystoreAesGcm(
): KeyGenParameterSpec.Builder {
val purposes = KeyProperties.PURPOSE_DECRYPT or KeyProperties.PURPOSE_ENCRYPT

- val validityDuration = 5
+ val validityDuration = 1
val keyGenParameterSpecBuilder =
KeyGenParameterSpec.Builder(alias, purposes).setBlockModes(BLOCK_MODE_GCM)
.setEncryptionPaddings(PADDING_NONE).setRandomizedEncryptionRequired(true)
diff --git a/android/src/main/java/com/oblador/keychain/cipherStorage/CipherStorageKeystoreRsaEcb.kt b/android/src/main/java/com/oblador/keychain/cipherStorage/CipherStorageKeystoreRsaEcb.kt
index fc8ebf18c60c1efb5f2b44ec7d8e0762c519213c..440b442a2afaf9a44b31b16f2db37c28a3452ccd 100644
--- a/android/src/main/java/com/oblador/keychain/cipherStorage/CipherStorageKeystoreRsaEcb.kt
+++ b/android/src/main/java/com/oblador/keychain/cipherStorage/CipherStorageKeystoreRsaEcb.kt
@@ -182,7 +182,7 @@ class CipherStorageKeystoreRsaEcb(reactContext: ReactApplicationContext) :

val keySize = ENCRYPTION_KEY_SIZE

- val validityDuration = 5
+ val validityDuration = 1
val keyGenParameterSpecBuilder =
KeyGenParameterSpec.Builder(alias, purposes)
.setBlockModes(BLOCK_MODE_ECB)
537 changes: 0 additions & 537 deletions .yarn/patches/react-native-keychain-npm-8.0.0-22c1f5c020.patch

This file was deleted.

13 changes: 13 additions & 0 deletions .yarn/patches/react-native-keychain-npm-9.1.0-ded956502d.patch
Original file line number Diff line number Diff line change
@@ -0,0 +1,13 @@
diff --git a/android/src/main/java/com/oblador/keychain/cipherStorage/CipherStorageKeystoreRsaEcb.kt b/android/src/main/java/com/oblador/keychain/cipherStorage/CipherStorageKeystoreRsaEcb.kt
index f01ff2400e159314d19d545885e255b5d6c628ac..765ca1157cecd1cd842c08a840003c7d313757e7 100644
--- a/android/src/main/java/com/oblador/keychain/cipherStorage/CipherStorageKeystoreRsaEcb.kt
+++ b/android/src/main/java/com/oblador/keychain/cipherStorage/CipherStorageKeystoreRsaEcb.kt
@@ -202,7 +202,7 @@ class CipherStorageKeystoreRsaEcb(@NonNull reactContext: ReactApplicationContext

val keySize = if (isForTesting) ENCRYPTION_KEY_SIZE_WHEN_TESTING else ENCRYPTION_KEY_SIZE

- val validityDuration = 5
+ val validityDuration = 1
val keyGenParameterSpecBuilder =
KeyGenParameterSpec.Builder(alias, purposes)
.setBlockModes(BLOCK_MODE_ECB)
13 changes: 13 additions & 0 deletions .yarn/patches/react-native-mmkv-npm-2.12.2-9efa7abf70.patch
Original file line number Diff line number Diff line change
@@ -1,3 +1,16 @@
diff --git a/android/build.gradle b/android/build.gradle
index d91238762ab58c649b262f1135588b765db235b8..62e8aa21c6e14b22effff8e15cb7e54a71356a90 100644
--- a/android/build.gradle
+++ b/android/build.gradle
@@ -91,7 +91,7 @@ android {
externalNativeBuild {
cmake {
cppFlags "-O2 -frtti -fexceptions -Wall -Wno-unused-variable -fstack-protector-all"
- arguments "-DANDROID_STL=c++_shared"
+ arguments "-DANDROID_STL=c++_shared", "-DANDROID_SUPPORT_FLEXIBLE_PAGE_SIZES=ON"
abiFilters (*reactNativeArchitectures())
}
}
diff --git a/android/src/main/cpp/MmkvHostObject.cpp b/android/src/main/cpp/MmkvHostObject.cpp
index 1ffbdc2d960f800cae56de82ae4cff2d6586a477..9ccc10fc28f5a4a0aebd9ded4c266592d000f781 100644
--- a/android/src/main/cpp/MmkvHostObject.cpp
Expand Down
Original file line number Diff line number Diff line change
@@ -1,16 +1,27 @@
diff --git a/android/build.gradle b/android/build.gradle
index 45e323e8fe045f2d9c74c912a446cfc81ce35b6b..983cae1b63a52826fa51e4a48398f46abeb28117 100644
index 45e323e8fe045f2d9c74c912a446cfc81ce35b6b..463c0e1c95f10540eac9a290a21a33bf355e0358 100644
--- a/android/build.gradle
+++ b/android/build.gradle
@@ -112,7 +112,7 @@ android {
@@ -112,7 +112,9 @@ android {
externalNativeBuild {
cmake {
cppFlags "-O2 -frtti -fexceptions -Wall -Wno-unused-variable -fstack-protector-all -DANDROID"
- arguments "-DANDROID_STL=c++_shared"
+ arguments "-DANDROID_STL=c++_shared", "-DNODE_MODULES_DIR=${nodeModules}", "-DRABBY_QUICK_CRYPTO_BUILD_TYPE=${resolveBuildType()}"
+ arguments "-DANDROID_STL=c++_shared",
+ "-DANDROID_SUPPORT_FLEXIBLE_PAGE_SIZES=ON", // don't need patch this after upgrade to 0.7.17
+ "-DNODE_MODULES_DIR=${nodeModules}", "-DRABBY_QUICK_CRYPTO_BUILD_TYPE=${resolveBuildType()}"
abiFilters (*reactNativeArchitectures())
}
}
@@ -175,7 +177,7 @@ dependencies {
implementation "com.facebook.react:react-android:+"

// Add a dependency on OpenSSL
- implementation 'io.github.ronickg:openssl:3.3.2'
+ implementation 'io.github.ronickg:openssl:3.3.2-1' // don't need patch this after upgrade to 0.7.17
}

// Resolves "LOCAL_SRC_FILES points to a missing file, Check that libfb.so exists or that its path is correct".
diff --git a/lib/module/index.js b/lib/module/index.js
index f52cc589a4aef892833ecb2c43a547927c435a3d..8f5e1575519fcbbfed7e35ecc3bdfa1a2743c84b 100644
--- a/lib/module/index.js
Expand Down
19 changes: 16 additions & 3 deletions .yarn/patches/react-native-webview-npm-13.10.5-714eb41569.patch
Original file line number Diff line number Diff line change
Expand Up @@ -277,7 +277,7 @@ index 6664b6f6eacb37743d049556dc55f613c0244517..7d639e3c139cb506fc8ef23044e3e121
public void onHostResume() {
// do nothing
diff --git a/android/src/main/java/com/reactnativecommunity/webview/RNCWebViewClient.java b/android/src/main/java/com/reactnativecommunity/webview/RNCWebViewClient.java
index d59e19ce82a5a03a60c558b35171af713719af4a..95d4b70232583266d81abf9262a3c8fbc3c01c46 100644
index d59e19ce82a5a03a60c558b35171af713719af4a..1179dc4d407a6faac186ee60cc7b7c55bb61f261 100644
--- a/android/src/main/java/com/reactnativecommunity/webview/RNCWebViewClient.java
+++ b/android/src/main/java/com/reactnativecommunity/webview/RNCWebViewClient.java
@@ -1,7 +1,9 @@
Expand Down Expand Up @@ -426,10 +426,23 @@ index d59e19ce82a5a03a60c558b35171af713719af4a..95d4b70232583266d81abf9262a3c8fb
event.putBoolean("canGoBack", webView.canGoBack());
event.putBoolean("canGoForward", webView.canGoForward());
diff --git a/android/src/main/java/com/reactnativecommunity/webview/RNCWebViewManagerImpl.kt b/android/src/main/java/com/reactnativecommunity/webview/RNCWebViewManagerImpl.kt
index 4600a8dc5c448a2236d25e40172453f93ae92c45..4550481079f5b59e9a11029082958bf6cbac43fd 100644
index 4600a8dc5c448a2236d25e40172453f93ae92c45..52672555350070ea2ca434d20c4117457fa1e692 100644
--- a/android/src/main/java/com/reactnativecommunity/webview/RNCWebViewManagerImpl.kt
+++ b/android/src/main/java/com/reactnativecommunity/webview/RNCWebViewManagerImpl.kt
@@ -705,4 +705,10 @@ class RNCWebViewManagerImpl {
@@ -337,7 +337,11 @@ class RNCWebViewManagerImpl {
throw RuntimeException("Arguments for loading an url are null!")
}
webView.progressChangedFilter.setWaitingForCommandLoadUrl(false)
- webView.loadUrl(args.getString(0))
+ val target = args.getString(0) ?: ""
+ if (ReactBuildConfig.DEBUG && target.isEmpty()) {
+ throw RuntimeException("You must specify an URL to load")
+ }
+ webView.loadUrl(target)
}
"requestFocus" -> webView.requestFocus()
"clearFormData" -> webView.clearFormData()
@@ -705,4 +709,10 @@ class RNCWebViewManagerImpl {
fun setWebviewDebuggingEnabled(viewWrapper: RNCWebViewWrapper, enabled: Boolean) {
RNCWebView.setWebContentsDebuggingEnabled(enabled)
}
Expand Down
8 changes: 7 additions & 1 deletion apps/mobile/android/app/build.gradle
Original file line number Diff line number Diff line change
Expand Up @@ -97,6 +97,11 @@ android {
versionCode 100151
versionName "0.6.44"
missingDimensionStrategy "store", "play"
externalNativeBuild {
cmake {
arguments "-DANDROID_SUPPORT_FLEXIBLE_PAGE_SIZES=ON"
}
}
}
splits {
abi {
Expand Down Expand Up @@ -181,6 +186,7 @@ android {
}
// packagingOptions {
// jniLibs {
// useLegacyPackaging true
// pickFirsts += [
// 'lib/**/libssl.so',
// 'lib/**/libcrypto.so'
Expand Down Expand Up @@ -214,6 +220,6 @@ dependencies {
implementation project(':react-native-splash-screen')
// implementation project(':isudaji_react-native-install-apk')

implementation 'pl.droidsonroids.gif:android-gif-drawable:1.2.10'
implementation 'pl.droidsonroids.gif:android-gif-drawable:1.2.29'
implementation 'com.android.billingclient:billing:7.0.0'
}
1 change: 1 addition & 0 deletions apps/mobile/android/app/src/main/AndroidManifest.xml
Original file line number Diff line number Diff line change
Expand Up @@ -9,6 +9,7 @@
android:icon="@mipmap/ic_launcher"
android:roundIcon="@mipmap/ic_launcher_round"
android:allowBackup="false"
android:pageSizeCompat="enabled"
android:theme="@style/AppTheme">
<!--
android:windowSoftInputMode="adjustPan":https://github.com/APSL/react-native-keyboard-aware-scroll-view?tab=readme-ov-file#android-support -->
Expand Down
7 changes: 4 additions & 3 deletions apps/mobile/android/build.gradle
Original file line number Diff line number Diff line change
Expand Up @@ -4,11 +4,12 @@ buildscript {
ext {
buildToolsVersion = "35.0.0"
minSdkVersion = 26
compileSdkVersion = 35
targetSdkVersion = 35
compileSdkVersion = 36
targetSdkVersion = 36

// We use NDK 23 which has both M1 support and is the side-by-side NDK version from AGP.
ndkVersion = "26.1.10909125"
// ndkVersion = "28.2.13676358" // 28 will enable 16kb support by default, but now we use 27 temporarily
ndkVersion = "27.3.13750724"
// Only using Android Support libraries
supportLibVersion = "34.0.0"
googlePlayServicesAuthVersion = "20.7.0"
Expand Down
Loading