资源冲突

公司在不断推进组件化,多个Module开发,当然也存在许多需要注意的问题。是无法保证多个Module中的资源命名完全不同,就可能会出现资源引用问题,造成资源冲突。

解决方式

可以根据不同Module功能来设置资源前缀,从而保证资源命名的唯一性。

提问

团队开发,怎么保证每个人的资源命名都能遵守规则,设置前缀?
那么能不能动态检测资源命名是否设置前缀?

Gradle 配置

在android 中设置 resourcePrefix 属性,前缀字符串根据实际情况自定义。

android {compileSdkVersion 28resourcePrefix "app_"
}

注意:resourcePrefix 只能限定Xml资源,并不能限定图片资源,图片资源扔需要自身注意设置前缀名。

各种场景

  • values 文件夹下资源命名,以strings.xml为例

可以看到 name 有一个红色下划线,同时右侧有红色错误提示
注意:这里只是一个提示作用,并阻断编译和运行
报错提示如下:

修改为:添加Gradle设置的前缀,提示就会消失。

    <string name="app_like">我喜欢湖畔的风</string>
  • layout 文件

修改为:重命名添加Gradle设置的前缀,报红提示就会消失(app_activity_main)

  • drawable、anim、color等文件夹下的xml资源命名同layout,不做过多描述。

Android Gradle配置资源前缀相关推荐

  1. Android gradle配置签名文件

    项目场景: 使用命令行生成apk的时候自动签名 打包命令 Linux # 同时生成release和debug的apk ./gradlew clean build ./gradlew clean ass ...

  2. Android Gradle 配置阿里仓库镜像

    Android Gradle 配置阿里仓库镜像 阿里云镜像官网地址:https://developer.aliyun.com/mvn/guide 配置如下: // Top-level build fi ...

  3. android gradle 设置,android gradle配置指南

    Gradle简介 Gradle 是一个基于Ant和Maven概念的项目自动化建构工具.它使用一种基于Groovy的特定领域语言(DSL)来声明项目设置,这比我们的ANT使用XML构建配置要灵活的多.在 ...

  4. Android Gradle 配置Java src目录、Res 目录

    工程目录: 我们看到,在Java目录里面,每一个目录下都是一个模块,每个模块都有自己的res目录. Gradle 配置如下: def srcDirs = ['application','applica ...

  5. 【错误记录】Android Gradle 配置报错 ( gradle.properties 配置到 BuildConfig 中需要注意类型转换 | 位置: 类 BuildConfig )

    文章目录 一.报错信息 二.解决方案 一.报错信息 报错信息 : D:\002_Project\002_Android_Learn\ClassLoader_Demo\app\build\generat ...

  6. 【错误记录】Android Studio 配置 AspectJ 报错 ( all buildscript {} blocks must appear before any plugins {} )

    文章目录 一.报错信息 二.解决方案 一.报错信息 在 Android Studio 配置 AspectJ 报错 : Build file 'D:\002_Project\002_Android_Le ...

  7. Android渠道包自动发布市场,Android Gradle实现打包指定渠道后自动上传到fir

    fir分三个主要步骤1.获取fir上传凭证 2.上传APK+APP logo图标 3.获取最新的下载地址供别人下载 注:python使用的是requests网络请求库 1.获取fir上传凭证 imag ...

  8. Android 开发使用 Gradle 配置构建库模块的工作方式

    Android 开发过程中,我们不可避免地需要引入其他人的工作成果.减少重复"造轮子"的时间,投入到更有意义的核心任务当中. Android 库模块在结构上与 Android 应用 ...

  9. Android Studio下项目构建的Gradle配置及打包应用变体

    Gradle简介   Gradle是一个自动化构建工具,采用Groovy的Domain Specific Language(领域特定语言)来描述和控制构建逻辑.具有语法简洁.可读性强.配置灵活等特点. ...

  10. Android Studio配置Gradle(包括signingConfigs、buildTypes和productFlavors等)

    笔者目前使用的Gradle配置描述如下: 配置划分: defaultConfig 默认配置 signingConfigs 签名信息配置 buildTypes productFlavors 打包apk重 ...

最新文章

  1. Session 详解
  2. 基于mysql主从同步的proxy读写分离
  3. 【转】Oracle执行计划解释
  4. NYOJ-42 一笔画问题
  5. LeetCode 954. 二倍数对数组(map计数)
  6. 学习Spring Boot:(四)应用日志
  7. 不同维度的矩阵相乘的时间复杂度
  8. 补习系列(12)-springboot 与邮件发送
  9. StretchBlt()函数使用
  10. ASP.net+MVC--2
  11. 12.5 防止死锁的加锁机制
  12. Drop user 报ORA-00600 [KTSSDRP1]
  13. java中的BigDecimal类型
  14. QQ浏览器9 主页无法修改成功的解决办法
  15. 未能加载文件或程序集“Newtonsoft.Json, Version=4.5.0.0
  16. 微信公众号网页授权登陆
  17. ISO认证包括哪些?
  18. css 长单词不换行溢出容器的解决方法 word-wrap与word-break
  19. 如何在PCB中放置禁止触摸标志
  20. Windows7 x64 瑞昱Realtek高清音频管理器均衡器用户定义文件 保存位置

热门文章

  1. Java从入门到入土
  2. linux系统镜像怎么安装,linux系统安装,怎样安装linux系统制作方法
  3. MFC开发 常见控件库
  4. 计算机网络(自顶向下方法)学习笔记
  5. MAC python版本选择实现版本切换
  6. linux iconv 文件名,Linux_Linux系统下转换文件编码的方法小结,一、利用iconv命令进行文件内 - phpStudy...
  7. c语言程序设计第五版李丽娟_c语言程序设计第五版习题答案解析
  8. 固定资产盘点管理系统的流程
  9. 华为hg255d路由器使用博爱网络开发的操作系统进行中继设置
  10. 用Python写的WiFi暴力破解工具(字典),已封装!!