|
|
|
@ -44,12 +44,23 @@ public class SqlNote {
|
|
|
|
|
private static final int INVALID_ID = -99999;
|
|
|
|
|
|
|
|
|
|
public static final String[] PROJECTION_NOTE = new String[] {
|
|
|
|
|
NoteColumns.ID, NoteColumns.ALERTED_DATE, NoteColumns.BG_COLOR_ID,
|
|
|
|
|
NoteColumns.CREATED_DATE, NoteColumns.HAS_ATTACHMENT, NoteColumns.MODIFIED_DATE,
|
|
|
|
|
NoteColumns.NOTES_COUNT, NoteColumns.PARENT_ID, NoteColumns.SNIPPET, NoteColumns.TYPE,
|
|
|
|
|
NoteColumns.WIDGET_ID, NoteColumns.WIDGET_TYPE, NoteColumns.SYNC_ID,
|
|
|
|
|
NoteColumns.LOCAL_MODIFIED, NoteColumns.ORIGIN_PARENT_ID, NoteColumns.GTASK_ID,
|
|
|
|
|
NoteColumns.VERSION
|
|
|
|
|
NoteColumns.ID, // 便签唯一ID
|
|
|
|
|
NoteColumns.ALERTED_DATE, // 提醒时间戳(毫秒)
|
|
|
|
|
NoteColumns.BG_COLOR_ID, // 背景色ID(引用资源ID)
|
|
|
|
|
NoteColumns.CREATED_DATE, // 创建时间戳(毫秒)
|
|
|
|
|
NoteColumns.HAS_ATTACHMENT, // 是否有附件(0=无,1=有)
|
|
|
|
|
NoteColumns.MODIFIED_DATE, // 最后修改时间戳(毫秒)
|
|
|
|
|
NoteColumns.NOTES_COUNT, // 子便签数量(仅文件夹有效)
|
|
|
|
|
NoteColumns.PARENT_ID, // 父文件夹ID(根目录为0,系统文件夹为负数)
|
|
|
|
|
NoteColumns.SNIPPET, // 便签内容或文件夹名称
|
|
|
|
|
NoteColumns.TYPE, // 类型(0=便签,1=文件夹,2=系统文件夹)
|
|
|
|
|
NoteColumns.WIDGET_ID, // 桌面小部件ID(无效ID为-1)
|
|
|
|
|
NoteColumns.WIDGET_TYPE, // 小部件类型(0=2x,1=4x,-1=无效)
|
|
|
|
|
NoteColumns.SYNC_ID, // 同步ID(用于云同步版本控制)
|
|
|
|
|
NoteColumns.LOCAL_MODIFIED, // 本地修改标识(1=已修改)
|
|
|
|
|
NoteColumns.ORIGIN_PARENT_ID, // 移动前的原始父ID(用于临时文件夹逻辑)
|
|
|
|
|
NoteColumns.GTASK_ID, // Google Tasks ID(同步到Google任务)
|
|
|
|
|
NoteColumns.VERSION // 版本号(用于冲突检测,乐观锁)
|
|
|
|
|
};
|
|
|
|
|
|
|
|
|
|
public static final int ID_COLUMN = 0;
|
|
|
|
@ -86,41 +97,24 @@ public class SqlNote {
|
|
|
|
|
|
|
|
|
|
public static final int VERSION_COLUMN = 16;
|
|
|
|
|
|
|
|
|
|
private Context mContext;
|
|
|
|
|
|
|
|
|
|
private ContentResolver mContentResolver;
|
|
|
|
|
|
|
|
|
|
private boolean mIsCreate;
|
|
|
|
|
|
|
|
|
|
private long mId;
|
|
|
|
|
|
|
|
|
|
private long mAlertDate;
|
|
|
|
|
|
|
|
|
|
private int mBgColorId;
|
|
|
|
|
|
|
|
|
|
private long mCreatedDate;
|
|
|
|
|
|
|
|
|
|
private int mHasAttachment;
|
|
|
|
|
|
|
|
|
|
private long mModifiedDate;
|
|
|
|
|
|
|
|
|
|
private long mParentId;
|
|
|
|
|
|
|
|
|
|
private String mSnippet;
|
|
|
|
|
|
|
|
|
|
private int mType;
|
|
|
|
|
|
|
|
|
|
private int mWidgetId;
|
|
|
|
|
|
|
|
|
|
private int mWidgetType;
|
|
|
|
|
|
|
|
|
|
private long mOriginParent;
|
|
|
|
|
|
|
|
|
|
private long mVersion;
|
|
|
|
|
|
|
|
|
|
private ContentValues mDiffNoteValues;
|
|
|
|
|
|
|
|
|
|
private ArrayList<SqlData> mDataList;
|
|
|
|
|
private Context mContext; // 应用上下文
|
|
|
|
|
private ContentResolver mContentResolver; // 内容解析器,用于操作ContentProvider
|
|
|
|
|
private boolean mIsCreate; // 是否为新建便签(true=未插入数据库,false=已存在)
|
|
|
|
|
private long mId; // 便签ID
|
|
|
|
|
private long mAlertDate; // 提醒时间
|
|
|
|
|
private int mBgColorId; // 背景色ID(默认获取资源中的默认值)
|
|
|
|
|
private long mCreatedDate; // 创建时间(默认当前时间)
|
|
|
|
|
private int mHasAttachment; // 是否有附件
|
|
|
|
|
private long mModifiedDate; // 最后修改时间(默认当前时间)
|
|
|
|
|
private long mParentId; // 父文件夹ID(默认根目录0)
|
|
|
|
|
private String mSnippet; // 便签内容或文件夹名称
|
|
|
|
|
private int mType; // 便签类型(默认普通便签)
|
|
|
|
|
private int mWidgetId; // 小部件ID(默认无效ID)
|
|
|
|
|
private int mWidgetType; // 小部件类型(默认无效类型)
|
|
|
|
|
private long mOriginParent; // 移动前的原始父ID
|
|
|
|
|
private long mVersion; // 版本号(默认0,每次更新自增)
|
|
|
|
|
private ContentValues mDiffNoteValues; // 变更字段缓存(仅记录变化的字段)
|
|
|
|
|
private ArrayList<SqlData> mDataList; // 关联的数据项列表(如文本内容、通话记录)
|
|
|
|
|
|
|
|
|
|
public SqlNote(Context context) {
|
|
|
|
|
mContext = context;
|
|
|
|
|