android 修改项目包名详解
Posted
tags:
篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了android 修改项目包名详解相关的知识,希望对你有一定的参考价值。
参考技术A 对于修改包名,一般有两种情况:1)一个是包名目录结构不变,比如说,将包名“com.zlc.xuexi”,改成"com.xuexi.zlc"
2)另一个是包名目录结构改变了,目录级数改变了,比如说,从"com.xuexi.zlc",改变成"com.xuexi.zlc.zlc",这里包名的目录结构就从3级改变成为了4级
下面分别来讲解一下这两种情况
针对第一种情况,其实特别好改,步骤截图如下:
切换的Progject结构,查看java包名结构,一般是这样的
点击show options menu按钮
去掉勾上的 Hide Empty Middle Packages 和 Show Members
java包的展示目录结构就改变了
对于包名目录结构不改变的。就分别改各个层次对应的包名或者直接按快捷键 Shift + F6
同理,假如是3级目录结构包名,每一个都要改变的话,就按照上图的做法一个个更改
接着,去改app模块下的build.gradle文件
然后去修改androidManifest.xml文件
最后,点击sync同步一下就大功告成了
针对第二种情况,步骤截图如下:
点击show options menu按钮
去掉勾上的 Hide Empty Middle Packages 和 Show Members
java包的展示目录结构就改变了
对于包名目录结构不改变的。就分别改各个层次对应的包名或者直接按快捷键 Shift + F6
假如是3级目录结构包名,改成4级包名目录机构,首先要新建包然后去移动其他的目录包
新建好多一级的目录包之后,需要移动启动文件夹到该目录包下
接着,去改app模块下的build.gradle文件
然后去修改AndroidManifest.xml文件
最后,点击sync同步一下就大功告成了
如果项目上用了DataBinding框架,特别是第二种情况,恭喜你,你肯能有得忙了。项目上有DataBinding框架的时候,当你按照上面的步骤修改了包名,就会报一个这样的错
遇到这个情况,肯定是修改包名或者移动了包名结构,但是布局文件或者java文件的的dataBinding的引用没有改变
这里我没找到特别快速修改的方法,放在我是一个个去检查java文件的导包和xml布局文件的应用,看对不对,不对就要手动改过来了,呜呜。。。。。。
如果,确定全部改完无误之后,重新Rebuild Project
万一,还是有刚才那个错误的话,记得再回头检查一遍java文件和布局文件,看看各自的引用对不对,如果全部都改对之后,还是有错误的话,哪就静下心来错误提示
如果不是DataBinding引起的话,一般都会找到比较明显的提示
==========我是有分割线的:2019.04.15更新=================================
如果真不好遇到第二种情况的话,面对databanding这种框架,那就只能使用全局替换的方法了
ctrl + Shift + R
Android项目,在manifest中修改包名之后,如何批量更改导入R文件
在AndroidManifest中修改了package之后,所有类都找不到R文件,解决方案就是将src目录下的包也改一下包名即可递归修改了。1. Ctrl+h >> file serach >> 输入原包名(类型为*.java)>>Replace>>找到后输入要替换的包名 然后自己选择是全部替换还是部分替换.
2.直接修改出错的类所在的包的名称再改回来,这样就可以统一修改所有出错的类的package包名称。 参考技术A 以ADT为例,将Project->Build Automatically关掉————>用右键菜单的Refactor->rename将get/应用包名对应的包(里面只有R.java或还有个不知道干啥的BuildConfig.java)修改为你想要的包名,这样就会修改其他类中的import 的R的全类名——>修改manifest中的包名,打开Project->Build Automatically,clean一下项目,妥了 参考技术B manifest中的包名得对应java文件的报名 全改了重新编译 R文件就自动更新了 参考技术C clean下就可以了
以上是关于android 修改项目包名详解的主要内容,如果未能解决你的问题,请参考以下文章