项目配置文件 config.json——自定义 APK 元数据与构建参数
默认模板
{
"name": "我的签到助手",
"packageName": "com.example.signin",
"versionCode": 1,
"versionName": "1.0.0",
"main": "main.js",
"icon": "res/icon.png",
"permissions": [
"ACCESSIBILITY",
"SYSTEM_ALERT_WINDOW",
"FOREGROUND_SERVICE"
]
}
字段详解
| 字段 | 必填 | 说明 |
|---|---|---|
| name | ✅ | 应用名,桌面显示 |
| packageName | ✅ | Java 风格包名,全局唯一(如 com.github.yourname.yourapp) |
| versionCode | ✅ | 整数版本号,递增用于更新检测 |
| versionName | ✅ | 字符串版本名,用户可见 |
| main | ✅ | 入口脚本(相对项目根目录) |
| icon | 图标文件路径 | |
| permissions | 需要的运行时权限 | |
| launchConfig | 启动配置(是否自动启动脚本等) |
常用权限速查
| 权限名 | 用途 |
|---|---|
| ACCESSIBILITY | 无障碍服务(必须) |
| SYSTEM_ALERT_WINDOW | 悬浮窗(必须) |
| FOREGROUND_SERVICE | 前台服务 |
| WRITE_EXTERNAL_STORAGE | 写外部存储 |
| READ_EXTERNAL_STORAGE | 读外部存储 |
| CAMERA | 相机 |
| INTERNET | 网络请求 |
| RECEIVE_BOOT_COMPLETED | 开机自启 |
| RECORD_AUDIO | 录音 |
| ACCESS_FINE_LOCATION | 定位 |
| ACCESS_COARSE_LOCATION | 大致定位 |
动态权限(Android 6.0+)
即使在 config.json 里声明了,部分权限运行时还需要用户手动授予:
// 脚本里检查和请求权限
if (!requestPermissions([
"android.permission.WRITE_EXTERNAL_STORAGE",
"android.permission.READ_EXTERNAL_STORAGE"
])) {
toast("未授予存储权限");
exit();
}
Pro 版专属配置
Auto.js Pro 的 config.json 还支持:
{
"encrypt": true,
"buildNodeModule": ["axios", "cheerio"],
"minify": true
}
encrypt:加密脚本源码buildNodeModule:打包时把指定的 npm 模块构建进去minify:打包前压缩脚本代码