开发过程中有时候会由于各种原因需要修改包名,网上有很多帖子,很多方法,不过他们都有一个共同的特点就是支持如下包名的修改:com.abc.def.cde修改成com.ccc.ddd.fff等等,他们修改的特点如下:
1.包名的长度不变。例如都是四级修改成四级,那么四级修改成三级怎么办?
2.都没有修改过顶级文件夹名com,如何修成cn?
如果你仅仅是想着修改一下包名,而不需要解决上面两个问题,那么可以参考如下博客:https://www.cnblogs.com/dubo-/p/7880637.html ,已经写的非常好了。下面解决上面两个问题:
1.修改包名长度变化,这个用官方的最简单方式解决最好:(原包名com.....)
productFlavors {
pro {
applicationId = "com.example.my.pkg.pro"
}
free {
applicationId = "com.example.my.pkg.free"
}
}
使用上面方法就可以了,长度随意制定。
2.修改顶级的包名
如果将上面的代码修改为cn.example.my.pkg,那么想必大家也能猜到,跑不起来了,因为找不到文件了,最简单的方法就是,到文件夹里,src/main/java/com....中的com文件名改成cn,然后将src/androidTest/java/com....文件夹中的com也改成cn,到此完成修改。虽然java文件中的包名全都报提示,但是没有任何影响。提示:将com改成con好像不行。