third commit

main
ljianxin 4 months ago
parent ffe4166f73
commit f4ebb60e75

@ -1,133 +1,129 @@
# MiCode Notes - Modern Android Version
## 📱 项目简介
这是小米便签(MiCode Notes)的现代化版本已从原始的Eclipse ADT项目迁移到现代的Android Studio Gradle构建系统。
## 🔄 迁移说明
### 原始项目问题
- 使用Eclipse ADT项目结构
- 基于非常老的Android API (minSdkVersion 14)
- 缺少现代Android项目必需的构建配置
- 无法在最新版Android Studio中正常运行
### 迁移改进
- ✅ 转换为标准Gradle项目结构
- ✅ 更新到现代Android API (minSdk 21, targetSdk 34)
- ✅ 添加Material Design支持
- ✅ 修复已废弃的API调用
- ✅ 添加现代Android构建配置
- ✅ 支持AndroidX库
## 🏗️ 项目结构
```
MiCode-Notes/
├── app/ # 主应用模块
│ ├── src/main/
│ │ ├── java/ # Java源代码
│ │ ├── res/ # 资源文件
│ │ └── AndroidManifest.xml # 应用清单
│ ├── build.gradle # 模块构建配置
│ └── proguard-rules.pro # ProGuard规则
├── gradle/ # Gradle Wrapper
├── build.gradle # 项目构建配置
├── settings.gradle # 项目设置
└── gradle.properties # Gradle属性
```
## 🛠️ 构建要求
- **Android Studio**: Arctic Fox (2020.3.1) 或更高版本
- **Gradle**: 8.2
- **Android Gradle Plugin**: 8.2.0
- **Java**: JDK 8 或更高版本
- **Android SDK**: API 34
## 🚀 快速开始
### 1. 克隆项目
```bash
git clone <repository-url>
cd Notes-master
```
### 2. 在Android Studio中打开
1. 启动Android Studio
2. 选择 "Open an existing Android Studio project"
3. 选择项目根目录
4. 等待Gradle同步完成
### 3. 构建项目
```bash
./gradlew build
```
### 4. 运行应用
```bash
./gradlew installDebug
```
## 📋 主要功能
- 📝 便签创建、编辑、删除
- 📁 文件夹管理和分类
- 🔍 便签搜索功能
- ⏰ 提醒功能
- 🔄 Google Task同步
- 🏠 桌面小部件 (2x2, 4x4)
- 📤 文本导出功能
- 🎨 多种背景颜色
## 🔧 技术栈
- **语言**: Java
- **架构**: MVC
- **数据库**: SQLite
- **UI框架**: Material Design Components
- **同步**: Google Tasks API
- **构建工具**: Gradle
## 📱 兼容性
- **最低支持**: Android 5.0 (API 21)
- **目标版本**: Android 14 (API 34)
- **架构支持**: ARM, ARM64, x86, x86_64
## 🐛 已知问题
1. **Google同步功能暂时禁用** - 为了确保项目能正常编译运行暂时禁用了Google Tasks同步功能
2. 部分UI可能需要进一步适配Material Design
3. 某些老旧设备可能存在兼容性问题
## ⚠️ 当前状态
- ✅ **核心功能正常** - 便签创建、编辑、删除、搜索等功能完全可用
- ✅ **现代化构建** - 使用最新的Gradle和Android构建工具
- ⚠️ **同步功能禁用** - Google Tasks同步功能暂时禁用可在后续版本中重新启用
- ✅ **桌面小部件** - 2x2和4x4桌面小部件功能正常
## 🤝 贡献指南
1. Fork 项目
2. 创建功能分支 (`git checkout -b feature/AmazingFeature`)
3. 提交更改 (`git commit -m 'Add some AmazingFeature'`)
4. 推送到分支 (`git push origin feature/AmazingFeature`)
5. 创建 Pull Request
## 📄 开源协议
本项目遵循 Apache License 2.0 协议。详见 [NOTICE](NOTICE) 文件。
## 🙏 致谢
- 原始项目由 MIUI 团队发起
- 现由 MiCode 社区维护
- 感谢所有贡献者的努力
## 📞 支持
- **Bug反馈**: [GitHub Issues](https://github.com/MiCode/Notes/issues)
- **功能建议**: [MiCode论坛](http://micode.net/forum.php?mod=forumdisplay&fid=38)
- **文档**: 查看项目Wiki
# 小米便签应用
## 项目概述
小米便签是一款功能丰富的笔记应用,支持创建、编辑、分类和同步笔记。本应用提供了直观的用户界面,让用户可以轻松管理日常记事、待办事项和重要信息。
## 主要功能
- **笔记管理**:创建、编辑、删除和查看笔记
- **文件夹组织**:将笔记分类到不同文件夹
- **提醒功能**:为笔记设置时间提醒
- **通话记录**:支持通话记录笔记
- **背景颜色**:自定义笔记背景颜色
- **Google账号同步**支持与Google任务同步
- **小部件支持**:桌面小部件快速访问笔记
## 项目结构
项目采用MVC架构主要分为以下几个部分
### 数据层 (Model)
- **数据结构**`Notes.java` 定义了应用的数据结构、URI和列名
- **数据库**`NotesDatabaseHelper.java` 负责创建和升级数据库
- **内容提供者**`NotesProvider.java` 处理笔记数据的CRUD操作
- **联系人管理**`Contact.java` 处理电话号码与联系人的映射
### 模型层 (Model)
- **笔记模型**`Note.java` 管理笔记数据的操作
- **工作笔记**`WorkingNote.java` 管理当前编辑的笔记
### 工具类 (Utilities)
- **资源解析器**`ResourceParser.java` 管理背景颜色、字体大小等资源
- **字符串工具**`GTaskStringUtils.java` 定义同步相关常量
- **数据工具**`DataUtils.java` 提供笔记数据的批量操作方法
- **备份工具**`BackupUtils.java` 将笔记导出到SD卡
### 用户界面层 (View/Controller)
- **笔记列表**`NotesListActivity.java` 显示笔记列表和文件夹列表
- **笔记编辑**`NoteEditActivity.java` 处理笔记的编辑、保存、删除等操作
- **提醒功能**
- `AlarmAlertActivity.java` 显示提醒对话框并播放提醒音效
- `AlarmInitReceiver.java` 重新设置笔记的提醒闹钟
- `AlarmReceiver.java` 接收闹钟触发的广播并启动提醒活动
- **日期时间选择**
- `DateTimePicker.java` 日期时间选择器控件
- `DateTimePickerDialog.java` 日期时间选择对话框
- **列表适配器**
- `NotesListAdapter.java` 笔记列表适配器
- `NotesListItem.java` 笔记列表项视图
- `FoldersListAdapter.java` 文件夹列表适配器
- **自定义控件**
- `NoteEditText.java` 自定义编辑框,支持特殊按键处理和链接识别
- `DropdownMenu.java` 下拉菜单控件
- **设置界面**`NotesPreferenceActivity.java` 管理应用设置,包括账号同步和背景颜色
## 功能详解
### 笔记管理
应用支持创建普通笔记和待办事项清单。用户可以编辑笔记内容,设置背景颜色,并将笔记分类到不同文件夹。笔记列表按修改时间排序,方便用户查找最近编辑的内容。
### 提醒功能
用户可以为重要笔记设置时间提醒。当提醒时间到达时,应用会显示提醒对话框并播放提醒音效,确保用户不会错过重要事项。
### Google账号同步
应用支持与Google任务同步用户可以在设置中选择Google账号进行同步。同步功能确保用户的笔记可以在多个设备上访问和编辑。
### 小部件支持
应用提供桌面小部件,让用户可以直接从桌面查看和访问笔记,无需打开应用。
## 使用方法
### 创建笔记
1. 在笔记列表界面点击"+"按钮
2. 输入笔记内容
3. 点击返回按钮自动保存
### 编辑笔记
1. 在笔记列表中点击要编辑的笔记
2. 修改笔记内容
3. 点击返回按钮自动保存
### 设置提醒
1. 在编辑笔记界面点击菜单按钮
2. 选择"提醒"选项
3. 设置提醒日期和时间
4. 点击"确定"保存提醒
### 分类笔记
1. 在编辑笔记界面点击菜单按钮
2. 选择"移动到文件夹"选项
3. 选择目标文件夹或创建新文件夹
### 同步笔记
1. 进入设置界面
2. 在"账号"部分选择Google账号
3. 点击"立即同步"按钮开始同步
## 技术特点
- 使用ContentProvider管理数据支持跨应用数据访问
- 采用BroadcastReceiver处理系统事件和提醒
- 实现自定义视图控件,提升用户体验
- 优化数据库操作,提高应用性能
- 支持多种笔记格式和样式
## 系统要求
- Android 4.0 (API级别14)或更高版本
- 至少10MB可用存储空间
- 可选Google账号用于同步功能
## 开发环境
- Android Studio
- Java开发工具包 (JDK)
- Android SDK
Loading…
Cancel
Save