Files
WinBoLL/gpsrelaysentinel
LaizyBoy 2c4fc218b0 fix(gpsrelaysentinel): 修复MainActivity访问MainService常量的权限问题
- 将PREF_NAME和KEY_SERVICE_ENABLED字段从private改为包内可见
- 允许MainActivity访问SP相关常量以设置服务状态标记
- 修复编译错误:KEY_SERVICE_ENABLED has private access
2026-05-07 03:05:47 +08:00
..

GPSRelaySentinel

介绍

GPSRelaySentinel 是一款基于安卓平台的综合工具应用,集成 Termux 终端模拟器、二维码扫描、网络请求等功能。

技术栈

  • 编程语言: Java 7源码
  • 编译环境: Java 11Gradle 编译)
  • Gradle 插件: 7.2.1
  • 安卓 API:
    • 最低支持: API 26 (Android 8.0)
    • 目标版本: API 30 (Android 11)
    • 编译版本: API 30

软件架构

适配以下安卓开发环境的 Gradle 编译结构:

  • AIDE Pro
  • AndroidIDE

模块说明

本项目采用多模块结构:

  • gpsrelaysentinel - 主应用模块
  • libappbase - 基础库模块(提供 OkHttp、Gson、JSch 等基础能力)
  • libaes - AES 加密库模块(提供权限请求、二维码、拼音搜索等扩展功能)

核心依赖库

网络相关

  • OkHttp 4.4.1 / 3.14.9 - HTTP 客户端
  • Gson 2.10.1 - JSON 解析

终端模拟

  • Termux: terminal-emulator 0.118.0
  • Termux: terminal-view 0.118.0
  • Termux: termux-shared 0.118.0

功能组件

  • ZXing 3.4.1 - 二维码生成与扫描
  • JSch 0.1.55 - SSH/SFTP 客户端
  • Jsoup 1.13.1 - HTML 解析
  • FastJSON 1.2.76 - JSON 处理

UI 组件

  • Material Design 1.4.0
  • AndroidX 组件库
  • PullRefreshLayout 1.2.0 - 下拉刷新

Gradle 编译说明

调试版编译

gradle assembleDebug

阶段版编译(发布)

bash .winboll/bashPublishAPKAddTag.sh gpsrelaysentinel

版本管理

版本信息由 gpsrelaysentinel/build.properties 管理:

  • baseVersion - 基础版本号
  • stageCount - 阶段构建次数
  • publishVersion - 发布版本号
  • buildCount - 构建次数

使用说明

Termux 应用配置

  1. 安装 Termux 应用(包名: com.termux
  2. 配置允许外部应用访问:
    echo "allow-external-apps = true" > ~/.termux/termux.properties
    

权限说明

应用需要以下权限:

  • 网络访问权限
  • 存储读写权限
  • 相机权限(二维码扫描)
  • 位置权限GPS 相关功能)

项目结构

gpsrelaysentinel/
├── src/main/
│   ├── java/          # Java 源码Java 7 语法)
│   ├── res/           # 资源文件
│   ├── libs/          # 本地库文件(含 JNI 库)
│   └── AndroidManifest.xml
├── build.gradle       # 模块构建配置
└── build.properties   # 版本配置文件

参与贡献

  1. Fork 本仓库
  2. 新建功能分支 (git checkout -b feat_xxx)
  3. 提交代码(作者: ZhanGSKen zhangsken@188.com
  4. 新建 Pull Request

许可证

[待添加许可证信息]

参考文档