fix(mobile): support QR scanning without Play Services
This commit is contained in:
@@ -81,9 +81,10 @@ iOS Simulator helpers: `mobile:sim:{boot,install,launch,run,serve,list,kill}` (s
|
||||
- **Connection onboarding** — server URL entry, password unlock for locked servers, client-token
|
||||
issuance, saved connections, `Instances` management sheet, auto-connect to the last instance on
|
||||
launch. Deleting the active instance resets the runtime to the connect screen.
|
||||
- **QR pairing** — `@capacitor-mlkit/barcode-scanning`. Android's Google code scanner module is
|
||||
downloaded on first scan (needs Play Services + network); `mobileQrScan.ts` installs/awaits it
|
||||
and retries. CAMERA permission + `NSCameraUsageDescription` declared.
|
||||
- **QR pairing** — `@capacitor-mlkit/barcode-scanning`. Android uses the CameraX-backed
|
||||
`startScan()` flow with the barcode model bundled in the app, so scanning works offline and
|
||||
without Google Play Services. iOS uses the plugin's native scanner. CAMERA permission +
|
||||
`NSCameraUsageDescription` declared.
|
||||
- **Secure storage** — `@aparajita/capacitor-secure-storage` for connection tokens.
|
||||
- **Deep links** — `openchamber://` URL scheme; a reusable intent vocabulary (`apps/deepLinks.ts`)
|
||||
used by notification taps, widgets, and Control Center. Cold-launch intents are stashed.
|
||||
@@ -128,8 +129,7 @@ iOS Simulator helpers: `mobile:sim:{boot,install,launch,run,serve,list,kill}` (s
|
||||
brings `firebase-messaging`.
|
||||
- Manifest: permissions `INTERNET`, `CAMERA` (+ optional camera feature), `POST_NOTIFICATIONS`
|
||||
(Android 13+; older versions allow notifications by default). `windowSoftInputMode=adjustResize`.
|
||||
ML Kit `com.google.mlkit.vision.DEPENDENCIES=barcode_ui` meta (preloads the code scanner). FCM
|
||||
`default_notification_icon=@drawable/ic_stat_notify`.
|
||||
FCM `default_notification_icon=@drawable/ic_stat_notify`.
|
||||
- Adaptive launcher icon: full-bleed color background + `ic_launcher_foreground` (sources under
|
||||
`packages/mobile/assets/`, regenerable with `@capacitor/assets`).
|
||||
|
||||
|
||||
@@ -35,13 +35,6 @@
|
||||
<meta-data android:name="android.support.FILE_PROVIDER_PATHS" android:resource="@xml/file_paths" />
|
||||
</provider>
|
||||
|
||||
<!-- Tell Play Services to download the ML Kit barcode "code scanner" module (used by
|
||||
@capacitor-mlkit/barcode-scanning's scan()) at install time, so the QR pairing scan
|
||||
works without a per-scan module download. -->
|
||||
<meta-data
|
||||
android:name="com.google.mlkit.vision.DEPENDENCIES"
|
||||
android:value="barcode_ui" />
|
||||
|
||||
<!-- Small icon shown in the status bar / notification shade for FCM notifications the
|
||||
system displays while the app is backgrounded. Must be a monochrome silhouette. -->
|
||||
<meta-data
|
||||
|
||||
Reference in New Issue
Block a user