android - 清单文件中的包名称和 Gradle 中的应用程序 ID 有什么区别
问题描述
包名与 applicationId 有什么区别。
我想知道它们之间的区别,同时在这段代码中都有不同的使用方式。要获取包名称,您需要上下文和类似这样的方式
context.getPackageName();
并且为了 applicationId 不需要上下文或活动,
BuildConfig.applicationId
我在 Play 商店链接中观察到 applicationid 现在是您的链接 id,而不是包名称。
这个问题与以下链接中的帖子相同,但答案并不让我满意。 更改包名称与 applicationId 有什么区别
解决方案
这里是解释
包名称被定义为清单的一部分,代表任何给定应用在单个设备和 Google Play 商店(或任何其他应用商店)上的身份。因此,您的包名必须是唯一的。
然而,有时能够生成具有不同身份的单独 APK 是有用的(例如,用于调试和发布版本的不同 ID,以便它们可以在 Fabric Beta 中作为不同的实体发布)。为了促进这一点,我们可以在 build.gradle 中控制 applicationId,这使我们能够拥有不同的包名称。我们可以在一个简单的项目中看到这一点。
答案来源:https ://blog.stylingandroid.com/package-name-vs-application-id/
另一个参考来源:https ://blog.mindorks.com/android-package-name-vs-application-id-ad95b08815a6
希望能帮助到你!
推荐阅读
- android - 我如何为我的 BottomSheet 设置半展开状态
- r - R中重复中断循环的问题
- apache-spark - Spark 是否在内部跨节点分发数据帧?
- java - 这种循环的复杂性是多少?
- python - Python pandas:如何根据其他列的最大值查找时差?
- asp.net - 会话和静态变量被重置
- android - 如何从编辑文本中获取字符串并传递给新活动?
- javascript - JS 通过 onClick 获取 div 元素的值(下拉菜单)
- javascript - Javascript 关闭没有达到预期的效果。(关闭内部未保持大气值)
- python - 如何让pyqt5开发的应用在ubuntu上支持中文输入