如何在基于IntelliJ IDEA的新IDE Android Studio中重命名包?
是否包含自动重构?
我想进行批量重构,但我不知道如何.我在Eclipse工作了两年,在Eclipse中工作了一次.
我们假设这是包名:
package com.company.name.我该如何改变company?
PS我看到了如何改变name但没有改变company.我正在使用Android Studio.
我已经制作了一个应用程序,这是我的第一个应用程序,所以当我开始编码时,我将包名称保留为com.example.stuff,现在当我尝试上传到游戏商店时,由于包名称,它不会让我.我试过重构 - >重命名包名并在AndroidManifst.xml中更改它然后我再次尝试上传.我一次又一次地留下了同样的信息.
我提前感谢任何帮助和感谢.:)
我知道在SO中多次询问这个问题.我已检查下面贴出的答案,但对我不起作用:(
目前,我的应用程序的包名是" com.example.test ".我想将其更改为" com.example.test.test1 ".所以,我只是更改了清单文件中的包名并构建了应用程序.
现在,如果我单独运行两个应用程序,上面的包名称从清单文件更改为设备,它应该向我显示不同的应用程序.它显示错误为" 失败[INSTALL_FAILED_CONFLICTING_PROVIDER] "
由于软件包名称不同,它应该向我显示设备中的不同应用程序,而不是覆盖一个应用程序与其他应用程序.帮助我.
任何帮助将不胜感激.谢谢
我创建了一个包含com.example包的Android应用程序.******.样本.我需要将包名重构为org.newOrg.*******.sample.我已经尝试过重构方法.但它的父母"com"并没有变成"org".告诉我重构整个包名的任何解决方案.
提前致谢
首先,我感谢无数关于重构包名称的帖子。我研究了其中的许多答案,但没有一个答案对我有用......我想知道是否还有其他人遇到过这样的问题,或者是否有人知道如何解决这个问题。
这是我尝试过的,几乎所有这些线程以及此处未包含的其他线程中的所有不同变体答案:
当我创建我的项目时,我比现在更绿草,所以就以我的名字命名了公司。现在我即将启动我的应用程序,我意识到将我的名字作为包名称“公司”显然不像我的公司那样优雅和专业。所以我尝试重构包名称,如下所示:
当前 = 第一个最后一个.应用程序名称
重命名 = com.公司名称.应用程序名称
我遇到的问题:我尝试通过实际重构进行重构,而 IntelliJ 实际上并没有重构所有内容,我更改了清单和 gradle 中的包名称,但仍然不起作用。然后更糟糕的是,清理完所有错误后,项目目录中会随机弹出带有旧包名称的新包,我将其删除,然后又弹出更多包。我再次删除这些文件,最后只剩下新的包目录,但是,我清理并重建并且没有收到任何错误,但是当我尝试启动时,我得到: 在项目或库中找不到清单中引用的类,一些相关的内容到 dex...我追踪并修复这些错误,但一无所获。此时我的项目已经搞砸了,我考虑删除它并使用备份......相反,我使用历史记录来回到过去......
我还尝试创建一个新包,并将所有类和文件移动到新创建的包中,并删除旧的包,但这有它自己的蠕虫,看起来比上面的更混乱。
我很困惑为什么这不简单。任何帮助深表感谢!
编辑:可能的“绕行”
我正在查看这个文档:
https://developer.android.com/studio/build/application-id.html
我使用以下指令重命名应用程序 ID:
更改应用程序 ID(现在与包名称无关)可以非常轻松地一步完成。您不必接触 AndroidManifest。相反,请执行以下操作:右键单击项目的根文件夹。单击“打开模块设置”。转到“风味”选项卡。将 applicationID 更改为您想要的任何包名称。按确定。
正如在这里找到的:
所以我想知道,(新问题,仅相关问题)如果我像在这里那样重命名应用程序 ID 并且它仅在 gradle 构建文件中更改,这是否也适用于我的应用程序包名称以提交到应用程序商店作为共享应用程序?或者我是否需要完全重构包?
我计划通过smali更改包名(反向)
当我打开apktool.yml时,我看到了这个
forced-package-id:'127'
我试图改变它,但它崩溃我为什么要这样做?
我通过以下方式更改了应用程序的包名称:如何重命名android包名称?
但是,旧的软件包名称仍然显示在安装该应用程序的Android设备上:
Android->Data->"old package name"
Run Code Online (Sandbox Code Playgroud)