Stappenplan Nieuwe App
Voer de volgende stappen uit om een nieuwe app te bouwen.
1. Maak een assistent aan
- Maak een nieuwe Assistent aan in het OpenAI Dashboard.
- Configureer de assistent.
- Kopieer de assistent ID.
2. Maak app aan in wijsneus-api project
- Voeg een nieuwe app toe aan de
appstabel en configureer deze. - Indien
has_auto_loginingeschakeld is moet er ook een user aangemaakt worden met eensharedvalue in derolekolom.
3. Maak de app aan wijsneus-app project
- Open het project
j-jalving/wijsneus-app - Voer het command
npm run create:appuit en volg de stappen. - Test de app en commit je wijzigingen naar Git.
TIP
Gebruik voor de naam bij voorkeur een reverse domain-name stijl notatie zoals app.wijsneus.bedrijfsnaam.
4. App thema configureren
- Open het bestand
/apps/%app_name%/assets/scss/style.scssom het app thema te configureren. - Update de afbeeldingen in
/apps/%app_name%/assets/en/apps/%app_name%/assets/images/. - Test de app en commit je wijzigingen naar Git.
5. Deploy de Web App
- Log in op Ploi.io en open het project
web.wijsneus.app. - Kopieer het project via
Manage -> Clone site. Vul het juiste domein in voor de site, selecteer de juiste server en klik opStart cloning process - Open het nieuw aangemaakte project en pas de projectnaam bij de stap
npm run build app.wijsneus.default pwa. - Ga naar
Settingsen pas de projectnaam aan bijSite domain -> Web directory. - Ga naar
Manage->NGINX configurationen pas hetlocation /blok aan:
location / {
# try_files $uri $uri/ /index.php?$query_string;
try_files $uri $uri/ /index.html =404;
}- Maak een SSL certificaat aan via
SSL -> Add certificate. - Deploy de website.
6. Universal / App links implementeren
iOS
Voer deze stappen uit om Universal Links te configureren voor iOS: https://capacitorjs.com/docs/guides/deep-links#ios-configuration
TIP
De .well-known folder vind je in de map /apps/%app_name%/public.
TIP
Omdat de Association File wordt gecached op Apple's CDN server kan het zijn dat het even duurt voordat de Universal Links werken. Ga op je iOS apparaat naar Settings -> Developer -> Universal Links om development mode aan te zetten. Hiermee wordt de Association File direct van de bron opgehaald. Daarnaast vind je hier ook een Diagnostic tool om de URL te testen.
Android
Voer deze stappen uit om App Links te configureren voor Android: https://capacitorjs.com/docs/guides/deep-links#android-configuration
BELANGRIJK!
Gebruik voor het genereren van het certificaat de bestaande key store. Maak een Android build en kies in Android Studio Build > Generate Signed Bundle/APK. Selecteer /wijsneus.keystore als key store en maak een nieuwe alias aan met dezelfde app naam. Gebruik het volgende commando om de SHA256 fingerprint uit te lezen (vul de juiste alias in):
keytool -list -v -keystore wijsneus.keystore -alias %alias%5. Distributie iOS app
App Store Connect
Bundle ID aanmaken
- Open App Store Connect
- Navigeer naar naar Identifiers
- Klik bovenin op het blauwe plusje.
- Selecteer
App ID'sen druk opContinue. - Kies onder
Select a TypevoorAppen klik opContinue. - Vul bij de
DescriptionenBundle IDde reverse-domain style identifier in van de app (b.v.app.wijsneus.luidruchtig). - Klik op
Continueen dan opRegister.
App aanmaken
- Navigeer naar Apps en klik bovenin op het blauwe plusje en kies
New App. - Selecteer
iOS, vul de naam van de App in. - Kies
DutchbijPrimary Language. - Kies de
Bundle IDdie hierboven is aangemaakt. - Vul bij
SKUde reverse-domain style identifier (b.v.app.wijsneus.luidruchtig) in van de app. - Selecteer
Full AccessonderUser Access. - Klik op
Create.
Provisioning Profile aanmaken
- Navigeer naar Certificates, IDs & Profiles › Profiles
- Klik bovenin op het blauwe plusje.
- Kies onder
DistributionvoorApp Store Connecten druk opContinue. - Kies onder
App IDde app die hierboven is aangemaakt. Klik opContinue. - Selecteer de juiste certificaten.
- Vul onder
Provisioning Profile Namede reverse-domain style identifier (b.v.app.wijsneus.luidruchtig) in. - Klik op
Generate. - Klik op
Downloaden sla het bestand op in 1Password.
TestFlight instellen
- Open in App Store Connect de app die hierboven is aangemaakt. Navigeer naar
TestFlighten klik op het blauwe plusje naastInternal Testing. - Vul
Beta TestersalsGroup Namein. - Zorg dat
Enable automatic distributionaangevinkt is. - Voeg testers toe.
Appflow
App aanmaken
- Open het Appflow Dashboard en kies
New App->Import app - Vul de app naam in, kies als native runtime
Capacitoren klik op Continue naast het GitHub account. - Selecteer
j-jalving/wijsneus-app.
Appflow configureren
- Navigeer naar
Overview. Hier vind je de App ID. - Open het
appflow.config.jsonbestand in hetwijsneus-appproject en de nieuwe app toe. - Update de
appIdmet de App ID en pas derootaan. - Sla het bestand op en commit/push/merge deze.
Environment configureren
- Navigeer naar
Build->Environments. - Klik op
New environment. - Vul
Productionin als naam. - Vul onder
Secretsde juisteFIREBASE_API_KEYenSENTRY_AUTH_TOKENkeys in. - Vul onder
Variablesde juisteASSISTANT_IDenFRONTEND_URLkeys in.
Certificates toevoegen
- Navigeer naar
Build->Signing Certificates. - Klik op
Add certificate. - Kies als name
Jouri Jalving. - Upload bij
App development / Store certificatehet bestandapple_distribution_certificate.p12en het bijbehorende wachtwoord in (te vinden in 1Password). - Upload bij
Provisioning profileshet.mobileprovisionwat hierboven is aangemaakt. - Klik op 'Add certificate'.
Store Destinations toevoegen
- Navigeer naar
Deploy->Store Destinations. - Klik op
New store destination. - Vul onder
Namede reverse-domain style identifier (b.v.app.wijsneus.luidruchtig) in. - Kies als
TypevoorApple App Store. - Vul onder
Apple IDhet accountinfo@jourijalving.nlin. - Maak een App Specific wachtwoord aan in je Apple Account bij het kopje
App-Specific Passwordsen vul deze in onderApp-specific password. - Open in App Store Connect de app die hierboven is aangemaakt. Navigeer naar
App Information->General Information->Apple ID. Vul deze ID in onderApp Apple ID. - Open je Apple Developer account en zoek hier de
Team IDonder het kopjeMembership details. Vul deze in onderTeam ID. - Klik op
Save.
Build starten
- Navigeer naar
Build->Builds. - Klik op
New build. - Selecteer de juiste commit.
- Kies onder
Target platformvooriOS. - Kies onder
Build typevoorApp Store. - Kies onder
EnvironmentvoorProduction. - Zet onder
Destinationsde knop achterApp Storeaan en kies deStore Destinationsdie hierboven is aangemaakt. - Klik op
Build.
Encryption compliance
- Open het bestand
apps/%app_name%/ios/App/App/Info.plist. - Voeg onderaan de voor de afsluitende
</dict>tag de volgende regels toe:
<key>ITSAppUsesNonExemptEncryption</key>
<false />- Sla het bestand op en commit/push/merge deze.
6. Distributie Android app
@TODO
@TODO Sentry configuratie @TODO Firebase configuratie