background

With the release of iOS14, apple has tightened the restrictions on user privacy rights to manufacturers, such as camera, photo album access granularity, location accuracy options, and so on. Relative to users, this is a good thing, reducing the disclosure of personal privacy information. But from the other side of the spectrum, there are a number of companies that rely on user privacy data for a living, and this article is about AD tracking.

history

Starting with iOS6, apple introduced IDFA for AD tracking to prevent vendors from abusing user immutable UDID and device Mac addresses. In contrast to the UDID and device Mac address, the IDFA can be changed and the user can manually reset the identifier. So, at the beginning of IDFA promotion, the hearts of advertising companies are resistant, what if users reset the identifier? The tracking of user behavior was greatly affected, but over time, vendors found that the vast majority of users did not hit the reset button, and the IDFA functed as immutable device ids did. After iOS10, apple introduced the ability for users to limit AD tracking, which caused another shock for manufacturers because the IDFA they got was a bunch of meaningless zeros. After a while, however, the manufacturers calmed down and realized that most users didn’t know the limit AD tracking button existed and rarely turned it on due to a lack of expertise. Well, now with the launch of iOS14, apple has pushed this button directly to the user from the hidden corner. When the APP needs to obtain IDFA, the system will directly prompt whether to allow the use of IDFA, giving the user the choice directly. Data from user research shows that about 40% of users will choose not to allow privacy rights in the pop-up box of iOS system. Under this, manufacturers are really not calm.

alternative

Starting with iOS11.3, apple released a new set of apis, SKAdNetwork. Intended to replace IDFA for tracking users in advertising.

  • Introduction to the

The SKAdNetwork framework is mainly used to evaluate the effectiveness of advertising campaigns under the premise of ensuring user privacy. It mainly involves three aspects

  1. Registration of advertisements and acceptance of conversion results
  2. AD host APP
  3. The APP being advertised
  • registered

SKAdNetwork needs to be registered with Apple and configured in the AD host APP.

  1. You need to submit information to Apple to register and obtain AdNetWorkID. The information required for registration is shown below:

After selecting and filling out your own company’s advertising information, click the blue submit button to submit the information to Apple for review. 2. You need to generate a pair of key certificates based on your company information. The public key certificate is submitted to Apple to verify the advertising ID. The private key certificate itself is used to encrypt the AD ID.

Generate private key certificate:

openssl ecparam -name prime192v1 -genkey -noout -out companyname_skadnetwork_private_key.pem

Replace the company information in the command line with your own company information.

Generate the corresponding public key certificate with the private key certificate:

openssl ec -in companyname_skadnetwork_private_key.pem -pubout -out companyname_skadnetwork_public_key.pem

Again, you need to replace the company information in the command with your own.

  • The working process

The SKAdNetwork workflow is shown below:Firstly, the advertisement is registered and signed to obtain the ID of the advertisement in iTunes. After the host APP is submitted to AppStore, the user downloads the host APP in AppStore, and the AD content of the advertised APP is displayed in the host APP. If the user clicks the AD content, It will jump to the detail display page of the advertised APP in AppStore. The content of the detail page is bound with the previous signature parameter, indicating that the display is an advertising behavior. At this point, if the user installs the advertised APP, the device returns an installation verification to the AD network. Apple’s signed message contains the AD campaign’s ID, but does not contain any user or device-related information. This feedback may include information such as the conversion rate of the AD or the ID of the host APP, which of course is in compliance with Apple’s privacy policy.

  • Description of other parts

Other parts to note throughout the SKAdNetwork workflow are:

  1. AdnetworkID needs to be registered and provided to developers. See registration for AdNetwork
  2. Registered ads need to be provided to the host APP. For details, see How to Obtain an Installation Verification Signature
  3. When signing up for AdNetwork, the feedback URL must be filled in. It is used to receive installation verification feedback.
  4. How to validate feedback. See verification feedback for details
  5. The host APP adds adnetworkID to the info.plist file. See Configuring the host APP for details
  6. Host apps need to display ads that have been registered and signed with Apple. See Installation verification of AdNetwork for details
  7. Called by the AD APPregisterAppForAdNetworkAttribution()or updateConversionValue(_:)These two methods are used to provide APP installation verification information.
  8. It’s called by the AD APPupdateConversionValue(_:)To update the conversion rate. When the timer used to update the conversion rate expires, the device automatically sends an installation verification feedback.

Note: AppClip does not currently support SKAdNetwork

conclusion

At present, the availability of IDFA in iOS14 is greatly reduced, SKAdNetwork can not replace IDFA, the transparency and accuracy of advertising is completely inferior to IDFA, and may even give birth to a batch of advertising cheating black production, which really makes manufacturers headache. However, as Apple slowly optimize, continuous update iteration, I believe that in the near future, Apple will be able to achieve user privacy and manufacturers of advertising effect both.