Android下有三个地方涉及到包名:工程包名、AndroidMainfest文件中包名以及gradle文件中的applicationId所指的包名。需要注意的是工程包名可以和另外两种包名不同。

    Eclipse时代AndroidManifest文件中的包名兼具了App的唯一标识符和App资源(R文件)引用包名的双重功能;Android Studio时代做到了这两个功能的分离:即AndroidManifest文件中包名起到App资源(R文件)引用包名的作用,applicationId所指的包名起到App的唯一标识符的作用,此时复制项目仅需要修改applicationId所指的包名即可,但是经本人测试有一种特例如下:

<?xml version="1.0" encoding="utf-8"?>        

此特例 xmln:settings中的尾缀(com.sty.original.packagename)若不修改为修改后的applicationId(com.sty.changed. packagename),则编译会报错,此种情况不知何故,若有大神知道请不吝赐教。

    言归正传,切入主题,下面讨论三种包名的修改方法:

    1、修改工程包名 

        a. 修改最外层包名

            修改方法如图:


        b. 修改中间层包名

            首先点击下图中的设置按钮,点击去掉 Hide empty middle packages中的对勾(合并空包时点击 compact empty middle packages),然后按照a的步骤找到要修改的中间包名操作即可。


    2、AndroidMainfest文件中包名

    进入 Androidmanifest.xml 文件,找到 package 名称,选中需要修改的部分。
    比如原包名为 com.sty.android, 如果需要修改中间的 sty ,那么我们就选中 sty ,
    依次进行 右键 - > Refactor -> Rename , (Mac 快捷键为 fn + shift+F6)
    然后选择 Rename package , 输入要修改目标的名称 ,直接点击 Refactor , 左下方继续点击 Do Refactor , 等待修改成功~!

    3、修改applicationId所指的包名

        直接修改即可。

本文参考:http://blog.csdn.net/lv_fq/article/details/51874181,在此表示感谢!

更多相关文章

  1. Android(安卓)学习笔记之数据存储SharePreferenced+File
  2. Android(安卓)Codec 集成和 video Overlay
  3. android 解决 Could not find class 'XXX', referenced from met
  4. android编译系统学习
  5. Android将Library上传到jcenter超简单完整图文步骤以及遇到的各
  6. 【Android(安卓)Training - 03】使用Fragments建立动态的UI [ Le
  7. Android面试系列文章2018之Android(安卓)Studio目录结构篇
  8. android 音乐播放器 本地音乐文件
  9. Android系统启动顺序(按下power键后所做的的工作)

随机推荐

  1. android 五种存储
  2. RelativeLayout相对布局方法总结
  3. Android中Log机制详解
  4. 代码:android崩溃日志收集和处理
  5. Android(安卓)可响应drawable点击事件的T
  6. Android(安卓)自定义标题栏(title栏)
  7. android activity 四大启动模式及使用场
  8. Android全屏时软键盘遮住输入框修改布局
  9. ANDROID AIDL
  10. Android关于 'roundIcon' in package '的