|
|
@ -14,12 +14,13 @@
|
|
|
|
* limitations under the License.
|
|
|
|
* limitations under the License.
|
|
|
|
*/
|
|
|
|
*/
|
|
|
|
|
|
|
|
|
|
|
|
package net.micode.notes.data;
|
|
|
|
package net.micode.notes.data;//此类在文件中的位置
|
|
|
|
|
|
|
|
|
|
|
|
import android.content.ContentUris;
|
|
|
|
import android.content.ContentUris;//引用android.content.ContentUris
|
|
|
|
import android.net.Uri;
|
|
|
|
import android.net.Uri;//引用android.net.Uri
|
|
|
|
// Notes 类中定义了很多常量,这些常量大多是int型和string型
|
|
|
|
// Notes 类中定义了很多常量,这些常量大多是int型和string型
|
|
|
|
public class Notes {
|
|
|
|
public class Notes {
|
|
|
|
|
|
|
|
//定义两个常量
|
|
|
|
public static final String AUTHORITY = "micode_notes";
|
|
|
|
public static final String AUTHORITY = "micode_notes";
|
|
|
|
public static final String TAG = "Notes";
|
|
|
|
public static final String TAG = "Notes";
|
|
|
|
|
|
|
|
|
|
|
@ -29,10 +30,10 @@ public class Notes {
|
|
|
|
public static final int TYPE_SYSTEM = 2;
|
|
|
|
public static final int TYPE_SYSTEM = 2;
|
|
|
|
|
|
|
|
|
|
|
|
/**
|
|
|
|
/**
|
|
|
|
* Following IDs are system folders' identifiers
|
|
|
|
* 以下 ID 是系统文件夹的标识符
|
|
|
|
* {@link Notes#ID_ROOT_FOLDER } is default folder
|
|
|
|
* {@link Notes#ID_ROOT_FOLDER }是默认文件夹
|
|
|
|
* {@link Notes#ID_TEMPARAY_FOLDER } is for notes belonging no folder
|
|
|
|
* {@link Notes#ID_TEMPARAY_FOLDER }是不属于文件夹的notes
|
|
|
|
* {@link Notes#ID_CALL_RECORD_FOLDER} is to store call records
|
|
|
|
* {@link Notes#ID_CALL_RECORD_FOLDER}是用于存储通话记录
|
|
|
|
*/
|
|
|
|
*/
|
|
|
|
public static final int ID_ROOT_FOLDER = 0;
|
|
|
|
public static final int ID_ROOT_FOLDER = 0;
|
|
|
|
public static final int ID_TEMPARAY_FOLDER = -1;
|
|
|
|
public static final int ID_TEMPARAY_FOLDER = -1;
|
|
|
@ -40,24 +41,25 @@ public class Notes {
|
|
|
|
public static final int ID_TRASH_FOLER = -3;
|
|
|
|
public static final int ID_TRASH_FOLER = -3;
|
|
|
|
|
|
|
|
|
|
|
|
public static final String INTENT_EXTRA_ALERT_DATE =
|
|
|
|
public static final String INTENT_EXTRA_ALERT_DATE =
|
|
|
|
|
|
|
|
//定义net.micode.notes.alert_date的常量
|
|
|
|
"net.micode.notes.alert_date";
|
|
|
|
"net.micode.notes.alert_date";
|
|
|
|
public static final String INTENT_EXTRA_BACKGROUND_ID =
|
|
|
|
public static final String INTENT_EXTRA_BACKGROUND_ID =
|
|
|
|
|
|
|
|
//定义net.micode.notes.background_color_id的常量
|
|
|
|
"net.micode.notes.background_color_id";
|
|
|
|
"net.micode.notes.background_color_id";
|
|
|
|
public static final String INTENT_EXTRA_WIDGET_ID =
|
|
|
|
public static final String INTENT_EXTRA_WIDGET_ID =
|
|
|
|
|
|
|
|
//定义net.micode.notes.widget_id的常量
|
|
|
|
"net.micode.notes.widget_id";
|
|
|
|
"net.micode.notes.widget_id";
|
|
|
|
public static final String INTENT_EXTRA_WIDGET_TYPE =
|
|
|
|
public static final String INTENT_EXTRA_WIDGET_TYPE =
|
|
|
|
|
|
|
|
//定义net.micode.notes.widget_type的常量
|
|
|
|
"net.micode.notes.widget_type";
|
|
|
|
"net.micode.notes.widget_type";
|
|
|
|
public static final String INTENT_EXTRA_FOLDER_ID =
|
|
|
|
public static final String INTENT_EXTRA_FOLDER_ID =
|
|
|
|
|
|
|
|
//定义net.micode.notes.folder_id的常量
|
|
|
|
"net.micode.notes.folder_id";
|
|
|
|
"net.micode.notes.folder_id";
|
|
|
|
public static final String INTENT_EXTRA_CALL_DATE =
|
|
|
|
public static final String INTENT_EXTRA_CALL_DATE =
|
|
|
|
|
|
|
|
//定义net.micode.notes.call_date的常量
|
|
|
|
"net.micode.notes.call_date";
|
|
|
|
"net.micode.notes.call_date";
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
//定义使用widget挂件的常量
|
|
|
|
public static final int TYPE_WIDGET_INVALIDE = -1;
|
|
|
|
public static final int TYPE_WIDGET_INVALIDE = -1;
|
|
|
|
public static final int TYPE_WIDGET_2X = 0;
|
|
|
|
public static final int TYPE_WIDGET_2X = 0;
|
|
|
|
public static final int TYPE_WIDGET_4X = 1;
|
|
|
|
public static final int TYPE_WIDGET_4X = 1;
|
|
|
@ -68,16 +70,15 @@ public class Notes {
|
|
|
|
}
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
|
|
/**
|
|
|
|
/**
|
|
|
|
* Uri to query all notes and folders
|
|
|
|
* 用于查询所有便笺和文件夹的 URI
|
|
|
|
*/
|
|
|
|
*/
|
|
|
|
public static final Uri CONTENT_NOTE_URI = Uri.parse("content://" +
|
|
|
|
public static final Uri CONTENT_NOTE_URI = Uri.parse("content://" +
|
|
|
|
|
|
|
|
|
|
|
|
AUTHORITY + "/note");//定义查询便签和文件夹的指针。
|
|
|
|
AUTHORITY + "/note");//定义查询便签和文件夹的指针。
|
|
|
|
|
|
|
|
public static final Uri my_URI = ContentUris.withAppendedId(Notes.CONTENT_NOTE_URI , 10);
|
|
|
|
// public static final Uri my_URI = ContentUris.withAppendedId(Notes.CONTENT_NOTE_URI , 10);
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
/**
|
|
|
|
/**
|
|
|
|
* Uri to query data
|
|
|
|
* 用于查询数据的 URI
|
|
|
|
*/
|
|
|
|
*/
|
|
|
|
public static final Uri CONTENT_DATA_URI = Uri.parse("content://" +
|
|
|
|
public static final Uri CONTENT_DATA_URI = Uri.parse("content://" +
|
|
|
|
|
|
|
|
|
|
|
@ -86,93 +87,92 @@ AUTHORITY + "/data");//
|
|
|
|
// 定义NoteColumns的常量,用于后面创建数据库的表头
|
|
|
|
// 定义NoteColumns的常量,用于后面创建数据库的表头
|
|
|
|
public interface NoteColumns {
|
|
|
|
public interface NoteColumns {
|
|
|
|
/**
|
|
|
|
/**
|
|
|
|
* The unique ID for a row
|
|
|
|
* 行的唯一 ID
|
|
|
|
* <P> Type: INTEGER (long) </P>
|
|
|
|
* <P> Type: INTEGER (long) </P>
|
|
|
|
*/
|
|
|
|
*/
|
|
|
|
public static final String ID = "_id";
|
|
|
|
public static final String ID = "_id";
|
|
|
|
|
|
|
|
|
|
|
|
/**
|
|
|
|
/**
|
|
|
|
* The parent's id for note or folder
|
|
|
|
* 便笺或文件夹的父ID
|
|
|
|
* <P> Type: INTEGER (long) </P>
|
|
|
|
* <P> Type: INTEGER (long) </P>
|
|
|
|
*/
|
|
|
|
*/
|
|
|
|
public static final String PARENT_ID = "parent_id";//为什么会有parent_id
|
|
|
|
public static final String PARENT_ID = "parent_id";//为什么会有parent_id
|
|
|
|
|
|
|
|
|
|
|
|
/**
|
|
|
|
/**
|
|
|
|
* Created data for note or folder
|
|
|
|
* 为笔记或文件夹创建的数据
|
|
|
|
* <P> Type: INTEGER (long) </P>
|
|
|
|
* <P> Type: INTEGER (long) </P>
|
|
|
|
*/
|
|
|
|
*/
|
|
|
|
public static final String CREATED_DATE = "created_date";
|
|
|
|
public static final String CREATED_DATE = "created_date";
|
|
|
|
|
|
|
|
|
|
|
|
/**
|
|
|
|
/**
|
|
|
|
* Latest modified date
|
|
|
|
* 最新修改日期
|
|
|
|
* <P> Type: INTEGER (long) </P>
|
|
|
|
* <P> Type: INTEGER (long) </P>
|
|
|
|
*/
|
|
|
|
*/
|
|
|
|
public static final String MODIFIED_DATE = "modified_date";
|
|
|
|
public static final String MODIFIED_DATE = "modified_date";
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
/**
|
|
|
|
/**
|
|
|
|
* Alert date
|
|
|
|
* 警报日期
|
|
|
|
* <P> Type: INTEGER (long) </P>
|
|
|
|
* <P> Type: INTEGER (long) </P>
|
|
|
|
*/
|
|
|
|
*/
|
|
|
|
public static final String ALERTED_DATE = "alert_date";
|
|
|
|
public static final String ALERTED_DATE = "alert_date";
|
|
|
|
|
|
|
|
|
|
|
|
/**
|
|
|
|
/**
|
|
|
|
* Folder's name or text content of note
|
|
|
|
* 文件夹名称或注释的文本内容
|
|
|
|
* <P> Type: TEXT </P>
|
|
|
|
* <P> Type: TEXT </P>
|
|
|
|
*/
|
|
|
|
*/
|
|
|
|
public static final String SNIPPET = "snippet";
|
|
|
|
public static final String SNIPPET = "snippet";
|
|
|
|
|
|
|
|
|
|
|
|
/**
|
|
|
|
/**
|
|
|
|
* Note's widget id
|
|
|
|
* notes的widget ID
|
|
|
|
* <P> Type: INTEGER (long) </P>
|
|
|
|
* <P> Type: INTEGER (long) </P>
|
|
|
|
*/
|
|
|
|
*/
|
|
|
|
public static final String WIDGET_ID = "widget_id";
|
|
|
|
public static final String WIDGET_ID = "widget_id";
|
|
|
|
|
|
|
|
|
|
|
|
/**
|
|
|
|
/**
|
|
|
|
* Note's widget type
|
|
|
|
* notes的widget 类型
|
|
|
|
* <P> Type: INTEGER (long) </P>
|
|
|
|
* <P> Type: INTEGER (long) </P>
|
|
|
|
*/
|
|
|
|
*/
|
|
|
|
public static final String WIDGET_TYPE = "widget_type";
|
|
|
|
public static final String WIDGET_TYPE = "widget_type";
|
|
|
|
|
|
|
|
|
|
|
|
/**
|
|
|
|
/**
|
|
|
|
* Note's background color's id
|
|
|
|
* 笔记的背景颜色的 ID
|
|
|
|
* <P> Type: INTEGER (long) </P>
|
|
|
|
* <P> Type: INTEGER (long) </P>
|
|
|
|
*/
|
|
|
|
*/
|
|
|
|
public static final String BG_COLOR_ID = "bg_color_id";
|
|
|
|
public static final String BG_COLOR_ID = "bg_color_id";
|
|
|
|
|
|
|
|
|
|
|
|
/**
|
|
|
|
/**
|
|
|
|
* For text note, it doesn't has attachment, for multi-media
|
|
|
|
* 对于文本笔记,它没有附件,对于多媒体笔记,它至少有一个附件
|
|
|
|
* note, it has at least one attachment
|
|
|
|
|
|
|
|
* <P> Type: INTEGER </P>
|
|
|
|
* <P> Type: INTEGER </P>
|
|
|
|
*/
|
|
|
|
*/
|
|
|
|
public static final String HAS_ATTACHMENT = "has_attachment";
|
|
|
|
public static final String HAS_ATTACHMENT = "has_attachment";
|
|
|
|
|
|
|
|
|
|
|
|
/**
|
|
|
|
/**
|
|
|
|
* Folder's count of notes
|
|
|
|
* 文件夹的笔记计数
|
|
|
|
* <P> Type: INTEGER (long) </P>
|
|
|
|
* <P> Type: INTEGER (long) </P>
|
|
|
|
*/
|
|
|
|
*/
|
|
|
|
public static final String NOTES_COUNT = "notes_count";
|
|
|
|
public static final String NOTES_COUNT = "notes_count";
|
|
|
|
|
|
|
|
|
|
|
|
/**
|
|
|
|
/**
|
|
|
|
* The file type: folder or note
|
|
|
|
* 文件类型:文件夹或便笺
|
|
|
|
* <P> Type: INTEGER </P>
|
|
|
|
* <P> Type: INTEGER </P>
|
|
|
|
*/
|
|
|
|
*/
|
|
|
|
public static final String TYPE = "type";
|
|
|
|
public static final String TYPE = "type";
|
|
|
|
|
|
|
|
|
|
|
|
/**
|
|
|
|
/**
|
|
|
|
* The last sync id
|
|
|
|
* 最后一个同步 ID
|
|
|
|
* <P> Type: INTEGER (long) </P>
|
|
|
|
* <P> Type: INTEGER (long) </P>
|
|
|
|
*/
|
|
|
|
*/
|
|
|
|
public static final String SYNC_ID = "sync_id";//同步
|
|
|
|
public static final String SYNC_ID = "sync_id";//同步
|
|
|
|
|
|
|
|
|
|
|
|
/**
|
|
|
|
/**
|
|
|
|
* Sign to indicate local modified or not
|
|
|
|
* 指示本地修改与否的标志
|
|
|
|
* <P> Type: INTEGER </P>
|
|
|
|
* <P> Type: INTEGER </P>
|
|
|
|
*/
|
|
|
|
*/
|
|
|
|
public static final String LOCAL_MODIFIED = "local_modified";
|
|
|
|
public static final String LOCAL_MODIFIED = "local_modified";
|
|
|
|
|
|
|
|
|
|
|
|
/**
|
|
|
|
/**
|
|
|
|
* Original parent id before moving into temporary folder
|
|
|
|
* 移动到临时文件夹之前的原始父 ID
|
|
|
|
* <P> Type : INTEGER </P>
|
|
|
|
* <P> Type : INTEGER </P>
|
|
|
|
*/
|
|
|
|
*/
|
|
|
|
public static final String ORIGIN_PARENT_ID = "origin_parent_id";
|
|
|
|
public static final String ORIGIN_PARENT_ID = "origin_parent_id";
|
|
|
@ -193,77 +193,72 @@ AUTHORITY + "/data");//
|
|
|
|
// 定义DataColumns的常量,用于后面创建数据库的表头
|
|
|
|
// 定义DataColumns的常量,用于后面创建数据库的表头
|
|
|
|
public interface DataColumns {
|
|
|
|
public interface DataColumns {
|
|
|
|
/**
|
|
|
|
/**
|
|
|
|
* The unique ID for a row
|
|
|
|
* 行的唯一 ID
|
|
|
|
* <P> Type: INTEGER (long) </P>
|
|
|
|
* <P> Type: INTEGER (long) </P>
|
|
|
|
*/
|
|
|
|
*/
|
|
|
|
public static final String ID = "_id";
|
|
|
|
public static final String ID = "_id";
|
|
|
|
|
|
|
|
|
|
|
|
/**
|
|
|
|
/**
|
|
|
|
* The MIME type of the item represented by this row.
|
|
|
|
* 此行表示的项的 MIME 类型。
|
|
|
|
* <P> Type: Text </P>
|
|
|
|
* <P> Type: Text </P>
|
|
|
|
*/
|
|
|
|
*/
|
|
|
|
public static final String MIME_TYPE = "mime_type";
|
|
|
|
public static final String MIME_TYPE = "mime_type";
|
|
|
|
|
|
|
|
|
|
|
|
/**
|
|
|
|
/**
|
|
|
|
* The reference id to note that this data belongs to
|
|
|
|
* 此数据所属的引用 ID
|
|
|
|
* <P> Type: INTEGER (long) </P>
|
|
|
|
* <P> Type: INTEGER (long) </P>
|
|
|
|
*/
|
|
|
|
*/
|
|
|
|
public static final String NOTE_ID = "note_id";
|
|
|
|
public static final String NOTE_ID = "note_id";
|
|
|
|
|
|
|
|
|
|
|
|
/**
|
|
|
|
/**
|
|
|
|
* Created data for note or folder
|
|
|
|
* 为笔记或文件夹创建的数据
|
|
|
|
* <P> Type: INTEGER (long) </P>
|
|
|
|
* <P> Type: INTEGER (long) </P>
|
|
|
|
*/
|
|
|
|
*/
|
|
|
|
public static final String CREATED_DATE = "created_date";
|
|
|
|
public static final String CREATED_DATE = "created_date";
|
|
|
|
|
|
|
|
|
|
|
|
/**
|
|
|
|
/**
|
|
|
|
* Latest modified date
|
|
|
|
* 最新修改日期
|
|
|
|
* <P> Type: INTEGER (long) </P>
|
|
|
|
* <P> Type: INTEGER (long) </P>
|
|
|
|
*/
|
|
|
|
*/
|
|
|
|
public static final String MODIFIED_DATE = "modified_date";
|
|
|
|
public static final String MODIFIED_DATE = "modified_date";
|
|
|
|
|
|
|
|
|
|
|
|
/**
|
|
|
|
/**
|
|
|
|
* Data's content
|
|
|
|
* 数据内容
|
|
|
|
* <P> Type: TEXT </P>
|
|
|
|
* <P> Type: TEXT </P>
|
|
|
|
*/
|
|
|
|
*/
|
|
|
|
public static final String CONTENT = "content";
|
|
|
|
public static final String CONTENT = "content";
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
/**
|
|
|
|
/**
|
|
|
|
* Generic data column, the meaning is {@link #MIMETYPE} specific,
|
|
|
|
* 通用数据列,含义是 {@link #MIMETYPE} 特定的,用于
|
|
|
|
used for
|
|
|
|
* Integer 数据类型
|
|
|
|
* integer data type
|
|
|
|
|
|
|
|
* <P> Type: INTEGER </P>
|
|
|
|
* <P> Type: INTEGER </P>
|
|
|
|
*/
|
|
|
|
*/
|
|
|
|
public static final String DATA1 = "data1";
|
|
|
|
public static final String DATA1 = "data1";
|
|
|
|
|
|
|
|
|
|
|
|
/**
|
|
|
|
/**
|
|
|
|
* Generic data column, the meaning is {@link #MIMETYPE} specific,
|
|
|
|
* 通用数据列,含义是 {@link #MIMETYPE} 特定的,用于
|
|
|
|
used for
|
|
|
|
* Integer 数据类型
|
|
|
|
* integer data type
|
|
|
|
|
|
|
|
* <P> Type: INTEGER </P>
|
|
|
|
* <P> Type: INTEGER </P>
|
|
|
|
*/
|
|
|
|
*/
|
|
|
|
public static final String DATA2 = "data2";
|
|
|
|
public static final String DATA2 = "data2";
|
|
|
|
|
|
|
|
|
|
|
|
/**
|
|
|
|
/**
|
|
|
|
* Generic data column, the meaning is {@link #MIMETYPE} specific,
|
|
|
|
* 通用数据列,含义是 {@link #MIMETYPE} 特定的,用于
|
|
|
|
used for
|
|
|
|
|
|
|
|
* TEXT data type
|
|
|
|
* TEXT data type
|
|
|
|
* <P> Type: TEXT </P>
|
|
|
|
* <P> Type: TEXT </P>
|
|
|
|
*/
|
|
|
|
*/
|
|
|
|
public static final String DATA3 = "data3";
|
|
|
|
public static final String DATA3 = "data3";
|
|
|
|
|
|
|
|
|
|
|
|
/**
|
|
|
|
/**
|
|
|
|
* Generic data column, the meaning is {@link #MIMETYPE} specific,
|
|
|
|
* 通用数据列,含义是 {@link #MIMETYPE} 特定的,用于
|
|
|
|
used for
|
|
|
|
|
|
|
|
* TEXT data type
|
|
|
|
* TEXT data type
|
|
|
|
* <P> Type: TEXT </P>
|
|
|
|
* <P> Type: TEXT </P>
|
|
|
|
*/
|
|
|
|
*/
|
|
|
|
public static final String DATA4 = "data4";
|
|
|
|
public static final String DATA4 = "data4";
|
|
|
|
|
|
|
|
|
|
|
|
/**
|
|
|
|
/**
|
|
|
|
* Generic data column, the meaning is {@link #MIMETYPE} specific,
|
|
|
|
* 通用数据列,含义是 {@link #MIMETYPE} 特定的,用于
|
|
|
|
used for
|
|
|
|
|
|
|
|
* TEXT data type
|
|
|
|
* TEXT data type
|
|
|
|
* <P> Type: TEXT </P>
|
|
|
|
* <P> Type: TEXT </P>
|
|
|
|
*/
|
|
|
|
*/
|
|
|
@ -271,7 +266,7 @@ used for
|
|
|
|
}//主要是定义存储便签内容数据的
|
|
|
|
}//主要是定义存储便签内容数据的
|
|
|
|
public static final class TextNote implements DataColumns {
|
|
|
|
public static final class TextNote implements DataColumns {
|
|
|
|
/**
|
|
|
|
/**
|
|
|
|
* Mode to indicate the text in check list mode or not
|
|
|
|
* 指示文本是否处于核对列表模式的模式
|
|
|
|
* <P> Type: Integer 1:check list mode 0: normal mode </P>
|
|
|
|
* <P> Type: Integer 1:check list mode 0: normal mode </P>
|
|
|
|
*/
|
|
|
|
*/
|
|
|
|
public static final String MODE = DATA1;
|
|
|
|
public static final String MODE = DATA1;
|
|
|
@ -293,13 +288,13 @@ AUTHORITY + "/text_note");
|
|
|
|
|
|
|
|
|
|
|
|
public static final class CallNote implements DataColumns {
|
|
|
|
public static final class CallNote implements DataColumns {
|
|
|
|
/**
|
|
|
|
/**
|
|
|
|
* Call date for this record
|
|
|
|
* 此记录的调用日期
|
|
|
|
* <P> Type: INTEGER (long) </P>
|
|
|
|
* <P> Type: INTEGER (long) </P>
|
|
|
|
*/
|
|
|
|
*/
|
|
|
|
public static final String CALL_DATE = DATA1;
|
|
|
|
public static final String CALL_DATE = DATA1;
|
|
|
|
|
|
|
|
|
|
|
|
/**
|
|
|
|
/**
|
|
|
|
* Phone number for this record
|
|
|
|
* 此记录的电话号码
|
|
|
|
* <P> Type: TEXT </P>
|
|
|
|
* <P> Type: TEXT </P>
|
|
|
|
*/
|
|
|
|
*/
|
|
|
|
public static final String PHONE_NUMBER = DATA3;
|
|
|
|
public static final String PHONE_NUMBER = DATA3;
|
|
|
|