2012-12-15 41 views
2

在我的主要活動的onCreate,onStartonResume方法中,當應用程序首次安裝時,呼叫PushManager.shared().getAPID()始終爲空。首次安裝應用程序會導致應用程序無效

但是,在onResume方法之後,Urban Airship會自動註冊一個新的APID(我放了一個按鈕並創建了一個烤麪包以打印APID)。我想檢索此APID並將其存儲在我的後端服務器上進行全新安裝。我怎樣才能做到這一點?

我的問題類似於this的問題,但我期待在我自己的後端服務器上註冊apid而不是Urban Airship。

回答

0

我有同樣的問題。爲了讓UA lib在第一次安裝時生成APID,我必須調用PUshManager.enablePush()。

它不是我想要的理想解決方案,但它允許我抓取APID並將其保存到單獨的服務器。

+3

雅我在應用程序啓動時調用了它。問題是我在應用程序啓動時想要在服務器上註冊該ID,但由於它尚未完成從UrbanAirship獲得的ID,所以它爲空。我必須創建一個BroadcastReceiver並等待操作PushManager.ACTION_REGISTRATION_FINISHED,並且僅在將該ID註冊到服務器之後。 – user972616

+0

嗯,這是非常有意義的。 –

+0

可以請你發佈答案嗎?我也有同樣的問題:http://stackoverflow.com/questions/19827850/push-notifications-using-urban-airship-returns-apid-as-null-at-the-first-launch?noredirect=1# comment29482816_19827850 – TharakaNirmana

相關問題