通过Android Studio更改应用程序包名称

时间:2014-03-11 07:09:54

标签: android android-studio android-manifest

我知道在SO中多次询问这个问题。我已经检查了下面发布的答案但对我不起作用:(

目前,我的应用程序的软件包名称是" com.example.test "。我想将其更改为" com。 example.test.test1 "。所以,我刚刚更改了清单文件中的软件包名称并构建了应用程序。

现在,如果我将两个应用程序单独运行,将上面的软件包名称从清单文件更改为设备,它应该向我显示不同的应用程序。它显示错误为" 失败[INSTALL_FAILED_CONFLICTING_PROVIDER] "

由于软件包名称不同,它应该向我显示设备中的不同应用程序,而不是覆盖其他应用程序。帮助我。

任何帮助都将不胜感激。谢谢

3 个答案:

答案 0 :(得分:28)

自Android Studio V0.0.6起,packageName属性已弃用。要更改应用程序的程序包名称,请改用applicationId。查看release notes here

enter image description here

更改applicationId和sync gradle。

答案 1 :(得分:16)

如果你的目标是在设备中的两个实例上使用相同的应用程序,那么使用gradle就很容易了。您不需要在Manifest文件中更改软件包名称,gradle将在构建过程中为您处理,并在需要时进行所有软件包重命名。

为了实现这一点,您需要在主应用程序模块的build.gradle文件中使用不同的应用程序ID(包名称)为您的应用程序编写新的产品风格。例如。如果com.example.test是您应用的默认包名称。您可以使用不同的包名称拥有相同应用程序的不同风格,或者知道应用程序ID。 produltFlavours可以在主模块的build.gradle文件的android标签内定义,如下图所示。

productFlavors {
    app1 {
        applicationId "com.example.test.test1"
    }
}

进行更改后同步项目。现在从左侧面板中的Build Variant选项卡中选择构建变体并点击运行。 Gradle脚本将为您处理所有包重命名。

检查一次以获取更多详细信息:

Android Gradle Build Variant Deploy

答案 2 :(得分:2)

对我有用的东西: 1.右键单击要在java文件夹下更改的包 2.重构 - >重命名| 3.重命名包 - >按“输入” - >按“Do Refactor”| 4.这会更新所有文件,包括清单