【问题标题】:Android package name questionAndroid 包名问题
【发布时间】:2011-05-18 16:44:51
【问题描述】:

每个应用程序(精简版和专业版)的包名称必须是唯一的。 开发过程中可以更改包名称吗?因为我的应用程序中使用的包名已经可以被市场上的其他应用程序使用。 据我记得,一旦我修改了我的应用程序的包名,它到处都显示错误(尽管我到处更改了包名)。 另一件事:由于应用程序的更新是它的修改版本,我猜更新的包名称与应用程序的相同。或者我可以说修改后的应用程序的包名..

我很确定我对我的问题的回答是

  1. 是的,包名可以稍后更改(发布前)
  2. 在更新期间,软件包名称应保持不变。

我只是想确定..

谢谢。

【问题讨论】:

    标签: android package


    【解决方案1】:

    是的,您对可能的答案是正确的。

    1. 是的,你可以,它应该可以工作。我没有看到你收到的错误消息,所以我不知道它是什么,但你可能忘记更新 Manifest。

    2. 是的。包包名称应保持不变。如果您更改包名称,应用程序将不会被识别为相同。

    来自 Android 开发者页面:

    在上传更新之前 应用程序,请确保您有 增加了 android:versionCode 和 android:versionName 属性 清单的元素 文件。另外,包名必须是 与现有版本相同,并且 .apk 文件必须使用 相同的私钥。如果包名 和签名证书不匹配 现有版本的那些,市场 会认为它是一个新的应用程序, 照此发布,不会提供 它作为更新提供给现有用户。

    http://developer.android.com/guide/publishing/publishing.html

    【讨论】:

    • 谢谢。 versionCode 和 versionName 是什么?例如。来自开发网站:android:versionCode="2" android:versionName="1.1"。在这种情况下 versionCode 意味着这是一个更新?所以首先代码是“1”,名称是“1.0”,然后是“2”和“1.1”,然后在第二次更新时代码是“3”,名称是“1.2”/“2.0”等等?
    • 正如你所说的那样工作。 versionCode 表明新包比上一个包更新。它是一个内部整数值,不向用户显示,但拥有实际的版本控制。 versionName 是向用户显示的版本。它可以是原始字符串或对资源中字符串值的引用。它的唯一目的是向用户展示。
    • 我可能找到了它:例如我发布了应用程序的第 8 次更新。 versionCode 是 2.1.5,但 versionName 是 8。对吗?为什么 versionName 是一个字符串?只是一个机会?当 versionName 是一个字符串时,你能给我一个例子吗?
    • 你的意思不是相反吗?您将公开应用程序的第 8 次更新: versionCode 为 8 , versionName 为 2.1.5 。 versionName 可以是字符串,因此您可以向用户显示类似:“2.2a”,如果您想显示这是一个 alpha 版本。 versionCode 也不需要正好是 1+。你可以做到: 1st=1 2nd=4 3rd=19 4th=21... 唯一的要求是更新是一个比以前版本大的整数。
    【解决方案2】:
    1. 是的,包名可以在以后更改,也可以在发布后更改,但就像您正在开发一个全新的应用程序一样。

    2. 在更新期间,软件包名称应保持不变

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 1970-01-01
      • 2015-08-17
      • 1970-01-01
      • 1970-01-01
      • 2012-04-16
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      相关资源
      最近更新 更多