I’m a bit lost here and need some guidance.
I need to meet the new Privacy Manifest requirements as I fail for 11 of the SDKs, so I am updating my project which has been a nightmare as I have limited time.
I have already updated firebase and Angular fire and then had to update Angular to v16 plus updated several other packages. I updated Capacitor from 5 to 5.7.8.
I can’t update to Capacitor 6 as I need @pantrist/capacitor-firebase-dynamic-links": “^5.0.1”
I’m using the Ionic Vscode extension and it has not recommended that I add a Privacy Manifest yet.
How can I tell what packages I need to update based on the SDK’s mentioned in the rejection email from the app store?
I would update everything to the latest version but I am trying to minimize breaking changes.
Another option is to create a new project from scratch with the latest versions of everything and copy my ionic/angular code over but I think this would be a lot more work.
Packages:
"dependencies": {
"@angular/animations": "^16.2.12",
"@angular/cdk": "^16.2.14",
"@angular/common": "^16.2.12",
"@angular/core": "^16.2.12",
"@angular/fire": "^16.0.0",
"@angular/forms": "^16.2.12",
"@angular/material": "^16.2.14",
"@angular/platform-browser": "^16.2.12",
"@angular/platform-browser-dynamic": "^16.2.12",
"@angular/router": "^16.2.12",
"@capacitor-community/fcm": "^5.0.2",
"@capacitor-community/firebase-analytics": "^5.0.1",
"@capacitor-community/stripe": "^5.2.0",
"@capacitor/android": "^5.7.8",
"@capacitor/app": "^5.0.8",
"@capacitor/core": "^5.7.8",
"@capacitor/device": "^5.0.8",
"@capacitor/ios": "^5.7.8",
"@capacitor/keyboard": "^5.0.6",
"@capacitor/network": "^5.0.6",
"@capacitor/push-notifications": "^5.1.0",
"@capacitor/screen-orientation": "^5.0.7",
"@capacitor/splash-screen": "^5.0.6",
"@capacitor/status-bar": "^5.0.6",
"@fortawesome/angular-fontawesome": "^0.13.0",
"@fortawesome/fontawesome-svg-core": "^6.7.2",
"@fortawesome/free-brands-svg-icons": "^6.7.2",
"@fortawesome/free-regular-svg-icons": "^6.7.2",
"@fortawesome/free-solid-svg-icons": "^6.7.2",
"@ionic-native/app-availability": "^5.31.1",
"@ionic-native/clipboard": "^5.31.1",
"@ionic-native/core": "^5.31.1",
"@ionic-native/file": "^5.36.0",
"@ionic-native/ionic-webview": "^5.36.0",
"@ionic-native/launch-navigator": "^5.31.1",
"@ionic-native/mobile-accessibility": "^5.31.1",
"@ionic-native/screen-orientation": "^5.31.1",
"@ionic-native/splash-screen": "^5.31.1",
"@ionic-native/status-bar": "^5.31.1",
"@ionic/angular": "^6.4.2",
"@ionic/storage-angular": "^4.0.0",
"@pantrist/capacitor-firebase-dynamic-links": "^5.0.1",
"@sentry/angular-ivy": "^7.102.1",
"@types/googlemaps": "^3.43.3",
"@types/hammerjs": "^2.0.39",
"@types/stripe-v3": "^3.1.23",
"@usermaven/sdk-js": "^1.3.3",
"angular-animations": "^0.11.0",
"canvas-confetti": "^1.9.2",
"capacitor-ios-autofill-save-password": "^2.0.0",
"compare-versions": "^3.6.0",
"cordova-clipboard": "^1.3.0",
"cordova-plugin-actionsheet": "^2.3.3",
"cordova-plugin-appavailability": "^0.4.2",
"cordova-plugin-device": "git+https://github.com/apache/cordova-plugin-device.git",
"cordova-plugin-dialogs": "^2.0.2",
"cordova-plugin-file": "^6.0.2",
"cordova-plugin-network-information": "git+https://github.com/apache/cordova-plugin-network-information.git",
"cordova-plugin-screen-orientation": "^3.0.2",
"es6-promise-plugin": "^4.2.2",
"firebase": "^11.3.1",
"hammerjs": "^2.0.8",
"i": "^0.3.7",
"i18n-iso-countries": "^4.3.1",
"moment": "^2.29.1",
"moment-timezone": "^0.5.40",
"ng-lazyload-image": "^9.1.3",
"ngx-build-plus": "^16.0.0",
"ngx-pipes": "^3.2.2",
"ngx-spinner": "^16.0.2",
"npm": "^10.4.0",
"phonegap-plugin-mobile-accessibility": "^1.0.5",
"rxjs": "^6.5.3",
"sweetalert2": "^8.19.0",
"swiper": "^11.2.4",
"tslib": "^2.4.1",
"uk.co.workingedge.phonegap.plugin.launchnavigator": "^5.0.5",
"uninstall": "^0.0.0",
"voucher-code-generator": "^1.1.1",
"zone.js": "~0.13.3"
},
"devDependencies": {
"@angular-devkit/build-angular": "^16.2.16",
"@angular/cli": "^16.2.16",
"@angular/compiler": "^16.2.12",
"@angular/compiler-cli": "^16.2.12",
"@angular/language-service": "^16.2.12",
"@bahmutov/cy-grep": "^1.8.0",
"@capacitor/cli": "^5.7.8",
"@cypress/xpath": "^2.0.3",
"@firebase/testing": "^0.20.11",
"@ionic/angular-toolkit": "^2.3.0",
"@ionic/lab": "3.2.10",
"@types/cypress": "^1.1.3",
"@types/moment-timezone": "^0.5.30",
"@types/node": "^12.19.15",
"autoprefixer": "^10.2.5",
"codelyzer": "^6.0.0",
"cypress": "^13.5.0",
"flex-gap-polyfill": "^2.2.1",
"patch-package": "^8.0.0",
"postcss": "^8.2.10",
"postcss-import": "^12.0.1",
"postcss-loader": "^4.2.0",
"postcss-scss": "^3.0.5",
"protractor": "~7.0.0",
"replace-in-file": "^5.0.2",
"ts-node": "~8.3.0",
"tslint": "~6.1.0",
"typescript": "^4.9.3"
},
SDK’s mention in email from app store:
Frameworks/Capacitor.framework/Capacitor
Frameworks/Cordova.framework/Cordova
Frameworks/FBLPromises.framework/FBLPromises
Frameworks/FirebaseCore.framework/FirebaseCore
Frameworks/FirebaseCoreDiagnostics.framework/FirebaseCoreDiagnostics
Frameworks/FirebaseDynamicLinks.framework/FirebaseDynamicLinks
Frameworks/FirebaseInstallations.framework/FirebaseInstallations
Frameworks/FirebaseMessaging.framework/FirebaseMessaging
Frameworks/GoogleDataTransport.framework/GoogleDataTransport
Frameworks/GoogleUtilities.framework/GoogleUtilities
Frameworks/nanopb.framework/nanopb
Email from app store repeated this 11 times for the SDK’s:
ITMS-91061: Missing privacy manifest - Your app includes “Frameworks/Capacitor.framework/Capacitor”, which includes Capacitor, an SDK that was identified in the documentation as a commonly used third-party SDK. If a new app includes a commonly used third-party SDK, or an app update adds a new commonly used third-party SDK, the SDK must include a privacy manifest file. Please contact the provider of the SDK that includes this file to get an updated SDK version with a privacy manifest. For more details about this policy, including a list of SDKs that are required to include signatures and manifests, visit: Third-party SDK requirements - Support - Apple Developer.