Post not yet marked as solved
Hi,
I’ve recently had questions regarding GDPR and privacy on Apple products and spoke to numerous sources regarding it, but some of my queries remain unanswered. I was then directed to this forum so I’m hoping someone on here may be able to help please!
In Apple’s development program information, In article 3.3.12 it states:
“You and Your Applications (and any third party with whom You have contracted to serve advertising) may use the Advertising Identifier, and any information obtained through the use of the Advertising Identifier, only for the purpose of serving advertising. If a user resets the Advertising Identifier, then You agree not to combine, correlate, link or otherwise associate, either directly or indirectly, the prior Advertising Identifier and any derived information with the reset Advertising Identifier.”
Following seeing the aforementioned article I asked if this meant that iOS apps are only allowed to associate one IDFA with one user? I.e. if an app user got a new iPhone, would this mean that the application developers would have to remove the previous IDFA, and now associate the one from the new device with the user?
Hope that makes sense and that you may be able to help.
Thanks
Post not yet marked as solved
My IDFA on iOS 15 iphone 11 has been 00000.
is there any way to clear this?
I read everywhere that "reset IDFA" has been removed.
Post not yet marked as solved
Currently, when I use ASIdentifierManager to get UUID in iOS15 like:
NSString *adIdfa = [[[ASIdentifierManager sharedManager] advertisingIdentifier] UUIDString];
There is a new crash happened which Backtrace is
*** Terminating app due to uncaught exception 'NSMallocException', reason:*** -[NSObject allocWithZone:]: attempt to allocate object of class 'NSXPCEncoder' failed
Last Exception Backtrace:
0 CoreFoundation ___exceptionPreprocess (in CoreFoundation) 236
1 libobjc.A.dylib bool method_lists_contains_any<method_list_t*>(method_list_t**, method_list_t**, objc_selector**, unsigned long) (in libobjc.A.dylib) 979
2 CoreFoundation _couldNotInstantiate (in CoreFoundation) 107
3 Foundation 0x0000000181c4b924 0x181c09000 + 272676
4 CoreFoundation ____forwarding___ (in CoreFoundation) 651
5 CoreFoundation ___forwarding_prep_0___ (in CoreFoundation) 91
6 CoreServices 0x000000018098bc54 0x1808ff000 + 576596
7 AdSupport -[ASIdentifierManager advertisingIdentifier] (in AdSupport) 167
I cannot figure if it is caused by the iOS15 system reason or my faults.
Post not yet marked as solved
Hi. I'm having a hard time differentiating the iAd and AdServices frameworks. Is there a reason to use one framework over the other?
It appears that AdServices is iOS14+. Is iAd being deprecated?
I also noticed that iAd requires users to explicitly accept App Tracking in order to pull attribution data but AdServices does not. Is that true? Is it the same data?
Post not yet marked as solved
Hello, I am developing a game which is currently active in markets. After iOS 14 ATT, my income is reduced. I think the reason is player carelessly blocks ATT.
In my game, there is a button which shows "Rewarded Ads".
So, I will try to change the button's condition to non-interactable, if ATT is not allowed. Via this way, i will force player to puchase coins instead of rewarded by watching worthless ads, or i will inform player to allow ATT.
What is your thoughts? How can i control is ATT allowed in a ny time in iOS system?
Post not yet marked as solved
Hey everyone, im trying to publish my app to appstore but its getting denied because my google ads are showing as test ads and not real ads, does anyone have a solution or tips for this? Thanks in advance!
Hi. I would like to have ads in my apps. I don't know (nor care really) where they are served from. Apple, Google, someone else... As long as:
Apple approves of them
I can let users get rid of them with an in-app-purchase
They are clean for children of any age.
Please advise how to go about this. I have no idea where to begin. I strongly hope there is a first-party solution for this, without having to use Google stuff in my apps and such.
Thank you.
Post not yet marked as solved
So while exploring Instagram we found this really interesting way to do app installs via ads. This seems to be something native to IOS and we have no idea which API its from.
We had a look at SKADnetwork and AppStore connect apis but did not find anything relevant.
Post not yet marked as solved
Hello, where can I down load promo codes to send to app reviewers? Thank you.
Post not yet marked as solved
Hello, I wanted to know if it was allowed to make an application that makes cooking recipes and that integrates advertising images and discount coupons from restaurants in my city?
is it allowed by apple guidelines?
Hi,
I have read all exisiting posts about this topic, but until now I can not get it to work.
Somehow calling ATTrackingManager.requestTrackingAuthorization never shows the popup.
I added Privacy - Tracking Usage Description to the info list.
I also turned on the system permissions.
I am developing the app with SwiftUI.
Target device runs ios 15.4
Any ideas?
Code:
DeckListView(decks: $store.decks){
Task {
....
}
}
}.onAppear{
requestPermission()
}
func requestPermission() {
DispatchQueue.main.asyncAfter(deadline: .now() + 2) {
if #available(iOS 14, *) {
ATTrackingManager.requestTrackingAuthorization { status in
switch status {
case .authorized:
// Tracking authorization dialog was shown
// and we are authorized
print("Authorized")
// Now that we are authorized we can get the IDFA
print(ASIdentifierManager.shared().advertisingIdentifier)
case .denied:
// Tracking authorization dialog was
// shown and permission is denied
print("Denied")
case .notDetermined:
// Tracking authorization dialog has not been shown
print("Not Determined")
case .restricted:
print("Restricted")
@unknown default:
print("Unknown")
}
}
}
}
}
Post not yet marked as solved
We have implemented admob on our flutter app and published it, also have it approved on admob but the ads don't show up yet on an iPhone we would love to know if there are other steps towards setting up admib on our iOS app.
Post not yet marked as solved
has any Unity developer here managed to approve an app with Apple, that uses the Unity Ads mechanism?
i have been using Advertisement v3.7.5.
i also have managed to popup the App Tracking popup (with the EasyMobilePro package).
but Apple still rejects the app.
I can see that there are 4 possible statuses returning from the popup (approved, not approved, dismissed, etc). what should i do with Unity Ads sdk in each case?
https://forum.unity.com/threads/implementing-unity-advertisements-rejected-by-apple-for-privacy-issues.1256070/#post-8016044
Post not yet marked as solved
Hello,
I'm trying to submit my game to the app store, but I get rejected with the message:
The package I use is iOS 14 Advertising Support package:
I use the sample scene from the package with little adjustments:
[ContextScreenManager.cs]
using UnityEngine;
using System;
using System.Collections.Generic;
#if UNITY_IOS
using UnityEngine.iOS;
#endif
using System.Collections;
using UnityEngine.SceneManagement;
namespace Unity.Advertisement.IosSupport.Samples
{
/// <summary>
/// This component will trigger the context screen to appear when the scene starts,
/// if the user hasn't already responded to the iOS tracking dialog.
/// </summary>
public class ContextScreenManager : MonoBehaviour
{
/// <summary>
/// The prefab that will be instantiated by this component.
/// The prefab has to have an ContextScreenView component on its root GameObject.
/// </summary>
public ContextScreenView contextScreenPrefab;
void Start()
{
#if UNITY_IOS
Debug.Log("IOS detected");
// check with iOS to see if the user has accepted or declined tracking
var status = ATTrackingStatusBinding.GetAuthorizationTrackingStatus();
Version currentVersion = new Version(Device.systemVersion);
Version ios14 = new Version("14.5");
if (status == ATTrackingStatusBinding.AuthorizationTrackingStatus.NOT_DETERMINED && currentVersion >= ios14)
{
var contextScreen = Instantiate(contextScreenPrefab).GetComponent<ContextScreenView>();
// after the Continue button is pressed, and the tracking request
// has been sent, automatically destroy the popup to conserve memory
contextScreen.sentTrackingAuthorizationRequest += () => Destroy(contextScreen.gameObject);
}
#else
Debug.Log("Unity iOS Support: App Tracking Transparency status not checked, because the platform is not iOS.");
#endif
StartCoroutine(LoadNextScene());
}
private IEnumerator LoadNextScene()
{
#if UNITY_IOS
var status = ATTrackingStatusBinding.GetAuthorizationTrackingStatus();
while (status == ATTrackingStatusBinding.AuthorizationTrackingStatus.NOT_DETERMINED)
{
status = ATTrackingStatusBinding.GetAuthorizationTrackingStatus();
yield return null;
}
#endif
SceneManager.LoadScene(1);
yield return null;
}
}
}
and
[ContextScreenView.cs]
using UnityEngine;
namespace Unity.Advertisement.IosSupport.Components
{
/// <summary>
/// This component controls an iOS App Tracking Transparency context screen.
/// You should only have one of these in your app.
/// </summary>
public sealed class ContextScreenView : MonoBehaviour
{
/// <summary>
/// This event will be invoked after the ContinueButton is clicked
/// and after the tracking authorization request has been sent.
/// It's a good idea to subscribe to this event so you can destroy
/// this GameObject to free up memory after it's no longer needed.
/// Once the tracking authorization request has been sent, there's no
/// need for this popup again until the app is uninstalled and reinstalled.
/// </summary>
public event Action sentTrackingAuthorizationRequest;
public void RequestAuthorizationTracking()
{
#if UNITY_IOS
Debug.Log("Unity iOS Support: Requesting iOS App Tracking Transparency native dialog.");
ATTrackingStatusBinding.RequestAuthorizationTracking(AuthorizationTrackingReceived);
sentTrackingAuthorizationRequest?.Invoke();
#else
Debug.LogWarning("Unity iOS Support: Tried to request iOS App Tracking Transparency native dialog, " +
"but the current platform is not iOS.");
#endif
}
private void AuthorizationTrackingReceived(int status) {
Debug.LogFormat("Tracking status received: {0}", status);
}
}
}
Why do I get rejected? Is it because I display the example screens from the package?
Anyone had similar problems?
Glad for any help, thanks!
Post not yet marked as solved
Hello folks,
In one of my app we have used Facebook AutoLogAppEvents (app installed & app active) for analytics purpose. My question is should we ask user to enable Tracking Transparency permission request? (also for your KT we're not used Facebook AdvertiserTracking)
Post not yet marked as solved
Hello everyone, Apple support team, ask me to put this question here. I hope you can help me.
With SKAdNetwork profile (https://developer.apple.com/documentation/storekit/skadnetwork/testing_ad_attributions_with_a_downloaded_profile)
I can reduce the time for SKAdNetwork postback from my device for all apps, or just for apps which I developed by myself?
Post not yet marked as solved
I checked these sites.
https://developer.apple.com/app-store/user-privacy-and-data-use/
https://developer.apple.com/app-store/app-privacy-details/#user-tracking
I would like to know more information about IDFA.
Who assigns IDFA value to where (ex. Apple to the device or Apple to the user Apple ID)
And I want to know what information an app with tracking permission can know.
ex. Email address, gender, age, etc...
Where can I find out what kind of data is being shared by allowing tracking permissions?
Apple developer support service was not helpful.
Post not yet marked as solved
Hi, we are looking to launch our app really soon and we are having debates whether enable ATT or not. On one hand, ATT tracking is significant for our paid campaigns success. On the other hand, we don't want our users to get the feeling they are being tracked.
So I wonder, if we can disable ATT consent prompt to Apple Search Ads users only. I mean, we're still getting attribution from App Store for ASA, so why not disable the popup...
Does anyone know if you can somehow disable ATT per specific media channels?
Thanks in advance
Post not yet marked as solved
I'm considering about changing the postback URL of SKAdNetwork to a new one(TBD), is that possible?
What should I do if possible?
Thank you in advance.
Best regards.
Post not yet marked as solved
Hi there,
Working on my first game project and I'm really at a loss here. I have Unity Ads installed in my mobile game project and it works perfectly fine in Unity and if I directly upload a build from Xcode to my iPhone. If I try to Archive the build in Xcode and load it for Distribution on the App Store, all of the Ads don't play. I'm not sure how to see if TestFlight is throwing any errors with regards to the Ads, but everything else in the game works perfectly fine including IAPs.
I'd greatly appreciate any suggestions, guidance, or just outright instructions.
Thanks so much in advance!