Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

[Bug]: ITMS-91056: Invalid privacy manifest, ITMS-91064: Invalid tracking information #280

Open
QSuraj opened this issue Nov 22, 2024 · 5 comments
Labels

Comments

@QSuraj
Copy link

QSuraj commented Nov 22, 2024

Which Platforms?

iOS

Which React Native Version?

0.69.12

Which @braze/react-native-sdk SDK version?

8.4.0

Repro Rate

100% of the time

Steps To Reproduce

Example:

  1. import Braze from "@braze/react-native-sdk".
  2. Braze.changeUser("id")
  3. Run the app.
387571371-05c11dfa-a2f6-42a0-ba6b-f1ea98871c51
<?xml version="1.0" encoding="UTF-8"?>
<!DOCTYPE plist PUBLIC "-//Apple//DTD PLIST 1.0//EN" "http://www.apple.com/DTDs/PropertyList-1.0.dtd">
<plist version="1.0">
<dict>
	<key>NSPrivacyTracking</key>
	<true/>
	<key>NSPrivacyCollectedDataTypes</key>
	<array>
		<dict>
			<key>NSPrivacyCollectedDataType</key>
			<string>NSPrivacyCollectedDataTypeCoarseLocation</string>
			<key>NSPrivacyCollectedDataTypeLinked</key>
			<true/>
			<key>NSPrivacyCollectedDataTypeTracking</key>
			<false/>
			<key>NSPrivacyCollectedDataTypePurposes</key>
			<array>
				<string>NSPrivacyCollectedDataTypePurposeProductPersonalization</string>
				<string>NSPrivacyCollectedDataTypePurposeAnalytics</string>
			</array>
		</dict>
	</array>
	<key>NSPrivacyTrackingDomains</key>
	<array>
		<string>sdk-tracking.iad-05.braze.com</string>
	</array>
</dict>
</plist>

Expected Behavior

There should be no error while uploding to App Store.

Actual Incorrect Behavior

Gets following error after uploading to App store -
387570243-3fe824e2-d072-4dfc-a0ba-e58aad27f972

ITMS-91056: Invalid privacy manifest - The PrivacyInfo.xcprivacy file from the following path is invalid: “BrazeLocation.bundle/PrivacyInfo.xcprivacy”. Keys and values in your app’s privacy manifests must be valid. For more details about privacy manifest files, visit: https://developer.apple.com/documentation/bundleresources/privacy_manifest_files.

ITMS-91064: Invalid tracking information - A PrivacyInfo.xcprivacy file contains invalid tracking information at the following path: “BrazeKit.bundle/PrivacyInfo.xcprivacy”. NSPrivacyTracking must be true if NSPrivacyTrackingDomains isn’t empty. Keys and values in your app’s privacy manifests must be valid. For more details about privacy manifest files, visit: https://developer.apple.com/documentation/bundleresources/privacy_manifest_files.

Verbose Logs

No response

Additional Information

Reponening - #279

@QSuraj
Copy link
Author

QSuraj commented Nov 22, 2024

Was suggested to update to 10.0.0 - #279 (comment)

Getting following error when I try to update and do a pod install as we are working on React Native 0.69.12.
braze-react-native-sdk 9.0.0 and above needs react-native 71+.

Invalid `braze-react-native-sdk.podspec` file: undefined method `install_modules_dependencies' for module Pod.

@QSuraj
Copy link
Author

QSuraj commented Nov 22, 2024

@jerielng Can we release a patch for 8.4.0, may be 8.5.0? With fixes in 10.0.0

@jerielng
Copy link
Collaborator

Hey @QSuraj, our React Native SDK requires a minimum of 0.71+ as a way to keep in line with the official React Native matrix of support. If you are facing difficulties upgrading, could you reach out to [email protected]? Thanks!

@QSuraj
Copy link
Author

QSuraj commented Nov 22, 2024

Hi @jerielng,
Thank you for pointing this out.

While I’m not opposed to updating, the issue arises after upgrading, as braze-react-native-sdk library now requires a minimum React Native version of 0.71+. Unfortunately, we are unable to update our project to this React Native version, as it is a large-scale project, and migrating just to support this SDK would be a significant effort.

Could you consider addressing the issue in version 8.4.0 of the react-native-braze-sdk to ensure compatibility with older React Native versions? Many large projects may face similar challenges with upgrading due to dependency constraints. Ideally, libraries should maintain backward compatibility to accommodate such use cases.

The above error message is thrown because of defining the privacy.xcPrivacy incorrectly. Just fixing that would fix the issue on 8.4.0.

Please let me know if I'm missing anything.

@jerielng
Copy link
Collaborator

@QSuraj Thanks for sharing the additional context! Unfortunately, the jump from 8.4.0 to 10.0.0 involves breaking changes that span two major versions, particularly with the updates to our underlying Swift SDK bindings, which go from 7.7.0 to 9.0.0 and are scoped specifically to the corresponding version of the React Native SDK, so it would not be an isolated fix that is being targeted here. I previously mentioned redirecting to support since they could explore potential alternative solutions here. Let us know if that would work for you!

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
Projects
None yet
Development

No branches or pull requests

2 participants