顯示具有 IDFA 標籤的文章。 顯示所有文章
顯示具有 IDFA 標籤的文章。 顯示所有文章

2014年5月2日 星期五

iOS 開發筆記 - 使用 AdMob 與 IDFA 的處理



查詢 Admob 的 iOS release notes 可知 Admob 6.5.0 (2013/07/16) 時已經有用到 IDFA 了。但很妙地,上回上傳時沒碰到,但這次更新時又會碰到?這次就試著勾選處理了。

如果在一開始上傳 binary 前選 Dose this app use the Advertising Identifier (No) 時,上傳 binary 時,驗證過程會看到類似的訊息:
Improper Advertising Identifier IDFA Usage. Your app contains the Advertising Identifier IDFA API ...
解法在此刻只能遞交一份空專案,接著在 Reject by developer 後,才能再重新填這張單子。

簡言之,在 Admob 而言,就是勾選三項:
  • Does this app use the Advertising Identifier (Yes)
  • Serve advertisements within the app (checked)
  • Limit Ad Tracking setting in iOS (checked)
不過,話說那最後一條真的是背書啊 Orz 亂用第三方 libraries 挺抖的。

2014年4月12日 星期六

iOS 開發筆記 - Improper Advertising identifier [IDFA] Usage. Your app contains the Advertising Identifier [IDFA] API but you have not indicated its usage on the prepare for Upload page in iTunes Connect.



在 2014-04-10 上傳 ipa 發現這這問題:
Improper Advertising identifier [IDFA] Usage. Your app contains the Advertising Identifier [IDFA] API but you have not indicated its usage on the prepare for Upload page in iTunes Connect.
解法有兩種:
  • 將程式內有用到 UUID/UDID 的部分去掉(如 Google Analytics Library 等),再重新上傳
  • 設法先退可簽署 IDFA 條約的狀態,重新上傳
其中要退回到簽署 IDFA 的部分,可以做的方式有兩種:
  • 將 app 內有用到跟 UUID/UDID 相關的移掉,進行重新上傳到 iTunes Connect,再把 reject 它,重新填寫跟 IDFA 相關的條款,再重新上傳 iTunes Connect
  • 建立 empty project ,將 Bundle Identifier 設成跟 app 一樣,上傳到 iTunes Connect,再 reject 它,重新填寫跟 IDFA 相關的條款,再重新上傳 iTunes Connect
後來,我選擇不用改 code 的部分,當然也要先把狀態改回到可以簽署 IDFA 流程,就選擇建立 empty project 來處理(此外,可以從原先的 app project 把Images.xcassets複製來用)。只是一樣的程式碼幾個禮拜前沒問題,為何這幾天出事?真是令人不解。

今早 2014-04-12 測試時,一樣的 code 發現又沒 IDFA 問題了 Orz 但還是把碰到這怪現象的解法記錄一下。

註 UDID/UUID 相關:

#import <AdSupport/ASIdentifierManager.h>

if (NSClassFromString(@"ASIdentifierManager")) {
    NSLog(@"ID: %@", [[[ASIdentifierManager sharedManager] advertisingIdentifier] UUIDString]);
} else {
    NSLog(@"ID: %@", [[UIDevice currentDevice] uniqueIdentifier]);
}


Updated @ 2014-05-02 : iOS 開發筆記 - 使用 AdMob 與 IDFA 的處理