android应用程序的唯一ID是什么?是包名吗?在一台设备上可以有两个具有相同软件包名称的应用程序吗?
答案 0 :(得分:12)
有两种不同的东西:Java包和Android应用程序包。第二个需要是唯一的。
有一篇关于它的好文章here
答案 1 :(得分:3)
是的,包名是市场上Android应用程序的唯一标识符。
不,市场上/设备上不能有两个具有相同包名的应用。
答案 2 :(得分:2)
我想补充一点这里没有提到的澄清。
虽然不能有两个具有相同包名称的应用,但是一个应用中可以有多个启动器活动,用户可以在启动器应用中看到这些活动。例如,标准的“地图”应用程序(“com.google.android.apps.maps”包)有几个启动器活动,如“本地”,“导航”,“地图”。如果这些“应用程序”(或开发人员的活动)在一个应用程序包中实现,则对用户无关紧要。
活动名称(“com.google.android.maps.MapsActivity”)本身也不是唯一的,因为任何人都可以使用名为MapsActivity的java包com.google.android.maps创建具有唯一包名称和活动的应用
因此,如果要查找所有这些启动器活动的唯一标识符,则应使用应用包名称(“com.google.android.apps.maps”)和活动名称(“com.google.android”的组合.maps.MapsActivity“)。
答案 3 :(得分:1)
包名称必须不同,您无法上传具有相同包名称的应用程序,如现有应用程序。
答案 4 :(得分:1)
Android应用的唯一标识符现在是applicationId
文件中的build.gradle
字段。设备将根据该字段确定应用是现有应用的更新还是新应用。