2013-08-30 40 views
3

我需要爲每個移動設備設置一個標識符,並在所有請求中發送給服務器。 安全不是一個大問題(我們不希望用戶必須登錄)。然而,沒有任何違反條款的申請被拒絕。在空中存儲信息並唯一標識移動設備,跨平臺

我最初看https://code.google.com/p/actionscript-uuid/它看起來像這將是很好,易於實現:

import com.laiyonghao.Uuid; 

var uuid:Uuid = new Uuid(); 
trace(uuid); 

具有從安裝相關的ID,而不是設備特定ID不會是一個大問題開事實上,我們將要做的應用程序的第2版,我們需要有相同的用戶體驗。

在使用共享對象的android/ios上保存狀態信息會有問題嗎?

如果應用程序更新,它仍然能夠訪問相同的共享對象?

我相信蘋果現在會拒絕任何試圖使用MAC地址的應用程序。

我發現openudid:

http://blog.appsfire.com/with-udid-nearing-its-demise-leading-industry-players-turn-to-openudid/

https://github.com/ylechelle/OpenUDID

我還沒有看到書面原生擴展,它雖然使用這個。具有唯一標識符設備專用而不是特定安裝是優先的,只要它不太費時。

是否有本地擴展可用,它允許訪問設備特定的唯一標識符,它可以跨平臺工作?

我發現下面的問題是非常相似AIR 3.5 Mobile project device ID

另一個想法我已經是我們將要使用我們的應用程序推送通知可以爲我們提供了一個很好的標識符,會發生什麼,如果推雖然我不確定通知是否被禁用。

回答

4

在Android上,您應該使用ANDROID_ID屬性。這是設備首次啓動時由android生成的唯一標識符。在某些情況下它可能會改變,但通常是最好的唯一ID。

http://developer.android.com/reference/android/provider/Settings.Secure.html

下的iOS你有2個選項,廣告標識符和供應商標識符。

供應商標識符是唯一的,但是來自同一開發人員的應用程序相同。而identifierForAdvertising對於用於廣告相關呼叫的設備是唯一的。

https://developer.apple.com/library/ios/documentation/uikit/reference/UIDevice_Class/Reference/UIDevice.html

所有這些都可以通過在distriqt ANE包的應用原生擴展:

http://airnativeextensions.com/extension/com.distriqt.Application

特別的應用程序擴展:

http://docs.airnativeextensions.com/application/docs/