关于包名(android studio)

开发中,我们初始创建项目时,随着项目的推进,包名不是最终我们想要的,这时,需要我们修改包名。

step1. 修改文件夹包名

当我们需要修改文件夹目录(包名)时,按shift+F6时,只能修改包名最后面的文件夹名称,如图


1

这时,需要打开左边导航的设置logo,将Compact Empty Middle Packages的勾取消,勾选Flattern Packages,如图


2

接下来的包名如图显示,就可以根据自己的需要修改文件夹包名了。


3


step2.修改AndroidManifest.xml的包名    

这个很简单,大家都会了。。

但是如果你只修改AndroiManifest.xml的package的话,你在程序中获取的包名可能跟你想要的不一致,这就需要第三步了。

step3.修改build.gradle的applicationId


4

只有修改了applicationId,你通过ActivityManager拿到的包名才是正确的。

测试代码如下:

/** * 获取当前应用程序的包名 * @paramcontext 上下文对象 * @return返回包名 */ 

 public static String getAppProcessName(Context context) {

        int pid = android.os.Process.myPid();

       ActivityManager manager = (ActivityManager) context.getSystemService(Context.ACTIVITY_SERVICE);

       List infos = manager.getRunningAppProcesses();

        for (ActivityManager.RunningAppProcessInfo info : infos) {

            if (info.pid == pid){

                return info.processName;   //返回包名   

          }

        return "";

    }

©著作权归作者所有,转载或内容合作请联系作者
平台声明:文章内容(如有图片或视频亦包括在内)由作者上传并发布,文章内容仅代表作者本人观点,简书系信息发布平台,仅提供信息存储服务。

推荐阅读更多精彩内容

  • Spring Cloud为开发人员提供了快速构建分布式系统中一些常见模式的工具(例如配置管理,服务发现,断路器,智...
    卡卡罗2017阅读 134,869评论 18 139
  • 前言 在Android开发中,消息推送功能的使用非常常见。 推送消息截图 为了降低开发成本,使用第三方推送是现今较...
    BillyLu1994阅读 4,485评论 0 2
  • 1:InputChannel提供函数创建底层的Pipe对象 2: 1)客户端需要新建窗口 2)new ViewRo...
    自由人是工程师阅读 5,373评论 0 18
  • 晨起还是跑步,5月的第一天用10公里打一个好基础,背对着太阳一路狂奔,阳光照在背上暖暖的,感觉真好! 下午去见了一...
    兮兮0225阅读 201评论 0 0
  • 兜兜转转时光逝, 那年那景心犹存。 偶然停步中视网, 初心不改与君随。
    落叶浅知秋阅读 212评论 0 0