来电信息 开发者文档
注意此文档仅供开发者使用,用于编译源码等。如果是初学者,对于文档中不明白的内容或遇到错误,请务必优先 Google 搜索。
1. 下载最新源码
git clone https://github.com/xdtianyu/CallerInfo.git
cd CallerInfo/
git submodule update --init --recursive
2. 配置编译环境
参考 .travis/env.sh
文件,首先解码内置的用于公开使用的 release.jsk
文件
openssl aes-256-cbc -K 12CF1B5E0D192628AA922230549EEDFD889E6CF7463933C6DABD9A1300FCA23D -iv 66813CF28D04CD129D57436B78DECBA4 -in public.tar.enc -out public.tar -d
tar xvf public.tar
导出环境变量,注意修改 ANDROID_HOME
为你的 Android SDK
目录
export ANDROID_HOME=/home/ty/Android/Sdk
TEXT="I_AM_PUBLIC_AND_NOT_USED_FOR_RELEASE"
export KEYSTORE_PASSWORD="$TEXT"
export ALIAS_PASSWORD="$TEXT"
export ALIAS="$TEXT"
3. 运行编译
./gradlew assembleDebug
或使用如下命令生成 release
版本
./gradlew assembleRelease
编译成功后,最终会在 CallerInfo/app/build/outputs/apk
目录生成 CallerInfo-v2.1.5-debug.apk
及 CallerInfo-v2.1.5-release.apk
文件。注意版本号可能会增加。
4. 环境变量
参考 .travis/env.sh
文件, 上文用到的 KEYSTORE_PASSWORD
ALIAS_PASSWORD
ALIAS
都是 public.jks
文件相关验证,GITHUB_TOKEN
用于作者 GitHub Release
自动部署。
API_KEY
是百度号码服务 API
密钥,由于服务终止,已停止使用。JUHE_API_KEY
是聚合数据(360) 数据源 API
密钥。
LEANCLOUD_APP_ID
和 LEANCLOUD_APP_KEY
是 LeanCloud
的 API
凭证,用于接收用户上报的号码数据。
5. 版本配置说明
版本配置在 gradle.properties
文件中。
6. 部分文件说明
manifest.gradle
是用于自动写入环境变量到 manifest
的配置文件,可以将环境变量或 manifest.properties
文件内的配置导入。
signing.gradle
类似 manifest.gradle
文件,用于导入环境变量或 signing.properties
文件内容,用于编译时证书验证配置的自动化。
7. Android Studio 说明
Android Studio
导入项目后,需要修改上文提到的 manifest.properties
signing.properties
文件来导入环境变量。