Compare commits

..

11 Commits

4 changed files with 110 additions and 181 deletions

279
README.md
View File

@@ -1,175 +1,104 @@
## OriginMaster WinBoLL 源生态计划项目说明书
【OriginMaster】WinBoLL 源生态计划。正如话,我需要一个 Point, 去撬动成个地球。
WinBoLL系列项目各个项目源码合并推送方向 一、项目概述
WinBoLL=>APPBase=>OriginMaster
WinBoLL=>AES=>OriginMaster 1. 核心定位
WinBoLL=>PowerBell=>OriginMaster
WinBoLL=>Positions=>OriginMaster 【OriginMaster】WinBoLL 源生态计划,旨在通过核心项目 WinBoLL 联动系列开发库,构建手机端 Android 项目开发与多端编译同步的完整生态,实现手机与电脑的源码同步开发。
仓库规划概述:
☆ WinBoLL,APPBase,AES,PowerBell与Positions都是开发库。 2. 仓库架构
☆ OriginMaster 是分支汇总存档库。
☆ OriginMaster 不适宜作为开发库克隆使用,不是应用开发基础库,而是汇总资料库。 仓库类型 包含仓库 功能说明
WinBoLL 库可以作为应用开发的基础继承模板 开发库 WinBoLL、APPBase、AES、PowerBell、Positions 核心开发依赖库,其中 WinBoLL 可作为应用开发的基础继承模板
分支汇总存档库 OriginMaster 仅用于汇总各开发库分支,不适宜作为开发库克隆使用,非应用开发基础库
########
## ☁ ☁ ☁ WinBoLL APP ☁ ☁ ☁ ☁ ☁ ☁ ☁ ☁ ☁ ☁ ☁ ☁ ☁ ☁ ☁ ☁ ☁ ☁ ☁ 3. 源码推送路径
# ☁ ☁ WinBoLL Studio Android 应用开源项目。☁ ☁ ☁ ☁ ☁ ☁ ☁ ☁ ☁ ☁ ☁ ☁ ☁
# ☁ ☁ ☁ WinBoLL 网站地址 https://www.winboll.cc/ ☁ ☁ ☁ ☁ ☁ ☁ ☁ ☁ - WinBoLL → APPBase → OriginMaster
# ☁ ☁ ☁ WinBoLL 源码地址 <https://gitea.winboll.cc/Studio/WinBoLL.git> ☁ ☁ ☁ ☁ ☁ ☁ ☁ - WinBoLL → AES → OriginMaster
# ☁ ☁ ☁ GitHub 源码地址 <https://github.com/ZhanGSKen/WinBoLL.git> ☁ ☁ ☁ ☁ ☁ ☁ ☁ ☁ - WinBoLL → PowerBell → OriginMaster
# ☁ ☁ ☁ 码云 源码地址 <https://gitee.com/zhangsken/winboll.git> ☁ ☁ ☁ ☁ ☁ ☁ ☁ ☁ - WinBoLL → Positions → OriginMaster
# ☁ ☁ ☁ 在 jitpack.io 托管的 APPBase 类库源码<https://github.com/ZhanGSKen/APPBase.git> ☁ ☁ ☁ ☁
# ☁ ☁ ☁ 在 jitpack.io 托管的 AES 类库源码<https://github.com/ZhanGSKen/AES.git> ☁ ☁ ☁ ☁ 二、WinBoLL APP 核心信息
## WinBoLL 提问
同样是 /sdcard 目录,在开发 Android 应用时, 1. 项目简介
能否实现手机编译与电脑编译的源码同步。
☁因而 WinBoLL 项目组诞生了 WinBoLL Studio Android 应用开源项目,专注于手机端 Android 开发与多端编译同步
## WinBoLL 项目组研发计划 2. 官方资源
致力于把 WinBoLL-APP 应用在手机端 Android 项目开发。
也在探索 https://gitea.winboll.cc/<WinBoLL 项目组>/APP.git 应用于 WinBoLL-APP APK 分发。 - 官方网站:https://www.winboll.cc/
更想进阶 https://github.com/<WinBoLL 项目组>/APP.git 应用于 WinBoLL-APP Beta APK 分发。 - 源码地址:
- Giteahttps://gitea.winboll.cc/Studio/WinBoLL.git
## WinBoLL-APP 汗下... - GitHubhttps://github.com/ZhanGSKen/WinBoLL.git
#### ☁应用何置如此呢。且观用户云云。 - 码云https://gitee.com/zhangsken/winboll.git
- 托管类库源码:
#### ☁ 正当下 ☁ ### - APPBasejitpack.iohttps://github.com/ZhanGSKen/APPBase.git
#### ☁ 且容傻家叙说 ☁ WinBoLL-APP 应用场景 - AESjitpack.iohttps://github.com/ZhanGSKen/AES.git
### ☁ WinBoLL 设备资源概述
#### ☁ 1. Raid Disk. 三、通用特征文件夹前置(/sdcard
概述:这是一个矩阵存储类设备。
优点:该设备具有数据容错存储功能, - Linux 系统文件夹直接使用  /sdcard 
数据存储具有特长持久性 - 手机 SD 卡存储( /storage/emulated/0 挂载的别名也可为  /sdcard 
缺点:设备使用能源消耗比较高,
设备存取速度一般。 四、前置条件
#### ☁ 2. Data Disk. 1. WinBoLL-APP 配置
概述:这是一个普通硬盘存储设备
优点:该设备独立于操作系统, - APK 编译输出目录: /sdcard/WinBoLLStudio/APKs/ ,以及  /sdcard/AppProjects/ (命名为  app.apk 
数据持久性一般, - 签名与命名空间:支持应用签名验证定制化,与衍生 APP 共享  cc.winboll.studio  命名空间
存取能源消耗小于 Raid Disk。
缺点:数据存储速度一般,存储能源消耗一般。 五、核心需求规划
#### ☁ 3. SSD Disk. 1. 主机端需求
概述:这是一个 SSD 硬盘存储设备。
优点:存取速度快于 Data Disk 与 Raid Disk - 支持  winboll.cc  域名的用户注册登录服务
存取能源消耗小于 Data Disk 与 Raid Disk。 - 支持  https://console.winboll.cc/api  访问
缺点:数据持久性一般,
设备位于操作系统内部文件系统。 2. APP 端需求
数据持久性与操作系统挂钩。
- 实现手机端 Android 应用开发与管理功能
#### ☁ 4. WinBoLL 用户资源概述。
1> /home/<用户名> 位于 WinBoLL 操作系统目录下。 六、编译与使用指南
2> /rdisk/<用户名> 挂载用户 Raid Disk.
3> /data/<用户名> 挂载用户 Data Disk. 1. 项目初始化(必须)
4> /sdcard/<用户名> 挂载用户 SSD Disk.
1. 复制  settings.gradle-demo  settings.gradle 取消对应项目模块注释
#### ☁ 5. WinBoLL-APP 用户资源概述。 2. 复制  gradle.properties-androidx-demo  gradle.properties-android-demo  gradle.properties 
1> /sdcard 挂载用户手机 SD 存储/storage/emulated/0 3. (可选)复制  local.properties-demo  local.properties 配置 Android SDK 目录
4. 签名设置:
### ☁ 稍稍歇 ☁ ### - 调试编译:进入 GenKeyStore 目录执行  bash gen_debug_keystore.sh 
### ☁ 急急停 ☁ WinBoLL 应用前置条件 - 非必须clone keystore 模块,拷贝  appkey.jks  appkey.keystore  到项目根目录
☁ WinBoLL 主机建立 1Panel MySQL 应用。
☁ WinBoLL 主机建立 1Panel Gitea 应用。 2. 编译命令
☁ WinBoLL 主机设置 WinBoLL 应用为非登录状态。
☁ WinBoLL 主机建立 WinBoLL 账户与 WinBoLL 用户组。 1类库型项目
☁ WinBoLL 账户 User ID 为: J。
☁ WinBoLL 用户组 Group ID 为: Studio。 1. 修改测试项目  build.properties 设置  libraryProject=<类库项目模块名> 
☁ WinBoLL 主机 WinBoLL 1Panel Gitea 建立 WinBoLL 工作组。 2. 编译测试项目 bash .winboll/bashPublishAPKAddTag.sh <应用项目模块名> 
☁ WinBoLL 主机 WinBoLL 1Panel Gitea 用户项目 APK 编译输出目录为 /sdcard/WinBoLLStudio/<用户名>/APKs/ 3. 编译类库项目 bash .winboll/bashPublishLIBAddTag.sh <类库项目模块名> (发布至 WinBoLL Nexus Maven 库)
☁ WinBoLL 项目配置文件示例为 "<WinBoLL 项目根目录>/.winboll/winboll.properties-demo"(WinBoLL 项目已设置)
☁ WinBoLL 项目配置文件为 "<WinBoLL 项目根目录>/.winboll/winboll.properties" 2应用型项目
☁ WinBoLL 项目配置文件设定为源码提交时忽略。(WinBoLL 项目已设置)
☁ Gradle 项目配置文件示例为 "<WinBoLL 项目根目录>/.winboll/local.properties-demo"(WinBoLL 项目已设置) - 编译命令 bash .winboll/bashPublishAPKAddTag.sh <应用项目模块名> 
☁ Gradle 项目配置文件为 "<WinBoLL 项目根目录>/local.properties"(WinBoLL 项目已设置)
☁ Gradle 项目配置文件设定为源码提交时忽略。(WinBoLL 项目已设置) 3调试编译
### ☁ 登高处 ☁ WinBoLL 应用需求规划 - Beta 调试 bash gradlew assembleBetaDebug 
☁ WinBoLL 主机建立 WinBoLL 客户端用户数据库为 MySQL winbollclient 数据库。 - Stage 调试 bash gradlew assembleStageDebug
☁ WinBoLL 主机设置 WinBoLL 客户端用户信息存储在 winbollclient 数据库中。  
☁ MySQL winbollclient 数据库中 4发布编译
WinBoLL 客户端用户信息设定为:
<用户名, 验证密码, 验证邮箱, 验证手机, 唯一存储令牌Token, 备用验证邮箱> - Stage 发布bash .winboll/bashPublishAPKAddTag.sh <应用项目模块名> 
☁ WinBoLL 项目源码仓库托管在 WinBoLL 1Panel Gitea 目录 /opt/1panel/apps/gitea/gitea/data/git/repositories/studio/app.git中。 或者执行  bash gradlew assembleStageRelease
☁ WinBoLL 主机提供 WinBoLL 1Panel Gitea 应用的 WinBoLL 项目源码仓库存取功能。Gitea 应用已提供)
☁ WinBoLL 主机提供 WinBoLL Gitea 项目仓库存档功能。Gitea 应用已提供) 3. 编译输出路径
☁ 提供 WinBoLL 客户端用户登录功能。Gitea 应用已提供)
- 默认路径(assembleBetaDebug任务) /sdcard/WinBoLLStudio/APKs/<项目根目录名称>/debug/ 
### ☁ 看远方 ☁ ### - 默认路径(assembleStageRelease任务) /sdcard/WinBoLLStudio/APKs/<项目根目录名称>/tag/ 
### ☁ 心忧虑 ☁ WinBoLL-APP 应用前置需求 - 额外路径:若  winboll.properties  配置  ExtraAPKOutputPath APK 同步拷贝至该ExtraAPKOutputPath路径
☁ WinBoLL-APP WinBoLL 项目根目录设定为手机的 /sdcard/WinBoLLStudio/Sources 目录。(需要用户手动建立文件夹)
☁ WinBoLL-APP 具有手机 /sdcard/WinBoLL 目录的存储权限。(需要手机操作系统授权) 4. 版本号命名规则
☁ WinBoLL-APP WinBoLL 项目仓库源码存储路径为 /sdcard/WinBoLLStudio/Sources/APP.git需要用户手动建立文件夹
☁ WinBoLL-APP 项目 APK 编译输出目录为 /sdcard/WinBoLLStudio/APKs/ - Stage 渠道 V<应用开发环境编号><应用功能变更号><应用调试阶段号> 示例 APPBase_15.7.0 
☁ WinBoLL-APP 应用签名验证可定制化。WinBoLL 项目已提供 - Beta 渠道 V<应用开发环境编号><应用功能变更号><应用调试阶段号>-beta<调试编译计数>_<调试编译时间(分钟+秒钟)> 示例 APPBase_15.9.6-beta8_5413 
☁ WinBoLL-APP 与系列衍生 APP 应用共享 cc.winboll.studio 命名空间资源。WinBoLL 项目已提供)
☁ WinBoLL-APP 用户客户端信息存储在命名空间为 WinBoLL APP MySQLLite 应用的 winbollappclient 数据库中。
☁ WinBoLL-APP MySQLLite 应用的 winbollappclient 数据库中,
WinBoLL 用户客户端信息设定为:
<用户名, 唯一存储令牌Token>
### ☁ 云游四方 ☁ ###
### ☁ 呔! ☁ WinBoLL-APP 应用需求规划
☁ 如要使用 WinBoLL Android 项目的 Gradle 编译功能,则需要设置以下两个文件夹。
☁ 1. 则需要建立数据存储目录 /sdcard/WinBoLLStudio/APKs。
WinBoLL 项目源码编译出来的安装包会拷贝一份到 /sdcard/WinBoLLStudio/APKs 目录下。
☁ 2. 则需要建立数据存储目录 /sdcard/AppProjects。
WinBoLL 项目源码编译出来的安装包会拷贝一份并命名 "app.apk" 的安装文件为到 /sdcard/AppProjects 目录下。
### ☁ 吁! ☁ WinBoLL-APP 共享计划前景
☁ WinBoLL-APP 将会实现 https://winboll.cc/api 访问功能。
☁ WinBoLL-APP 将会实现手机端 Android 应用的开发与管理功能。
## ☁ WinBoLL ☁ WinBoLL 主机忧虑
☁ WinBoLL 将会提供 gitea.winboll.cc 域名用户注册登录功能。
☁ WinBoLL 将会提供 WinBoLL-APP 及其衍生应用的 Gitea 仓库管理服务。
☁ WinBoLL 将会提供 winboll.cc 域名 WinBoLL 项目组注册登录功能。
# 本项目要实际运用需要注意以下几个步骤:
# 在项目根目录下:
## ★. 项目模块编译环境设置(必须)settings.gradle-demo 要复制为 settings.gradle并取消相应项目模块的注释。
## ★. 项目模块编译环境设置(必须) 在根目录拷贝 gradle.properties-androidx-demo 或者 gradle.properties-android-demo 文件为 gradle.properties。
## ★. 项目 Android SDK 编译环境设置(可选)local.properties-demo 要复制为 local.properties并按需要设置 Android SDK 目录。
## ★. 应用签名密钥 keystore 设置问题。一般调试编译只需用【Termux】cd 进 GenKeyStore 目录执行 $ bash gen_debug_keystore.sh 命令即可完成设置。
## ☆. 应用 WiBoLL 签名密钥配置问题<非必须考虑>。设置时需要 clone 【keystore】模块源码并拷贝模块目录的 appkey.jks 与 appkey.keystore 到项目根目录即可。
## ☆. 类库型模块编译环境设置(可选)winboll.properties-demo 要复制为 winboll.properties并按需要设置 WinBoLL Maven 库登录用户信息, 和 APK 文件额外输出路径。
# ☆类库型项目编译方法
## 先编译类库对应的模块测试项目
### 修改模块测试项目的 build.properties 文件
设置属性 libraryProject=<类库项目模块文件夹名称>
### 再编译测试项目
$ bash .winboll/bashPublishAPKAddTag.sh <应用项目模块文件夹名称>
#### 测试项目编译后,编译器会复制一份 APK 到 路径:"/sdcard/WinBoLLStudio/APKs/<项目根目录名称>/tag/" 文件夹。
#### 若是 winboll.properties 文件的 [ExtraAPKOutputPath] 属性设置了路径。编译器也会复制一份 APK 到这个路径。
### 最后编译类库项目
$ bash .winboll/bashPublishLIBAddTag.sh <类库项目模块文件夹名称>
#### 类库模块编译命令执行后,编译器会发布到 WinBoLL Nexus Maven 库Maven 库地址可以参阅根项目目录配置 build.gradle 文件。
# ☆应用型项目编译方法
## 直接调用以下命令编译应用型项目
$ bash .winboll/bashPublishAPKAddTag.sh <应用项目模块文件夹名称>
#### 应用模块编译命令执行后,编译器会复制一份 APK 到
#### 测试项目编译后,编译器会复制一份 APK 到 路径:"/sdcard/WinBoLLStudio/APKs/<项目根目录名称>/tag/" 文件夹。
#### 若是 winboll.properties 文件的 [ExtraAPKOutputPath] 属性设置了路径。编译器也会复制一份 APK 到这个路径。
## ☆应用调试编译方法
使用以下命令编译调试:
### Beta调试使用
$ bash gradlew assembleBetaDebug
### Stage调试使用
$ bash gradlew assembleStageDebug
### 若是 winboll.properties 文件的 [ExtraAPKOutputPath] 属性设置了路径。编译器也会复制一份 APK 到这个路径。
# 应用版本号命名方式
## statge 渠道
V<应用开发环境编号><应用功能变更号><应用调试阶段号>
APPBase_15.7.0
## beta 渠道
V<应用开发环境编号><应用功能变更号><应用调试阶段号>-beta<调试编译计数>_<调试编译时间(分钟+秒钟)>
APPBase_15.9.6-beta8_5413

