Android更改文件包名

Android更改文件包名


最重要的当然是事先协商好包名,确定好包名,避免更改
若要更改也记得去备份

这边是因为
上架那边 用了之前的APP的包名 现在是直接用这个新的更新那个APP
所以包名就要统一
而重新搞一个 也不行 因为已经有 相同的 软件名了
所以不能重建

进入正题:

1 改包名
设置(选择project、android 文件结构)右边的一个齿轮状
这里写图片描述
取消勾选
这样将多级包结构显示出来

若要修改二级包,则先对最外围的包名修改,再修改二级包名
在文件结构的对应包名下,
右键 refrector -> rename

若说某些文件是 readonly的
可以clean project 然后把APP 下的 build删除掉

2 修改 build.gradle下的applicationId

3 修改 manifest的package

4 还有manifest中的 category是不会自动更改的 要自己手动改!!!,可以去ctrl+F搜索原包名,然后全部修改为新的包名

5 当然 若引入了第三方平台的SDK 则记得改平台上的包名和更换key
这里演示几个我引入的平台

极光
是改不了包名的 只能创建新的应用(可以和之前的同名)生成新的APPKEY 然后再设置推送 用新的包名
还有manifest中的 category是不会自动更改的 要自己手动改

<meta-data
            android:name="JPUSH_APPKEY"
            android:value="6cb6b0e4abe8b7d5228eae79" /> <!-- </>值来自开发者平台取得的AppKey -->

改key
这时又会提示

Error:Execution failed for task ':app:processDebugManifest'.
> Manifest merger failed : Attribute meta-data#JPUSH_APPKEY@value value=(6cb6b0e4abe8b7d5228eae79) from AndroidManifest.xml:169:13-53
    is also present at [cn.jiguang.sdk:jpush:3.1.1] AndroidManifest.xml:129:13-44 value=(3b95fdaf1a171cd05b7a7c75).
    Suggestion: add 'tools:replace="android:value"' to <meta-data> element at AndroidManifest.xml:167:9-169:56 to override.

sdk的appkey和 manifest中的不一致
解决:build.gradle 中 也要改 JPUSH_APPKEY

若是找不到sdk的jpush.andoid.api 则去compile中 依赖最新的JPUSH版本


高德
新建应用
因为一个key只能对应一个包的


友盟
好像不用改
等第三方平台


6 混淆也要手动改 比如 Bean所在的目录 要改包名 也是可以ctrl+F查看原包名 然后更改为新包名

问题:Toast显示不了 也不能跳转 但是可以正确网络请求
解析:混淆出错

猜你喜欢

转载自blog.csdn.net/weixin_37577039/article/details/79938565