You can not select more than 25 topics
Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.
2.4 KiB
2.4 KiB
Build Process Quick Reference
Author: Matthew Raymer
Date: October 17, 2025
🚨 Critical Build Steps
# 1. Build web assets
npm run build
# 2. Sync with native projects
npx cap sync android
# 3. 🔧 FIX PLUGIN REGISTRY (REQUIRED!)
node scripts/fix-capacitor-plugins.js
# 4. Build and deploy Android
cd android
./gradlew :app:assembleDebug
adb install -r app/build/outputs/apk/debug/app-debug.apk
adb shell am start -n com.timesafari.dailynotification.test/.MainActivity
⚠️ Why Step 3 is Critical
Problem: npx cap sync
overwrites capacitor.plugins.json
and removes custom plugins.
Solution: The fix script restores the DailyNotification plugin entry.
Without Step 3: Plugin detection fails, "simplified dialog" appears.
🔍 Verification Checklist
After build, verify:
capacitor.plugins.json
contains DailyNotification entry- System Status shows "Plugin: Available" (green)
- Plugin Diagnostics shows all 4 plugins
- Click events work on ActionCard components
- No "simplified dialog" appears
🛠️ Automated Build Script
Create scripts/build-and-deploy.sh
:
#!/bin/bash
set -e
echo "🔨 Building web assets..."
npm run build
echo "🔄 Syncing with native projects..."
npx cap sync android
echo "🔧 Fixing plugin registry..."
node scripts/fix-capacitor-plugins.js
echo "🏗️ Building Android app..."
cd android
./gradlew :app:assembleDebug
echo "📱 Installing and launching..."
adb install -r app/build/outputs/apk/debug/app-debug.apk
adb shell am start -n com.timesafari.dailynotification.test/.MainActivity
echo "✅ Build and deploy complete!"
🐛 Common Issues
Issue | Symptom | Solution |
---|---|---|
Empty plugin registry | capacitor.plugins.json is [] |
Run node scripts/fix-capacitor-plugins.js |
Plugin not detected | "Plugin: Not Available" (red) | Check plugin registry, rebuild |
Click events not working | Buttons don't respond | Check Vue 3 compatibility, router config |
Inconsistent status | Different status in different cards | Use consistent detection logic |
📱 Testing Commands
# Check plugin registry
cat android/app/src/main/assets/capacitor.plugins.json
# Monitor native logs
adb logcat | grep -i "dailynotification\|capacitor\|plugin"
# Check app installation
adb shell pm list packages | grep dailynotification
Remember: Always run the fix script after npx cap sync
!