如何在Eclipse中更改Android项目的包名称?
我有一个在Eclipse中创build的Android项目。 我想修改项目的包名和应用程序。 我如何在Eclipse中做到这一点?
像往常一样,通过按下软件包名称上的F2
,可以重新命名或更改软件包名称,也可以通过右键单击然后selectRename
选项,更改或重命名软件包名称。
当您按下F2键时,会显示如下对话框:
在这个对话框中,不要忘记勾选“更新引用”checkbox,因为通过对该checkbox进行“检查”,它将更改项目其他组件引用的所有程序包引用。
这是Eclipse Android工具中的一个错误 。
修复:右键单击项目,进入Android工具 – >重命名应用程序包。
如果更新正确,也检查AndroidManifest.xml
。 在我的情况下,它没有,这应该解决这个问题。
这些都没有为我工作,他们都引入了错误。
以下为我工作:
- 右键单击该项目,然后selectAndroid工具>>重命名应用程序包。
- input新的包名称
- 接受所有想做的自动更改
- 说是更新启动configuration
一个非常重要的通知:
切勿使用直接的包名来传递包含包名的string值。 使用方法getPackageName()。 这将使重命名dynamic。 做任何达到方法getPackageName()。
在Eclipse Juno中,正确的重命名方法是:
- 去编辑清单。
- 清除清单中的每个旧包名称。
- 放在清单内的每个位置,而不是旧的软件包名称,新的软件包名称。 你可能有需要直接包名引用的类(活动)。
- 保存清单。
- 然后右键单击项目中的包名称。
- select“重构”。
- select“重命名”。
- input新的软件包名称。
- select“更新参考”。
- 按确定,你就完成了,还要小心,应该做些什么来取代新的名字。
- 不要忘记用新的包名称更新布局XML文件。 你可能有一个自定义的视图。 寻找他们。
Right click on your project name and select Android Tools , then click Rename Application Package, then change your project name click OK and click Finish.
只需右键单击项目名称并selectAndroid工具 ,然后单击重命名应用程序包名称并重命名它。 这只适用于Android项目。
要在Android中更改应用程序名称,请转至res/values/strings.xml
并将app_name
更改为所需内容。
按F2然后重新命名(或右键单击项目并selectRename
)。 无论在你的项目中声明哪个包,它都会改变。 它会自动重新命名。
转到Android项目的Src文件夹,然后打开Java文件。
将包OldName.android.widget
更改为newName.android.widget
。
它给你这样的错误
声明的包“newName.android.widget”与预期的包“OLDName.android.widget”不匹配。
要解决这个问题,select移动filename.Java到Newname.android.widget并删除旧的包文件夹。
下一步:转到AndroidManifest.xml
并将package="OldName.android.widget"
更改为package="newName.android.widget"
。
这对我来说是完美的(简单的文本replace):
转到search – >文件
包含文本:旧的pakage名称
文件名称模式:*
范围:工作区
按“ replace”
replace:新的软件包名称
现在你的项目充满了错误。
在项目浏览器中点击你的包,然后按F2 (重命名)。
填写新的软件包名称并检查所有复选标记。
按预览 。
点击OK 。
等待Eclipse刷新。 如果仍有错误,请清理工作区中的所有项目:
项目 – > 清洁
好的,这是我必须做的:
问题:我有一个基础项目,我想用它作为与基础项目位于同一工作区的其他几个项目的起点。 基地项目已经在我自己的当地回购中受到GiT控制。 现在是复制基础项目“MyBaseApp”成为“MyKillerApp”的起点的时候了。
解:
- 我只是将整个MyBaseApp目录复制为MyKillerApp,并且有两个并排的目录。
- 我编辑文件MyKillerApp – >。项目,并将名称从MyBaseApp更改为MyKillerApp。 (这是步骤3的工作所必需的。)
- 我打开了Eclipse,做了一个File-> Import MyKillerApp(我省略了一些关于如何使用Import菜单的细节,但是点击左右,你会发现它。)
- 我右键单击包pipe理器中的MyKillerApp,然后selectAndroid Tools->将应用程序包重命名为MyKillerApp。 我检查了所有的重命名选项,除了关于非java文件的最后一个checkbox。
- 我在软件包pipe理器中突出显示了src-> com.myname.MyBaseApp,并且对MyKillerApp做了一个F2。 然后我做了几个类,包括我的开放活动类的东西,进入你的AndroidManifest.xml文件。
- 我不得不更新一些函数调用名字,但是编译器很方便地指出了这些名字。
因此,我从一个基地项目中得到了一个新的项目,没有从基础项目中剩下的命名,而是在它自己的本地GiT回购中。
以下在eclipse中为我工作:
转到AndroidManifest,search并用新的旧包名replace,并在保存时更新所有内容。 转到您的根项目包,然后按F2,写入新名称,并检查更新引用和重命名子包checkbox。 在这之后,在项目中一切都是红的(抱怨每个java文件都导入了R),因为它并没有改变我在xmls中的自定义视图的closures标签。 手动改变这些之后,一切都恢复正常了。 这就对了。
直到我结合了这篇文章中提到的两个答案之后,这些工作对我来说都没有用。
第1步:右键单击项目 – >selectAndroid工具 – >重命名应用程序包。 (这将改变gen文件夹和AndroidManifest中的所有文件,但不会更改src文件夹中的包名,所以我按照步骤2)
步骤2:在src文件夹内右键单击您的软件包名称 – >重构 – >重命名 – >input您在步骤1中input的新名称。
只要确保检查AndroidManifest是否还有旧的软件包名称,并用新的(在我的情况下,在“使用权限”标签内)replace。
然后closuresEclipse并重新打开它。 从您的设备卸载应用程序,并再次安装,一切都应该工作正常。
希望这有助于节省您的时间。
重命名应用程序 – 完整指南
**A) for changing Just the application name (App name which is displayed below icon) in the Manifest.xml file, in <application tag, android:label="YourAppName" then do the same in All the <activity Tags B) For changing EVERYTHING (folder names, Package names, Refrences,app name, etc.) *1) Renaming package names in gen folder and manifest.xml Right Click on Your project Android tools- Rename Application Package *2) Renaming package names in src folder Expand src folder, Click on package (Single click) Press Alt+Shift+R Check Update references and Rename subpackages 3) Renaming the app's main Folder (Optional) click on the application's folder (Single click) then Press Alt+Shift+R 4) Renaming application name- Refer "A)"**
只要得到远经理 ,search旧名称。 然后手动(在远程pipe理器)到处replace。 可悲的是,这是在100%的可能情况下唯一的方法。
我也有很大的麻烦。
我通过重构对项目和包进行了重命名,但它使应用程序无用。 我把它重新命名为原来的,并使用Android工具重命名包,这工作,但我的包文件夹和类有旧名称。
然后我重构了包文件夹。 现在应用程序不会运行。 我的清单是一团糟。 例如, com.ronguilmet.app/com.ronguilmet.com.class
将我的启动器名称com.ronguilmet.app/com.ronguilmet.com.class
。 我修好了,我不得不手动编辑所有的活动。