سياسة بيانات الموقع الجغرافي الدقيق

اختيار النظام الأساسي: Android iOS

أدّت التعديلات الأخيرة على سياسات الناشرين في Google إلى فرض متطلبات جديدة بشأن الإشعارات والموافقة على الناشرين الذين يمرّرون بيانات الموقع الجغرافي الدقيقة للمستخدمين إلى Google لأغراض متعلّقة بالإعلانات.

إذا كانت هذه السياسة تنطبق عليك، يعرض المقتطف التالي إحدى الطرق التي يمكنك من خلالها إعلام المستخدمين بمشاركة البيانات هذه:

Swift

func presentConsentOverlayFromViewController(_ rootViewController: UIViewController) {
  if (rootViewController == nil) {
    return;
  }

  DispatchQueue.main.async {
    let alert = UIAlertController(title: "Location data",
        message: """
            We may use your location, and share it with third parties,
            for the purposes of personalized advertising, analytics,
            and attribution.
            To learn more, visit our privacy policy at https://myapp.com/privacy.
        """,
        preferredStyle: .alert)
    let alertAction = UIAlertAction(title: "OK",
        style: .default,
        handler: { _ in
          // TODO: replace the below log statement with code that specifies how
          // you want to handle the user's acknowledgement.
          print("Got consent.")
        }
    )
    alert.addAction(alertAction)
    rootViewController.present(alert, animated: true, completion: nil)
  }
}

// To use the above function assuming you are in a view controller:
presentConsentOverlayFromViewController(self)

Objective-C

- (void)presentConsentOverlayFromViewController:(UIViewController *)rootViewController {
  if (rootViewController == nil) {
    return;
  }

  dispatch_async(dispatch_get_main_queue(), ^{
      UIAlertController *alert = [UIAlertController
          alertControllerWithTitle:@"Location data"
          message: @"We may use your location, and share it with third parties,"
              @"for the purposes of personalized advertising, analytics, and attribution."
              @"To learn more, visit our privacy policy at https://myapp.com/privacy."
          preferredStyle:UIAlertControllerStyleAlert];
      UIAlertAction *ok = [UIAlertAction
          actionWithTitle:@"OK"
          style:UIAlertActionStyleDefault
          handler:^(UIAlertAction *action) {
            [alert dismissViewControllerAnimated:YES completion:^{
            // TODO: replace the below log statement with code that specifies
            // how you want to handle the user's acknowledgement.
            NSLog(@"Got consent.");
            }];
          }];

      [alert addAction:ok];
      [rootViewController presentViewController:alert animated:YES completion:nil];
  });
}

// To use the previous function assuming you are in a view controller:
[self presentConsentOverlayFromViewController:self];