【问题标题】:Change package name to existing Phonegap projects将包名称更改为现有的 Phonegap 项目
【发布时间】:2013-05-10 14:20:29
【问题描述】:

我有一个 android phonegap 项目和一个 ios phonegap 项目。

它们是使用给定的包名创建的,但我现在必须更改这个包名。

在 Android 中,我想我必须更改清单中的包名,加上重命名/移动 src 文件夹中的 java 文件,并在这个 java 文件内部进行更改以反映新的包名。然后清理并构建。这听起来对吗?

我还注意到 Eclipse Android 工具 >> 重命名应用程序包中的一个选项,它要求提供包名称。它会进行所有必要的更改吗?

如何更改 XCode 项目中的捆绑包 ID,以便项目可以正常构建?只需按照此票中的说明编辑捆绑标识符即可吗? Changing xcode package name without creating and importing to new project

感谢您的帮助。

【问题讨论】:

    标签: android ios cordova packages


    【解决方案1】:

    最好不要重命名 .java 文件和类名,而是在以下位置进行更改:

    • AndroidManifest.xml
    • config.xml

    然后用cordova platform remove android删除android支持
    然后重新添加android支持cordova platform add android

    这将再次生成具有正确名称的 .java 文件。

    参考:http://intown.biz/2014/03/07/renaming-a-cordova-application/

    【讨论】:

    • AndroidManifest.xml 中的所有更改都将随着 cordova platform remove android 丢失,config.xml 中的更改足以看到 重新创建的 .java、包和清单cordova平台添加android
    • 投反对票,因为对 AndroidManifest.xml 的更改是不必要的,而下面的投票较少的答案提供了更好的答案。
    • 这行得通。现在我可以轻松地使用相邻的测试版本和产品版本,而无需卸载测试版本。我为我的包名称使用前缀 testprod
    【解决方案2】:

    作为上面的命令,只需 3 步:

    • 移除平台cordova platform remove android

    • 编辑 config.xml(主文件夹)查找和替换小部件 ID

    <widget id="com.foobar.mynewname" version="1.0.0" android-versionCode="1" xmlns="http://www.w3.org/ns/widgets" xmlns:cdv="http://cordova.apache.org/ns/1.0">
    • 再次添加平台cordova platform add android

    【讨论】:

      【解决方案3】:

      是的,基本上只需更改清单中的 android:package 属性,然后重构 src/ 文件夹以遵循相同的包名称。

      作为替代方案,您可以在 Eclipse 中使用重命名选项,但它必须修改 任何 使用资源的 java 文件中的所有 R.class 导入。这看起来有点吓人,但应该可以正常工作。

      【讨论】:

        【解决方案4】:

        包含项目名称的文件有:

        • AndroidManifest.xml
        • res/values/strings.xml
        • build.xml
        • config.xml

        进入 src/your.project.name 并打开 .java 文件。

        根据许可,将软件包名称更改为您想要的任何新软件包名称。

        在 AndroidManifest.xml "Package" 中使用相同的包名。

        尝试构建,如果可行,则修改 res/values/strings.xml 中的值。

        重新构建并遍历每个值,直到您满意为止。

        【讨论】:

        • 更改 res/values/strings.xml 中的“应用程序名称”对我有用,干杯:)
        【解决方案5】:

        在 ios 中你所要做的就是改变 config.xml 属性

        <?xml version='1.0' encoding='utf-8'?>
        <widget id="org.test.area" version="1.0.0" xmlns="http://www.w3.org/ns/widgets" xmlns:gap="http://phonegap.com/ns/1.0">
            <name>YourNewAppName</name>
            [...]
        

        然后按照 kumar 的建议执行 cordova platform remove ios 然后 cordova platform add ioscordova build ios 然后在 xcode 中重建项目!

        【讨论】:

          猜你喜欢
          • 2014-03-09
          • 1970-01-01
          • 2016-08-05
          • 2018-06-10
          • 1970-01-01
          • 1970-01-01
          • 1970-01-01
          • 2014-04-21
          相关资源
          最近更新 更多