在Android中,如何以編程方式(或通過其他方法)獲取應用程序的ID,以及如何使用該ID與其他應用程序進行通信?如何獲取Android應用程序ID?
回答
我不知道什麼是「應用程序ID」你是指,但對於應用程序的一個唯一的標識符,您可以使用:
getApplication()getPackageName()方法,從當前的活動
PackageInfo.sharedUserId
字段將顯示在清單中分配的用戶Id 。
如果你想兩個應用程序具有相同的用戶id,這樣他們就可以看到對方的數據,並在同一個進程中運行,然後將它們分配清單中的相同用戶名:
android:sharedUserId="string"
兩個包帶相同的sharedUserId也需要具有相同的簽名。
我也建議您閱讀here以正確方向輕推。
如果整個目的是與其他應用程序通信數據,請使用Intent的sendBroadcast方法。
否則你可以得到進程的ID您的應用程序在運行:
最終靜態INT android.os.Process.myPid()
返回此進程的標識,它可以與killProcess使用(INT )和sendSignal(int,int)。
我不知道你所需要的應用程序/安裝ID,但你可以從Android開發了一大篇檢討現行的可能性:
綜上所述:
UUID.randomUUID()
用於在安裝後第一次創建id並在之後進行簡單檢索TelephonyManager.getDeviceId()
對相對現代設備
如果application id
,你指的是package name
,則可以使用該方法Context::getPackageName
(http://http://developer.android.com/reference/android/content/Context.html#getPackageName%28%29)實際設備標識符
Settings.Secure.ANDROID_ID
。 如果你想與其他應用程序進行通信,有多種方法:
- 啓動另一個應用程序的活動,並在「其他」發送數據的「意圖」
- 的發送廣播如果您只需要共享結構化數據,請使用內容提供商
- 如果其他應用程序需要在後臺連續運行,請使用Server並將您自己「綁定」到服務。
如果您可以詳細說明您的具體要求,社區將能夠更好地爲您提供幫助。
如果我想顯示應用程序列表,並且需要將該ID作爲整數,就像所有列表適配器都需要一樣,該怎麼辦?我可以使用安裝時間,但它是一個很長的類型。將它轉換爲int仍然有幫助? – 2015-11-08 23:38:20
包名通常不是applicationId,當您通過build.gradle進行設置時! – 2017-02-24 13:16:15
如果您使用的是新的Gradle構建系統,那麼getPackageName
會奇怪地返回應用程序ID,而不是包名稱。所以MasterGaurav的答案是正確的,但他並不需要與++
如果應用程序ID,你指的是包的名字開始......
查看更多有關分歧here 。
**在這一點上不那麼新
++我意識到,他的答案在2011年
非常有意義如果正在尋找在gradle這個applicationId
定義的值,你可以簡單地使用
BuildConfig.APPLICATION_ID
Gradle太棒了!這是一個生活救星。 – hgoebl 2016-10-04 07:07:52
如果你正在編寫一個Android庫,這不會有用 – 2017-09-13 09:54:32
- 1. Android獲取應用程序ID
- 2. Android - 如何獲取Flavor的應用程序Id
- 3. 如何在Android中獲取應用程序ID?
- 4. 獲取Android應用程序
- 5. 獲取Android應用程序
- 6. 如何從應用程序對象獲取應用程序頁面ID
- 7. 獲取Facebook的應用程序ID?
- 8. 獲取應用程序圖標Id - Monodroid
- 9. 如何獲取Android線程ID?
- 10. Android應用程序ID
- 11. 獲取位置ID的城市在android應用程序
- 12. 如何使用Linkedin應用程序獲取iOS應用程序的應用程序ID?
- 13. 如何獲取Paypal的應用程序ID?
- 14. 如何在Google應用程序腳本中獲取文件ID
- 15. 如何在應用程序腳本中獲取表單ID
- 16. 如何獲取貝寶實時應用程序ID
- 17. 如何獲取PayPal沙箱的應用程序ID?
- 18. WM_COMMAND - 如何從另一個應用程序menuitem獲取ID?
- 19. DB2 for z/os V11 - 如何獲取應用程序ID?
- 20. 如何從Air應用程序獲取主板ID?
- 21. 在PySide2應用程序中,如何獲取QWindow的ID?
- 22. 如何在運行時獲取應用程序ID
- 23. 如何在iframe應用程序中獲取Facebook頁面ID(C#)
- 24. 如何在android應用程序中從facebook sdk獲取電子郵件ID?
- 25. 如何從最新版本的儀表板獲取IBM Bluemix Android應用程序的應用程序安全ID?
- 26. iPhone應用程序:如何從應用程序ID獲取應用程序圖標?
- 27. 如何從MVC Internet應用程序獲取Android應用程序中的DbSets?
- 28. 如何從android中的進程獲取應用程序名稱?
- 29. 如何獲得Android應用程序的應用程序列表?
- 30. Android - 從應用程序獲取應用程序
每個安裝的應用程序有一個唯一的ID ...是有可能從其他應用程序 – arams 2009-08-12 09:27:51
得到一個應用程序的唯一ID不是吧'getApplicationContext()。getPackageName()'? – 2016-02-26 02:53:39