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

Add 4 privacy manifests for the 4 importable targets #1334

Merged
merged 1 commit into from
Dec 1, 2023

Conversation

nan-li
Copy link
Contributor

@nan-li nan-li commented Nov 7, 2023

Description

One Line Summary

Add privacy manifests to Framework, Extension, InAppMessaging, and Location by following Apple documentation.

Details

Adds a privacy manifest to each of the following targets:

  • OneSignalExtension
  • OneSignalFramework
  • OneSignalInAppMessaging
  • OneSignalLocation

Currently, they are not added to the other targets such as Core, Outcomes, User, etc. as these targets are already accounted for by inclusion in the umbrella OneSignalFramework target. App developers do not import these smaller modules directly but only via OneSignalFramework.

We will await feedback if the above is true and these "sub-modules" don't need a privacy manifest.

🚧 Remaining questions

For the Data Collected category (see Apple docs), I have chosen Analytics as the reason for most as this is the level that OneSignal uses the data for, and that the data is not linked to user identity (as this is the minimum use case to account for anonymous users if the SDK consumer is not using any identifiers). However, apps can use this data for different reasons.

In addition, I have not submitted other data such as email or phone numbers as the SDK is capable of collecting these but only if the app developer chooses.

See https://developer.apple.com/forums/thread/738710

Motivation

Third-party privacy manifests will be required by Apple.

Scope

Privacy manifest

OneSignalLocation

Data Type Purposes Linked? Tracking?
PreciseLocation Analytics NO NO
CoarseLocation Analytics NO NO
ProductInteraction Analytics NO NO

OneSignalInAppMessaging

  • Accesses NSPrivacyAccessedAPICategoryUserDefaults for reason CA92.1 (docs)
Data Type Purposes Linked? Tracking?
ProductInteraction Analytics NO NO

OneSignalExtension

  • Accesses NSPrivacyAccessedAPICategoryUserDefaults for reason CA92.1 (docs)
Data Type Purposes Linked? Tracking?
UserID AppFunctionality NO NO
ProductInteraction Analytics NO NO

OneSignalFramework

  • Accesses NSPrivacyAccessedAPICategoryUserDefaults for reason CA92.1 (docs)
Data Type Purposes Linked? Tracking?
UserID AppFunctionality NO NO
ProductInteraction Analytics NO NO
PurchaseHistory Analytics NO NO

Testing

Unit testing

None

Manual testing

None

Affected code checklist

  • Notifications
    • Display
    • Open
    • Push Processing
    • Confirm Deliveries
  • Outcomes
  • Sessions
  • In-App Messaging
  • REST API requests
  • Public API changes

Checklist

Overview

  • I have filled out all REQUIRED sections above
  • PR does one thing
  • Any Public API changes are explained in the PR details and conform to existing APIs

Testing

  • I have included test coverage for these changes, or explained why they are not needed
  • All automated tests pass, or I explained why that is not possible
  • I have personally tested this on my device, or explained why that is not possible

Final pass

  • Code is as readable as possible.
  • I have reviewed this PR myself, ensuring it meets each checklist item

This change is Reviewable

In each of the following targets:
- OneSignalExtension
- OneSignalFramework
- OneSignalInAppMessaging
- OneSignalLocation
@nan-li
Copy link
Contributor Author

nan-li commented Dec 1, 2023

Have not heard responses yet for forum post or email correspondence.
We will proceed with merging this PR and update should we hear back that any fixes are needed.

@nan-li nan-li merged commit 7786390 into main Dec 1, 2023
3 of 4 checks passed
@nan-li nan-li deleted the add_privacy_manifest branch December 1, 2023 22:20
@emawby emawby mentioned this pull request Jan 16, 2024
18 tasks
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

Successfully merging this pull request may close these issues.

2 participants