1.8 KiB
1.8 KiB
Expo HAS CHANGED
Read the exact versioned docs at https://docs.expo.dev/versions/v56.0.0/ before writing any code.
Versioning & Build Rules
Whenever a new build is triggered, the version MUST be updated in BOTH app.json and package.json.
versionformat:23.01.XversionCode:X(just the last number) Examples:- version
23.01.1-> versionCode1 - version
23.01.3-> versionCode3 - version
23.01.123-> versionCode123
Apps must always be built as BOTH .apk and .aab.
The exact naming syntax for compiled files is:
Schnappix_v23.01.X.apk
Schnappix_v23.01.X.aab
IMPORTANT: All compiled files must be placed in the apks/ directory (e.g. apks/Schnappix_v23.01.X.apk). Do NOT place them in the root directory.
Architectural Decisions & Project Rules
- Kiosk Mode (Device Owner)
- The app uses Custom Native Modules (Kotlin) for LockTask mode. It does NOT use external MDM software.
- For LockTask to work, the app MUST be set as Device Owner via ADB (
adb shell dpm set-device-owner de.orfel.schnappix/de.orfel.schnappix.KioskDeviceAdminReceiver).
- Photo Saving (Permissions)
- Uses modern Android MediaStore API (
writeOnly = truevia expo-media-library) to save photos directly toSchnappix - <EventName> - CollagenandSchnappix - <EventName> - Originale. - Do NOT attempt to force legacy
WRITE_EXTERNAL_STORAGEorREAD_EXTERNAL_STORAGEon Android 13+, as it will fail.
- Uses modern Android MediaStore API (
- Package Name
- Must strictly remain
de.orfel.schnappix.
- Must strictly remain
Git & Workflow Rules
- Always Commit and Push: At the end of every interaction or when tasks are completed, ALL changes must be automatically committed and pushed to Git (
git add .,git commit,git push). - Push Retry Bug: If
git pushfails with an authentication error, ALWAYS try running it a second time, as it usually succeeds on the retry.