git管理的Android项目忽略密码或token的方法

在照着Android教材《第一行代码 第三版》写天气预报app项目的时候,我发现如果把开发者token写在代码里面,用git管理的时候就会把token暴露出来,即使后面删掉,也会留在commit历史中。而.gitignore一般是忽略整个文件,没办法忽略单独一行。

所以可以将密码或者开发者token单独放在一个文件中,用.gitignore忽略它,并且在使用的时候读取其中的token。

解决方案

  1. app/src/main/res/values目录下新建一个资源文件tokens.xml,内容如下:

    1
    2
    3
    4
    <?xml version="1.0" encoding="utf-8"?>
    <resources>
    <string name="token">TAkhjf8d1nlSlspN(这里改成你的token)</string>
    </resources>
  2. 在使用的时候可以用R.string.token来直接访问,也可以将它存在一个全局可得的地方。

  3. 把上面那个文件加入.gitignore

注意

创建好之后不要让你的IDE自动把这个文件git add了,否则.gitignore不起作用,如果你已经git add了,就使用下面这条命令恢复。

1
$git reset HEAD app/src/main/res/values/tokens.xml

git管理的Android项目忽略密码或token的方法

https://yxchangingself.xyz/posts/android-project-gitignore-token/

作者

憧憬少

发布于

2021-03-06

更新于

2021-03-06

许可协议