# iOS Test Apps Setup Complete **Author**: Matthew Raymer **Date**: 2025-11-04 **Status**: ✅ **COMMAND-LINE SETUP COMPLETE** ## Summary All command-line setup for iOS test apps has been completed. Both test app scenarios are now ready for CocoaPods installation and Xcode building. ## Completed Setup ### 1. Vue 3 Test App (`test-apps/daily-notification-test`) **iOS Platform Added:** - ✅ Created `ios/` directory with Xcode project structure - ✅ Generated `ios/App/` with Capacitor integration - ✅ Created `Podfile` with Capacitor dependencies **Plugin Integration:** - ✅ Added `DailyNotificationPlugin` to Podfile - ✅ Plugin path: `../../../ios` - ✅ Ready for `pod install` **Files Created:** - `test-apps/daily-notification-test/ios/App/Podfile` - Includes plugin dependency - `test-apps/daily-notification-test/ios/App/App/` - Xcode project structure - `test-apps/daily-notification-test/ios/.gitignore` - Git ignore rules ### 2. Standalone iOS Test App (`test-apps/ios-test-app`) **Structure Created:** - ✅ Copied base structure from `ios/App` - ✅ Created `App/App/public/` directory - ✅ Created `App/capacitor.config.json` with plugin configuration - ✅ Created `App/Podfile` with plugin dependency **Test Interface:** - ✅ Copied test HTML from Android test app (575 lines) - ✅ Located at `App/App/public/index.html` - ✅ Includes all plugin test functions **Plugin Integration:** - ✅ Added `DailyNotificationPlugin` to Podfile - ✅ Plugin path: `../../../ios` - ✅ Ready for `pod install` **Files Created:** - `test-apps/ios-test-app/App/capacitor.config.json` - Plugin configuration - `test-apps/ios-test-app/App/Podfile` - CocoaPods dependencies - `test-apps/ios-test-app/App/App/public/index.html` - Test interface ## Configuration Details ### Vue 3 Test App Podfile ```ruby pod 'DailyNotificationPlugin', :path => '../../../ios' ``` **Location:** `test-apps/daily-notification-test/ios/App/Podfile` ### Standalone Test App Podfile ```ruby pod 'DailyNotificationPlugin', :path => '../../../ios' ``` **Location:** `test-apps/ios-test-app/App/Podfile` ### Standalone Test App Capacitor Config ```json { "appId": "com.timesafari.dailynotification", "appName": "DailyNotification Test App", "webDir": "public", "plugins": { "DailyNotification": { "debugMode": true, "enableNotifications": true } } } ``` **Location:** `test-apps/ios-test-app/App/capacitor.config.json` ## Next Steps (Manual) ### For Vue 3 Test App 1. **Install CocoaPods dependencies:** ```bash cd test-apps/daily-notification-test/ios/App pod install ``` 2. **Build web assets:** ```bash cd test-apps/daily-notification-test npm install # If not already done npm run build ``` 3. **Sync with iOS:** ```bash npx cap sync ios ``` 4. **Build and run:** ```bash npx cap run ios # Or use build script: ./scripts/build-and-deploy-ios.sh ``` ### For Standalone iOS Test App 1. **Install CocoaPods dependencies:** ```bash cd test-apps/ios-test-app/App pod install ``` 2. **Open in Xcode:** ```bash open App.xcworkspace ``` 3. **Build and run:** - Select target device/simulator - Build and run (⌘R) 4. **Or use build script:** ```bash cd test-apps/ios-test-app ./scripts/build-and-deploy.sh ``` ## Verification Checklist ### Vue 3 Test App - [x] iOS platform added via `npx cap add ios` - [x] Podfile created with plugin dependency - [x] Plugin path correctly configured - [ ] CocoaPods dependencies installed (`pod install`) - [ ] Web assets built (`npm run build`) - [ ] Capacitor sync completed (`npx cap sync ios`) - [ ] App builds successfully in Xcode ### Standalone iOS Test App - [x] Structure created from `ios/App` - [x] Capacitor config created - [x] Podfile created with plugin dependency - [x] Test HTML interface copied - [ ] CocoaPods dependencies installed (`pod install`) - [ ] Xcode workspace created - [ ] App builds successfully in Xcode ## Troubleshooting ### CocoaPods Not Found ```bash gem install cocoapods ``` ### Plugin Not Found During pod install 1. Verify plugin is built: ```bash ./scripts/build-native.sh --platform ios ``` 2. Check plugin path in Podfile is correct 3. Verify `ios/DailyNotificationPlugin.podspec` exists ### Build Errors 1. Clean build folder in Xcode (⌘⇧K) 2. Delete derived data: `rm -rf ~/Library/Developer/Xcode/DerivedData` 3. Reinstall pods: `pod deintegrate && pod install` ## Files Modified/Created ### New Files - `test-apps/daily-notification-test/ios/` - Entire iOS directory (generated by Capacitor) - `test-apps/ios-test-app/App/capacitor.config.json` - Capacitor configuration - `test-apps/ios-test-app/App/Podfile` - CocoaPods dependencies - `test-apps/ios-test-app/App/App/public/index.html` - Test interface ### Modified Files - `test-apps/daily-notification-test/ios/App/Podfile` - Added plugin dependency ## Status ✅ **All command-line setup complete** 🟡 **Ready for CocoaPods installation** 🟡 **Ready for Xcode building** Both iOS test apps are now fully configured and ready for the next steps (CocoaPods installation and Xcode building).