From 350e736d0ba0a77f672e7843088ffdcf848a745e Mon Sep 17 00:00:00 2001 From: furyhawk Date: Fri, 5 Jun 2026 21:24:34 +0800 Subject: [PATCH] feat: update AndroidManifest and capacitor.config for cleartext traffic and HTTP scheme --- android/app/src/main/AndroidManifest.xml | 1 + capacitor.config.json | 7 +++++- package.json | 4 +++- scripts/cap-config.mjs | 30 ++++++++++++++++++++++++ src/routes/+page.svelte | 22 +++++++++++++++-- 5 files changed, 60 insertions(+), 4 deletions(-) create mode 100644 scripts/cap-config.mjs diff --git a/android/app/src/main/AndroidManifest.xml b/android/app/src/main/AndroidManifest.xml index bc19ac8..d30dbcf 100644 --- a/android/app/src/main/AndroidManifest.xml +++ b/android/app/src/main/AndroidManifest.xml @@ -7,6 +7,7 @@ android:label="@string/app_name" android:roundIcon="@mipmap/ic_launcher_round" android:supportsRtl="true" + android:usesCleartextTraffic="true" android:theme="@style/AppTheme"> http (emulator, no mixed-content issues) + * node scripts/cap-config.mjs prod -> https (production, secure) + */ +import { writeFileSync } from "fs"; + +const mode = process.argv[2]; +if (mode !== "dev" && mode !== "prod") { + console.error("Usage: node scripts/cap-config.mjs "); + process.exit(1); +} + +const config = { + appId: "com.bussg.app", + appName: "Bus SG App", + webDir: "build", + bundledWebRuntime: false, + server: { + androidScheme: mode === "dev" ? "http" : "https" + }, + plugins: { + CapacitorHttp: { + enabled: true + } + } +}; + +writeFileSync("capacitor.config.json", JSON.stringify(config, null, 2) + "\n"); +console.log(`capacitor.config.json written for ${mode} (androidScheme: ${config.server.androidScheme})`); diff --git a/src/routes/+page.svelte b/src/routes/+page.svelte index 6354016..2031d46 100644 --- a/src/routes/+page.svelte +++ b/src/routes/+page.svelte @@ -1,6 +1,24 @@