将Android App仓库安全推送至GitHub需规避哪些敏感文件?
不适合公开上传至GitHub的Android Studio项目文件清单
签名及敏感凭据类(泄露会导致应用被恶意篡改、服务被盗用)
- 签名密钥相关文件:包括后缀为
.jks、.keystore的签名密钥库文件,以及keystore.properties、signing.properties等存储密钥库密码、别名密码的配置文件 - 敏感业务配置文件:比如存放第三方服务API密钥、私有接口token的
secrets.xml、config.properties,以及使用Firebase等服务时生成的google-services.json(包含服务关联的敏感配置) - 系统级本地配置文件
local.properties:该文件默认存储你的SDK本地路径,如果你额外添加了私有密钥配置,也绝对不能公开上传
编译生成的产物文件(可本地重新编译生成,占用仓库体积且无存档必要)
- 所有层级的
build/目录:包含项目根目录的全局build目录、各个子模块(如app模块)下的build目录,均为编译过程生成的临时文件 - 打包输出文件:你生成的签名包
.aab、通用APK文件.apk,以及对应的混淆映射文件mapping.txt、符号导出文件等编译产物 - Gradle缓存目录
.gradle/:为本地构建缓存文件,可自动重新生成
IDE本地个性化配置文件(仅适配你本地的开发环境,不影响项目编译运行)
- Android Studio自动生成的
.idea/目录:存储你个人的IDE窗口布局、运行配置、代码检查规则等个性化设置 - 所有后缀为
.iml的模块配置文件:IDE自动生成的模块索引文件 - 系统临时文件:Mac系统生成的
.DS_Store、Windows系统生成的Thumbs.db等目录缓存文件
实用建议
你可以直接使用Android项目通用的.gitignore规则,把上述所有文件/目录加入过滤规则,Git提交时会自动忽略这些文件,避免误传。
内容的提问来源于stack exchange,提问作者Alcachofra
相关产品推荐
相关产品推荐

