ADD file via upload

pt7hg8xbr 1 year ago
parent 47ada17127
commit 9ea9ea964a

@ -0,0 +1,261 @@
/*
* Copyright (c) 2010 - 2011, The MiCode Open Source Community (www.micode.net)
*
* Licensed under the Apache License, Version 2.0 (the "License");
* you may not use this file except in compliance with the License.
* You may obtain a copy of the License at
*
* http://www.apache.org/licenses/LICENSE 2.0
*
* Unless required by applicable law or agreed to in writing, software
* distributed under the License is distributed on an "AS IS" BASIS,
* WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
* See the License for the specific language governing permissions and
* limitations under the License.
*/
package net.micode.notes.data;
import android.net.Uri;
// Notes类用于定义与笔记Notes相关的各种常量、接口以及内部类可能用于管理笔记应用中的数据结构、数据库操作等功能
public class Notes {
// 定义笔记应用的授权Authority名称用于在内容提供器Content Provider相关操作中标识该应用的数据源
public static final String AUTHORITY = "micode_notes";
// 用于日志输出等场景的标签,方便识别该类相关的日志信息
public static final String TAG = "Notes";
// 定义不同类型笔记的类型码,用于区分不同性质的笔记,方便后续根据类型进行不同的处理逻辑
public static final int TYPE_NOTE = 0;
public static final int TYPE_FOLDER = 1;
public static final int TYPE_SYSTEM = 2;
/**
* IDs
* {@link Notes#ID_ROOT_FOLDER }
* {@link Notes#ID_TEMPARAY_FOLDER }
* {@link Notes#ID_CALL_RECORD_FOLDER} 便
*/
public static final int ID_ROOT_FOLDER = 0;
public static final int ID_TEMPARAY_FOLDER = -1;
public static final int ID_CALL_RECORD_FOLDER = -2;
public static final int ID_TRASH_FOLER = -3;
// 定义一系列用于传递额外信息的Intent的键Key在不同的Activity或组件间传递特定数据时使用例如传递提醒日期、背景颜色ID等信息
public static final String INTENT_EXTRA_ALERT_DATE = "net.micode.notes.alert_date";
public static final String INTENT_EXTRA_BACKGROUND_ID = "net.micode.notes.background_color_id";
public static final String INTENT_EXTRA_WIDGET_ID = "net.micode.notes.widget_id";
public static final String INTENT_EXTRA_WIDGET_TYPE = "net.micode.notes.widget_type";
public static final String INTENT_EXTRA_FOLDER_ID = "net.micode.notes.folder_id";
public static final String INTENT_EXTRA_CALL_DATE = "net.micode.notes.call_date";
// 定义不同类型的桌面小部件Widget的类型码用于区分不同规格或样式的小部件方便进行相应的布局和功能处理
public static final int TYPE_WIDGET_INVALIDE = -1;
public static final int TYPE_WIDGET_2X = 0;
public static final int TYPE_WIDGET_4X = 1;
// DataConstants内部类用于定义笔记相关的数据类型常量目前看起来主要涉及文本笔记TextNote和通话记录笔记CallNote的内容类型
public static class DataConstants {
public static final String NOTE = TextNote.CONTENT_ITEM_TYPE;
public static final String CALL_NOTE = CallNote.CONTENT_ITEM_TYPE;
}
/**
* UriUri使Content Provider
* Android content:// 协议的规范,后面跟应用的授权名称和具体的路径(这里是 /note
*/
public static final Uri CONTENT_NOTE_URI = Uri.parse("content://" + AUTHORITY + "/note");
/**
* Uri content:// 协议用于获取更通用的数据具体用途可能由使用该Uri的代码逻辑决定。
*/
public static final Uri CONTENT_DATA_URI = Uri.parse("content://" + AUTHORITY + "/data");
// NoteColumns接口定义了笔记相关的各个列Column名称及其对应的数据类型这些列可能用于数据库表结构中存储笔记的各种属性信息
public interface NoteColumns {
/**
* IDINTEGER long
*/
public static final String ID = "_id";
/**
* IDINTEGER long
*/
public static final String PARENT_ID = "parent_id";
/**
* 便INTEGER long
*/
public static final String CREATED_DATE = "created_date";
/**
* INTEGER long
*/
public static final String MODIFIED_DATE = "modified_date";
/**
* INTEGER long
*/
public static final String ALERTED_DATE = "alert_date";
/**
* TEXT便
*/
public static final String SNIPPET = "snippet";
/**
* WidgetIDINTEGER long
*/
public static final String WIDGET_ID = "widget_id";
/**
* WidgetINTEGER long
*/
public static final String WIDGET_TYPE = "widget_id";
/**
* IDINTEGER long
*/
public static final String BG_COLOR_ID = "bg_color_id";
/**
* 0 1INTEGER
*/
public static final String HAS_ATTACHMENT = "has_attachment";
/**
* 便INTEGER long
*/
public static final String NOTES_COUNT = "notes_count";
/**
* INTEGER TYPE_NOTETYPE_FOLDER
*/
public static final String TYPE = "type";
/**
* IDINTEGER long
*/
public static final String SYNC_ID = "sync_id";
/**
* 便INTEGER
*/
public static final String LOCAL_MODIFIED = "local_modified";
/**
* IDINTEGER
*/
public static final String ORIGIN_PARENT_ID = "origin_parent_id";
/**
* gtask IDTEXT
*/
public static final String GTASK_ID = "gtask_id";
/**
* INTEGER long
*/
public static final String VERSION = "version";
}
// DataColumns接口定义了数据相关的各个列Column名称及其对应的数据类型用于存储更通用的数据信息可能涵盖多种类型笔记的数据细节
public interface DataColumns {
/**
* IDINTEGER long
*/
public static final String ID = "_id";
/**
* MIMETEXTMIME
*/
public static final String MIME_TYPE = "mime_type";
/**
* IDINTEGER long
*/
public static final String NOTE_ID = "note_id";
/**
* CREATED_DATE INTEGER long
*/
public static final String CREATED_DATE = "created_date";
/**
* INTEGER long
*/
public static final String MODIFIED_DATE = "modified_date";
/**
* TEXT
*/
public static final String CONTENT = "content";
/**
* {@link #MIME_TYPE} 便INTEGER
*/
public static final String DATA1 = "data1";
/**
* {@link #MIME_TYPE} DATA1 INTEGER
*/
public static final String DATA2 = "data2";
/**
* {@link #MIME_TYPE} 便TEXT
*/
public static final String DATA3 = "data3";
/**
* {@link #MIME_TYPE} DATA3 TEXT
*/
public static final String DATA4 = "data3";
/**
* {@link #MIME_TYPE} DATA3 TEXT
*/
public static final String DATA5 = "data3";
}
// TextNote内部类继承自 DataColumns用于定义文本笔记相关的特定属性和操作比如文本笔记的模式、内容类型等信息
public static final class TextNote implements DataColumns {
/**
* check list1 0 便Integer
*/
public static final String MODE = DATA1;
public static final int MODE_CHECK_LIST = 1;
// 文本笔记的内容类型,用于标识这是一个目录形式的文本笔记相关内容,遵循 Android 的 vnd.android.cursor.dir 规范,用于内容提供器等相关操作。
public static final String CONTENT_TYPE = "vnd.android.cursor.dir/text_note";
// 文本笔记的具体项目内容类型,遵循 Android 的 vnd.android.cursor.item 规范,用于更具体的单个文本笔记项目相关操作。
public static final String CONTENT_ITEM_TYPE = "vnd.android.cursor.item/text_note";
// 用于查询文本笔记的统一资源标识符Uri通过这个 Uri 可以使用内容提供器Content Provider来获取文本笔记相关的数据格式遵循 Android 中 content:// 协议的规范。
public static final Uri CONTENT_URI = Uri.parse("content://" + AUTHORITY + "/text_note");
}
// CallNote内部类同样继承自 DataColumns用于定义通话记录笔记相关的特定属性和操作比如通话日期、电话号码等信息
public static final class CallNote implements DataColumns {
/**
* INTEGER long
*/
public static final String CALL_DATE = DATA1;
/**
* TEXT
*/
public static final String PHONE_NUMBER = DATA3;
// 通话记录笔记的内容类型,用于标识这是一个目录形式的通话记录笔记相关内容,遵循 Android 的 vnd.android.cursor.dir 规范,用于内容提供器等相关操作。
public static final String CONTENT_TYPE = "vnd.android.cursor.dir/call_note";
// 通话记录笔记的具体项目内容类型,遵循 Android 的 vnd.android.cursor.item 规范,用于更具体的单个通话记录笔记项目相关操作。
public static final String CONTENT_ITEM_TYPE = "vnd.android.cursor.item/call_note";
// 用于查询通话记录笔记的统一资源标识符Uri通过这个 Uri 可以使用内容提供器Content Provider来获取通话记录笔记相关的数据格式遵循 Android 中 content:// 协议的规范。
public static final Uri CONTENT_URI = Uri.parse("content://" + AUTHORITY + "/call_note");
}
}
Loading…
Cancel
Save