Android Studio下三种包名的修改方法

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

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

<?xml version="1.0" encoding="utf-8"?>
<selector xmlns:android="http://schemas.android.com/apk/res/android" xmlns:settings="http://schemas.android.com/apk/res/com.sty.original.packagename">
    <item settings:state_encrypted="true" android:drawable="@drawable/wifi_signal_lock" />
    <item settings:state_encrypted="false" android:drawable="@drawable/wifi_signal_open" />
</selector>

此特例 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,在此表示感谢!

  • 14
    点赞
  • 47
    收藏
    觉得还不错? 一键收藏
  • 3
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论 3
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值