* feat(ios): wire-up push notifications
- wire push notifications endpoints with qml access
- split NotificationsView.qml into 2 different components. The general component preserving the current behavior and a reduced functionality for centralized push notifications (similar to the Status legacy)
- wire bundle id from EnvVariables.mk to the push notifications status-go calls. We need the bundle id as topic.
- Tweak the Push permissions request flow to account for platform specifics
* fix: mobile-run doesn't work for all targets
fixes :
```
0m=[94mqrc:/app/AppLayouts/Profile/views/EnsView.qml:4
[0m [33mtext[0m=[94m"module \"QtQml.StateMachine\" is not installed"[0m
```
and
```
E FATAL EXCEPTION: qtMainLoopThread
Process: app.status.mobile.debug, PID: 18150
java.lang.UnsatisfiedLinkError: dlopen failed: library "libStatus
Debug_arm64-v8a.so" not found
at java.lang.Runtime.loadLibrary0(Runtime.java:1097)
at java.lang.Runtime.loadLibrary0(Runtime.java:1019)
at java.lang.System.loadLibrary(System.java:1765)
at
org.qtproject.qt.android.QtLoader.loadLibraryHelper(QtLoader.java:486)
at
org.qtproject.qt.android.QtLoader.lambda$loadMainLibrary$0$org-qtproject-qt-android-QtLoader(QtLoader.java:535)
at
org.qtproject.qt.android.QtLoader$$ExternalSyntheticLambda1.run(D8$$SyntheticClass:0)
at org.qtproject.qt.android.QtThread.lambda$run$0(QtThread.java:57)
at
org.qtproject.qt.android.QtThread$$ExternalSyntheticLambda0.run(D8$$SyntheticClass:0)
at org.qtproject.qt.android.QtThread$1.run(QtThread.java:25)
at java.lang.Thread.run(Thread.java:1563)
```
- re applies this commit :
https://github.com/status-im/status-app/commit/9381d0d06c2bee8e902be3bcf49e9680fe055b0d
- I also adjust the qml lint job to catch this kind of import failure in
CI :
```
[2026-02-03T07:06:17.215Z] Running: QML Lint (Mobile)
[2026-02-03T07:06:17.215Z] qmllint: /opt/qt/6.9.2/gcc_64/bin/qmllint
[2026-02-03T07:06:17.215Z] Qt modules:
/opt/qt/6.9.2/android_arm64_v8a/qml
[2026-02-03T07:06:17.215Z]
[2026-02-03T07:06:17.215Z] Checking 1200 files...
[2026-02-03T07:06:33.882Z]
[2026-02-03T07:06:33.882Z] ERRORS:
[2026-02-03T07:06:33.882Z]
/home/jenkins/workspace/status-app-android/13/ui/app/AppLayouts/Profile/views/EnsView.qml:4:1:
Failed to import QtQml.StateMachine. Are your import paths set up
properly?
```
- update status-jenkins-lib to v1.9.30 which provides iOS provisioning
profile and appstore certs.
- builds signed iOS app and pushes to testflight.
- updates testflight metadata with PR link and commit sha it was built
from
- adds `scripts/testflight-changelog.mjs` script used by CI to update PR
metadata.
- set `ITSAppUsesNonExemptEncryption` to `false`
- generate signed APK for PRs
- generate signed AAB for PRs targeting release branches
- updates status-jenkins-lib to v1.9.29 which provides keystore and
credentials for signing
- rename bundle id app.status.mobile
- nuke FOREGROUND_SERVICE permission
- automatically generate versionCode based on minutes since epoch
- nuke unused mobile/android/qt5 dir
- fix path to SecureAndroidAuthentication.java
- bump nim to 2.2.4
+ remove the safe area workarounds for qt 6.9.1
This commit adds the splash screen resources for Android and IOS.
On Android it will also create a StatusBarUtil.java. This is a helper to notify the OS when the app theme changes so that the top bar icons to change as well.
StatusQtActivity class inherits the QtActivity and implements the splash screen condition on Android. This is necessary to avoid screen flickering and empty screens while the app loads.
- Adding a config option for the GH action to compile with different qt versions
- Updating build scripts to use standard android env variables
- Fixing mobile targets
1. Adding AndroidManifest.xml with app icons and splash screen
2. Renaming IOS-build to Status-tablet
3. Update androiddeployqt to run on android-31
4. Adding app icons to IOS
5. Fixing makefile clean, makefile nim_status_client dependencies, makefile DOtherSide lib name
6. Update README.md with latest changes