View File

@@ -109,7 +109,7 @@ dependencies {
// WinBoLL库 nexus.winboll.cc 地址 // WinBoLL库 nexus.winboll.cc 地址
api 'cc.winboll.studio:libaes:15.15.2' api 'cc.winboll.studio:libaes:15.15.2'
api 'cc.winboll.studio:libappbase:15.15.9' api 'cc.winboll.studio:libappbase:15.15.11'
// WinBoLL备用库 jitpack.io 地址 // WinBoLL备用库 jitpack.io 地址
//api 'com.github.ZhanGSKen:AES:aes-v15.15.7' //api 'com.github.ZhanGSKen:AES:aes-v15.15.7'

View File

@@ -1,8 +1,8 @@
#Created by .winboll/winboll_app_build.gradle #Created by .winboll/winboll_app_build.gradle
#Sat Jan 24 13:25:26 HKT 2026 #Sun Mar 15 10:36:01 HKT 2026
stageCount=13 stageCount=20
libraryProject= libraryProject=
baseVersion=15.11 baseVersion=15.11
publishVersion=15.11.12 publishVersion=15.11.19
buildCount=0 buildCount=0
baseBetaVersion=15.11.13 baseBetaVersion=15.11.20

View File

@@ -122,7 +122,7 @@ public class MainActivity extends DrawerFragmentActivity {
@Override @Override
public boolean onCreateOptionsMenu(Menu menu) { public boolean onCreateOptionsMenu(Menu menu) {
getMenuInflater().inflate(R.menu.toolbar_main, menu); getMenuInflater().inflate(R.menu.toolbar_main, menu);
if (!App.isDebugging()) { if (App.isDebugging()) {
getMenuInflater().inflate(R.menu.toolbar_test, menu); getMenuInflater().inflate(R.menu.toolbar_test, menu);
} }
return super.onCreateOptionsMenu(menu); return super.onCreateOptionsMenu(menu);