Skip to content

Commit e116def

Browse files
committed
修改
1 parent b148f31 commit e116def

File tree

1 file changed

+93
-55
lines changed

1 file changed

+93
-55
lines changed

_posts/2025-07-29-GuangZou.md

Lines changed: 93 additions & 55 deletions
Original file line numberDiff line numberDiff line change
@@ -1,38 +1,89 @@
11
---
2-
title: "光奏(GuangZou)"
2+
title: "光奏 (GuangZou) - Android APK 开发文档"
33
date: 2025-07-27 08:00:00 +0800
4-
categories: [开发]
5-
tags: [Android开发]
4+
categories: [Android]
5+
tags: [APK,Kotlin]
66
---
77

8-
❗暂未开发...
8+
一个基于 **Kotlin** 开发的 Android 音乐自动弹奏工具,支持无障碍与 ADB 模拟触控,无需 Root 权限
99

10-
## 🏷️ 基本信息
10+
---
11+
12+
## 📱 应用信息
13+
14+
| 属性 ||
15+
|----------------|--------------------------------------------|
16+
| **应用名称** | 光奏 |
17+
| **英文名** | GuangZou |
18+
| **包名** | `com.djy.guangzou` |
19+
| **平台** | Android |
20+
| **开发语言** | Kotlin |
21+
| **最低 SDK** | API 28(Android 9.0) |
22+
| **构建工具** | Kotlin DSL (`build.gradle.kts`) |
23+
| **权限** | 无障碍,存储,悬浮窗 |
24+
| **ADB工具** | Shizuku |
25+
| **Root** ||
26+
27+
---
28+
29+
## 🔐 权限说明
30+
31+
- **无障碍服务**:用于模拟触控弹奏
32+
- **存储访问**:读取/写入琴谱文件
33+
- **悬浮窗**:用于浮动控制面板
34+
35+
---
36+
37+
## 🎼 琴谱存储
1138

12-
* **应用名称**:光奏
13-
* **英文名**:GuangZou
14-
* **包名**`com.djy.guangzou`
15-
* **平台**:Android
16-
* **开发语言**:Kotlin
17-
* **最低 SDK**:API 28(Android 9.0)
18-
* **构建脚本语言**:Kotlin DSL(`build.gradle.kts`)
19-
* **权限**:无障碍,存储,悬浮窗,应用列表
20-
* **琴谱存储方式**:外部(`/storage/emulated/0/光奏/琴谱/`)
21-
* **弹奏方式**:模拟触控
22-
* **触控方式**:无障碍/adb命令(adb shell input tap X Y)
23-
* **触控位置**:优先使用已有分辨率布局,其次使用计算布局
24-
* **可能需要读取的应用包名**`com.Maple.SkyStudio`,`com.netease.sky`,`com.netease.sky.*`
25-
* **Root**:否
39+
- 路径:`/storage/emulated/0/光奏/琴谱/`
40+
- 支持格式:`.json`(推荐)
41+
- 适配**未加密****sky studio**琴谱文件(`.txt`)
2642

43+
```json
44+
{
45+
"name": "标题",
46+
"author": "作者",
47+
"bpm": 320,
48+
"notes": [
49+
{ "time": 0, "key": [1,2,3] },
50+
{ "time": 1000, "key": [9] }
51+
]
52+
}
53+
```
2754

28-
**琴键布局(共 15 个键)**
55+
**key对应的琴键**
2956
```
3057
第一排:0 1 2 3 4
3158
第二排:5 6 7 8 9
3259
第三排:10 11 12 13 14
3360
```
3461

35-
1220x2712
62+
63+
---
64+
65+
## 🎹 弹奏机制
66+
67+
- **核心方式**:模拟触控
68+
- **实现手段**
69+
- 无障碍 API
70+
- `adb shell input swipe X Y X Y 0`
71+
- **坐标策略**
72+
- 优先使用预设分辨率布局
73+
- 若无匹配布局 → 选取相近的布局 → 自行设置琴键坐标(只需要四个角的坐标即可)
74+
75+
---
76+
77+
## ⚠️ 注意事项
78+
79+
* 暂无
80+
81+
---
82+
83+
## 已有布局
84+
85+
- [x] 1220x2712
86+
3687
```
3788
1-X:901
3889
5-X:1809
@@ -43,41 +94,28 @@ tags: [Android开发]
4394
中-X:1356
4495
```
4596

97+
## 📜 许可证-MIT License
4698

47-
---
99+
```
100+
MIT License
48101
49-
#### 📄 琴谱文件示例
102+
Copyright (c) 2025 东经雨
50103
51-
```json
52-
{
53-
"name": "Example_Canon.C",
54-
"author": "",
55-
"bpm": 320,
56-
"notes": [
57-
{ "time": 2992, "key": [7,9,11] },
58-
{ "time": 3366, "key": [9] },
59-
{ "time": 3553, "key": [10] },
60-
{ "time": 3740, "key": [11] },
61-
{ "time": 4114, "key": [9] },
62-
{ "time": 4301, "key": [10] },
63-
{ "time": 4488, "key": [4,6,11] },
64-
{ "time": 4675, "key": [6] },
65-
{ "time": 4862, "key": [5] },
66-
{ "time": 5049, "key": [6] },
67-
{ "time": 5236, "key": [7] },
68-
{ "time": 5423, "key": [8] },
69-
{ "time": 5610, "key": [9] },
70-
{ "time": 5797, "key": [10] },
71-
{ "time": 5984, "key": [5,7,9] },
72-
{ "time": 6358, "key": [7] },
73-
{ "time": 6545, "key": [8] },
74-
{ "time": 6732, "key": [9] },
75-
{ "time": 7106, "key": [2] },
76-
{ "time": 7293, "key": [3] },
77-
{ "time": 7480, "key": [0,2,4] },
78-
{ "time": 7667, "key": [5] },
79-
{ "time": 7854, "key": [4] },
80-
...
81-
]
82-
}
104+
Permission is hereby granted, free of charge, to any person obtaining a copy
105+
of this software and associated documentation files (the "Software"), to deal
106+
in the Software without restriction, including without limitation the rights
107+
to use, copy, modify, merge, publish, distribute, sublicense, and/or sell
108+
copies of the Software, and to permit persons to whom the Software is
109+
furnished to do so, subject to the following conditions:
110+
111+
The above copyright notice and this permission notice shall be included in all
112+
copies or substantial portions of the Software.
113+
114+
THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
115+
IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
116+
FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE
117+
AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER
118+
LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,
119+
OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE
120+
SOFTWARE.
83121
```

0 commit comments

Comments
 (0)