I am facing similar issues. I am able to trigger the tasks using XCode and LLDB but it does not work otherwise. Moreover, I found some interesting logs in the Console.
Approach 1:
On app launch, register the task and immediately submit a refresh request task.
Steps: Launch app, browse, kill app. Checks logs, notice how iOS is immediately cancelling the submitted task:
Code Block default 13:18:34.259422-0800 AppName [skadnetwork]| default 13:18:34.261396-0800 AppName submitTaskRequest: <BGAppRefreshTaskRequest: com.package.SKAdNetwork.updateConversion.taskIdentifier, earliestBeginDate: 2021-02-12 21:21:34 +0000> |
| default 13:18:34.261917-0800 AppName Submitting task request activity: bgRefresh-com.package.SKAdNetwork.updateConversion.taskIdentifier:8AB717 |
| default 13:18:34.266513-0800 AppName [skadnetwork] |
| default 13:18:34.285296-0800 dasd Submitted Activity: bgRefresh-com.package.SKAdNetwork.updateConversion.taskIdentifier:8AB717 at priority 10 <private> |
| error 13:18:34.300504-0800 appstored Error setting install attribution pingback registered for app: 0, error: (null), result: 0 |
| default 13:22:45.563043-0800 AppName [skadnetwork] recordNewRelicBreadcrumb registerAppForAdNetworkAttribution |
| default 13:22:45.567397-0800 AppName submitTaskRequest: <BGAppRefreshTaskRequest: com.package.SKAdNetwork.updateConversion.taskIdentifier, earliestBeginDate: 2021-02-12 21:25:45 +0000> |
| default 13:22:45.579130-0800 AppName [skadnetwork] recordNewRelicBreadcrumb skAdNetwork_task_scheduled |
| default 13:22:45.610995-0800 dasd Daemon Canceling Activities: {( |
| bgRefresh-com.doordash.dd.SKAdNetwork.updateConversion.taskIdentifier:8AB717 |
| )} |
| default 13:22:45.611545-0800 dasd CANCELED: bgRefresh-com.package.SKAdNetwork.updateConversion.taskIdentifier:8AB717 at priority 10 <private>! |
Approach 2:
On app launch, register the task. Submit request task when app enters background.
Steps: Launch app, browse, kill background, observe logs. The task never gets submitted and hence never runs
Code Block default 14:41:36.614008-0800 appname [skadnetwork] recordNewRelicBreadcrumb registerAppForAdNetworkAttribution| error 14:41:36.656615-0800 appstored Error setting install attribution pingback registered for app: 0, error: (null), result: 0 |
| default 14:41:49.107182-0800 appname [skadnetwork] recordNewRelicBreadcrumb handleDidEnterBackground |
| default 14:41:49.107531-0800 appname submitTaskRequest: <BGAppRefreshTaskRequest: com.package.SKAdNetwork.updateConversion.taskIdentifier, earliestBeginDate: 2021-02-12 22:46:49 +0000> |
| default 14:41:49.108325-0800 appname Submitting task request activity: bgRefresh-com.package.SKAdNetwork.updateConversion.taskIdentifier:CF77A7 |
| default 14:41:49.113179-0800 appname [skadnetwork] recordNewRelicBreadcrumb skAdNetwork_task_scheduled |
Approach 3:
On app launch, register the task. Submit request task when app enters background.
Steps: Launch app, browse, put the app in the background, observe logs, this works sometimes.
Code Block default 13:39:07.774533-0800 appname [skadnetwork] recordNewRelicBreadcrumb registerAppForAdNetworkAttribution| default 13:39:07.786890-0800 appname submitTaskRequest: <BGAppRefreshTaskRequest: com.package.SKAdNetwork.updateConversion.taskIdentifier, earliestBeginDate: 2021-02-12 21:44:07 +0000> |
| default 13:39:07.789282-0800 appname Submitting task request activity: bgRefresh-com.package.SKAdNetwork.updateConversion.taskIdentifier:23654E |
| default 13:39:07.793443-0800 appname [skadnetwork] recordNewRelicBreadcrumb skAdNetwork_task_scheduled |
| default 13:39:07.817614-0800 dasd Submitted Activity: bgRefresh-com.package.SKAdNetwork.updateConversion.taskIdentifier:23654E at priority 10 <private> |
| error 13:39:07.833182-0800 appstored Error setting install attribution pingback registered for app: 0, error: (null), result: 0 |
| default 13:47:53.991482-0800 dasd bgRefresh-com.package.SKAdNetwork.updateConversion.taskIdentifier:23654E:[ |
| {name: ApplicationPolicy, policyWeight: 50.000, response: {Decision: Can Proceed, Score: 0.46}} |
| {name: DeviceActivityPolicy, policyWeight: 5.000, response: {Decision: Can Proceed, Score: 0.38}} |
| ] sumScores:66.057196, denominator:96.410000, FinalDecision: Can Proceed FinalScore: 0.685170} |
| default 13:47:53.991704-0800 dasd 'bgRefresh-com.package.SKAdNetwork.updateConversion.taskIdentifier:23654E' CurrentScore: 0.685170, ThresholdScore: 0.439288 DecisionToRun:1 |
| default 13:47:54.034203-0800 dasd bgRefresh-com.package.SKAdNetwork.updateConversion.taskIdentifier:23654E:[ |
| {name: ApplicationPolicy, policyWeight: 50.000, response: {Decision: Can Proceed, Score: 0.46}} |
| {name: DeviceActivityPolicy, policyWeight: 5.000, response: {Decision: Can Proceed, Score: 0.38}} |
| ] sumScores:66.057196, denominator:96.410000, FinalDecision: Can Proceed FinalScore: 0.685170} |
| default 13:47:54.251142-0800 appname Handling launch from daemon for activities: {( |
| bgRefresh-com.package.SKAdNetwork.updateConversion.taskIdentifier:23654E |
| )} |
| default 13:47:54.251260-0800 appname Application launched for activities: {( |
| bgRefresh-com.package.SKAdNetwork.updateConversion.taskIdentifier:23654E |
| )} |
| default 13:47:54.251379-0800 appname Calling handlers for activities: {( |
| bgRefresh-com.package.SKAdNetwork.updateConversion.taskIdentifier:23654E |
| )} |
| default 13:47:54.251492-0800 appname Running task: <BGAppRefreshTask: com.package.SKAdNetwork.updateConversion.taskIdentifier> |
| default 13:47:54.253333-0800 appname Starting task: <BGAppRefreshTask: com.package.SKAdNetwork.updateConversion.taskIdentifier> |
| default 13:47:54.257241-0800 appname [skadnetwork] recordNewRelicBreadcrumb skAdNetwork_task_invoked |
| default 13:47:54.346683-0800 appname [skadnetwork] recordNewRelicBreadcrumb skAdNetwork_conv_updated |
| error 13:47:54.348164-0800 appstored Error updating install attribution pingback for app: 0, error: (null), result: 0 |
| default 13:47:54.460999-0800 appname Complete task request activity: bgRefresh-com.package.SKAdNetwork.updateConversion.taskIdentifier:23654E |
| default 13:47:54.461765-0800 dasd COMPLETED bgRefresh-com.package.SKAdNetwork.updateConversion.taskIdentifier:23654E at priority 10 <private>! |
| default 13:47:54.462502-0800 dasd NO LONGER RUNNING bgRefresh-com.package.SKAdNetwork.updateConversion.taskIdentifier:23654E ...Tasks running in group [com.apple.dasd.defaultNetwork] are 0! |