您的位置:首页 > 移动开发 > Android开发

android studio修改工程包名

2016-07-20 16:10 225 查看
今天做项目时,要求更改程序的包名。于是经过查资料与摸索。

有了一点成果,写成博客,供自己参照,同时非常乐于与大家分享。

情况1:

直接修改包名的“尾巴”,也就是包名的最后一级。

比如:一个包名叫zzjr.com.third,被要求改成zzjr.com.they

首先看一下工程的目录结构:



首先修改 applicationId,applicationId是一个app的标识,如果其它的都改了,但applicationId没有更改,则android系统会认为这是同一个应用,于是用新的包名去安装应用时,只会把旧的app覆盖掉,并不会有两个app共存在android系统上。

将app级的build.gradle文件里的applicationId
改成 zzjr.com.they (见截图的光标处) ,然后会出现如下提示:



直接点击 Sync
now。等待其sync完毕并且build成功,我们完成了此次修改的第一步。

然后修改AndroidManifest.xml当中的包名:



修改完AndroidManifest.xml后,请点击工具栏上的sync
project with gradle files 这个图标,如下所示:



作用是同步一下工程。

然后在工程的包名上点击右键选择refactor---> rename (或者按shift + F6,以下为了省墨水,直接按快捷键)



然后选择Rename
package



然后我们会看到这里,IDE自动列出了third字样,也就是旧的包名的最后一级。



我们把它改成they. 然后点击refactor.   

然后再看工程的目录结构:



可以看到,此次修改好像没什么问题了。

我们运行一下程序,我在MainActivity.java里写了一个方法获取包名,然后用TextView给显示出来,代码比较简单,为了省空间,此处不再写了。

运行结果:



再回到模拟器的桌面上,看看是不是有两个app可以共存了(红色为新改的包名):



情况2:

修改包名的中间级,如:zzjr.com.they修改成zzjr.org.they

此时我们需要首先点击 工程结构旁边的小齿轮,将红色部分那一串字符前的对勾去掉。



然后注意一下目录结构的变化:



然后如情况1:先修改build.gradle里的applicationId改成zzjr.org.they,然后sync now一下,然后修改AndroidManifest里的package名为zzjr.org.they。再点击工具栏上的sync
project with gradle files 图标同步一下工程。操作跟情况1里一样,所以,这里就不再重新截图了。

然后我们选中工程目录里的com,然后按shift + F6.调出修改包名的对话框。选择Rename package, 将com改成org后,点击refactor就可以了。

再看一下改后的目录结构:



同样的,我们运行一下程序:



再看在同一桌面的共存情况:



Lovely!!!
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: