# Build Android dan iPhone dengan Expo

## Konfigurasi URL API

Untuk development, salin `mobile/.env.example` menjadi `mobile/.env`, lalu isi alamat HTTPS API (contoh `https://api.domain-anda.com/api`). Jangan memakai `localhost` pada build yang dipasang di ponsel. Untuk EAS, buat environment variable `EXPO_PUBLIC_API_URL` pada project Expo.

## APK untuk pemasangan langsung

1. Install Node.js LTS dan jalankan `npm ci` dari folder `mobile/`.
2. Buat/masuk akun Expo: `npx eas-cli login`.
3. Atur project EAS: `npx eas-cli build:configure`.
4. Jalankan `npx eas-cli build --platform android --profile preview`.
5. Unduh APK dari halaman build Expo dan pasang di Android. Pengguna mungkin perlu mengizinkan pemasangan dari sumber tersebut.

Profile `preview` menghasilkan APK untuk pemasangan langsung. Untuk Google Play jalankan `npx eas-cli build --platform android --profile production`; profil ini menghasilkan Android App Bundle (.aab).

## iPhone dan App Store

1. Tentukan Bundle Identifier unik yang dikuasai penerbit di `mobile/app.json` (saat ini contoh `id.ecolaundry.app`).
2. Siapkan akun Apple Developer dan record aplikasi di App Store Connect.
3. Jalankan `npx eas-cli build --platform ios --profile production` dan ikuti instruksi signing/provisioning.
4. Unggah ke App Store Connect, lakukan uji TestFlight, lalu ajukan ke App Review. Pengguna iPhone memasang dari TestFlight/App Store, bukan dengan APK.

EAS Build menyiapkan binary untuk Android/iOS melalui layanan cloud; build iOS lokal memerlukan macOS dan Xcode. Lihat [Expo EAS Build](https://docs.expo.dev/build/setup/) dan [konfigurasi APK](https://docs.expo.dev/build-reference/apk/).

## Catatan

APK/AAB/IPA belum dibuat karena URL API produksi, project Expo/EAS, serta kredensial signing store belum disiapkan. Jangan bagikan akun EAS, Apple, Google Play, keystore, atau secret server.
