From 4ec425f617d94db13c20e0d3f86c5998ffee5a13 Mon Sep 17 00:00:00 2001 From: wyf <18818870625@163.com> Date: Wed, 13 Dec 2023 09:23:00 +0800 Subject: [PATCH 01/11] notes --- doc/Notes.java | 287 +++++++++++++++++++++++++++++++++++++++++++++++++ doc/init.docx | Bin 14260 -> 0 bytes 2 files changed, 287 insertions(+) create mode 100644 doc/Notes.java delete mode 100644 doc/init.docx diff --git a/doc/Notes.java b/doc/Notes.java new file mode 100644 index 0000000..74a9884 --- /dev/null +++ b/doc/Notes.java @@ -0,0 +1,287 @@ +/* + * 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中定义的常量,大多为int或string +public class Notes { + //static关键词可将变量限制在当前文件,其他文件无法调用该变量,即变为静态 + //final 关键字用于防止类被继承或虚函数被重写 + public static final String AUTHORITY = "micode_notes"; + public static final String TAG = "Notes"; + //以下三个常量对NoteColumns.TYPE的值进行设置时会用到 + public static final int TYPE_NOTE = 0; + public static final int TYPE_FOLDER = 1; + public static final int TYPE_SYSTEM = 2; + + /** + * Following IDs are system folders' identifiers + * {@link Notes#ID_ROOT_FOLDER } is default folder + * {@link Notes#ID_TEMPARAY_FOLDER } is for notes belonging no folder + * {@link Notes#ID_CALL_RECORD_FOLDER} is to store call records + */ + 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; + + 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"; + + public static final int TYPE_WIDGET_INVALIDE = -1; + public static final int TYPE_WIDGET_2X = 0; + public static final int TYPE_WIDGET_4X = 1; + + public static class DataConstants { + public static final String NOTE = TextNote.CONTENT_ITEM_TYPE; + public static final String CALL_NOTE = CallNote.CONTENT_ITEM_TYPE; + } + + /** + * Uri to query all notes and folders + */ + //定义查询便签和文件夹的指针 + public static final Uri CONTENT_NOTE_URI = Uri.parse("content://" + AUTHORITY + "/note"); + + /** + * Uri to query data + */ + //定义查找数据的指针。 + public static final Uri CONTENT_DATA_URI = Uri.parse("content://" + AUTHORITY + "/data"); + // 定义NoteColumns的常量,用于后面创建数据库的表头 + public interface NoteColumns { + /** + * The unique ID for a row + *

Type: INTEGER (long)

+ */ + public static final String ID = "_id"; + + /** + * The parent's id for note or folder + *

Type: INTEGER (long)

+ */ + public static final String PARENT_ID = "parent_id"; + + /** + * Created data for note or folder + *

Type: INTEGER (long)

+ */ + public static final String CREATED_DATE = "created_date"; + + /** + * Latest modified date + *

Type: INTEGER (long)

+ */ + public static final String MODIFIED_DATE = "modified_date"; + + + /** + * Alert date + *

Type: INTEGER (long)

+ */ + public static final String ALERTED_DATE = "alert_date"; + + /** + * Folder's name or text content of note + *

Type: TEXT

+ */ + public static final String SNIPPET = "snippet"; + + /** + * Note's widget id + *

Type: INTEGER (long)

+ */ + public static final String WIDGET_ID = "widget_id"; + + /** + * Note's widget type + *

Type: INTEGER (long)

+ */ + public static final String WIDGET_TYPE = "widget_type"; + + /** + * Note's background color's id + *

Type: INTEGER (long)

+ */ + 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 + *

Type: INTEGER

+ */ + public static final String HAS_ATTACHMENT = "has_attachment"; + + /** + * Folder's count of notes + *

Type: INTEGER (long)

+ */ + public static final String NOTES_COUNT = "notes_count"; + + /** + * The file type: folder or note + *

Type: INTEGER

+ */ + public static final String TYPE = "type"; + + /** + * The last sync id + *

Type: INTEGER (long)

+ */ + public static final String SYNC_ID = "sync_id"; + + /** + * Sign to indicate local modified or not + *

Type: INTEGER

+ */ + public static final String LOCAL_MODIFIED = "local_modified"; + + /** + * Original parent id before moving into temporary folder + *

Type : INTEGER

+ */ + public static final String ORIGIN_PARENT_ID = "origin_parent_id"; + + /** + * The gtask id + *

Type : TEXT

+ */ + public static final String GTASK_ID = "gtask_id"; + + /** + * The version code + *

Type : INTEGER (long)

+ */ + public static final String VERSION = "version"; + }//这些常量主要是定义便签的属性的。 + + // 定义DataColumns的常量,用于后面创建数据库的表头 + public interface DataColumns { + /** + * The unique ID for a row + *

Type: INTEGER (long)

+ */ + public static final String ID = "_id"; + + /** + * The MIME type of the item represented by this row. + *

Type: Text

+ */ + public static final String MIME_TYPE = "mime_type"; + + /** + * The reference id to note that this data belongs to + *

Type: INTEGER (long)

+ */ + public static final String NOTE_ID = "note_id"; + + /** + * Created data for note or folder + *

Type: INTEGER (long)

+ */ + public static final String CREATED_DATE = "created_date"; + + /** + * Latest modified date + *

Type: INTEGER (long)

+ */ + public static final String MODIFIED_DATE = "modified_date"; + + /** + * Data's content + *

Type: TEXT

+ */ + public static final String CONTENT = "content"; + + + /** + * Generic data column, the meaning is {@link #MIMETYPE} specific, used for + * integer data type + *

Type: INTEGER

+ */ + public static final String DATA1 = "data1"; + + /** + * Generic data column, the meaning is {@link #MIMETYPE} specific, used for + * integer data type + *

Type: INTEGER

+ */ + public static final String DATA2 = "data2"; + + /** + * Generic data column, the meaning is {@link #MIMETYPE} specific, used for + * TEXT data type + *

Type: TEXT

+ */ + public static final String DATA3 = "data3"; + + /** + * Generic data column, the meaning is {@link #MIMETYPE} specific, used for + * TEXT data type + *

Type: TEXT

+ */ + public static final String DATA4 = "data4"; + + /** + * Generic data column, the meaning is {@link #MIMETYPE} specific, used for + * TEXT data type + *

Type: TEXT

+ */ + public static final String DATA5 = "data5"; + }//主要是定义存储便签内容数据的 + + public static final class TextNote implements DataColumns { + /** + * Mode to indicate the text in check list mode or not + *

Type: Integer 1:check list mode 0: normal mode

+ */ + public static final String MODE = DATA1; + + public static final int MODE_CHECK_LIST = 1; + + public static final String CONTENT_TYPE = "vnd.android.cursor.dir/text_note"; + + public static final String CONTENT_ITEM_TYPE = "vnd.android.cursor.item/text_note"; + + public static final Uri CONTENT_URI = Uri.parse("content://" + AUTHORITY + "/text_note"); + }//定义文本内容的数据结构 + + public static final class CallNote implements DataColumns { + /** + * Call date for this record + *

Type: INTEGER (long)

+ */ + public static final String CALL_DATE = DATA1; + + /** + * Phone number for this record + *

Type: TEXT

+ */ + public static final String PHONE_NUMBER = DATA3; + + public static final String CONTENT_TYPE = "vnd.android.cursor.dir/call_note"; + + public static final String CONTENT_ITEM_TYPE = "vnd.android.cursor.item/call_note"; + + public static final Uri CONTENT_URI = Uri.parse("content://" + AUTHORITY + "/call_note"); + }//定义电话内容的数据结构 + +} diff --git a/doc/init.docx b/doc/init.docx deleted file mode 100644 index d372bd0def4c30857c07a21b93ff621b2a366ee0..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 14260 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 R0RRNx4?mFLx~xC%{vSgATetuK -- 2.34.1 From b74b704bb05352aaefb78bad6164da275283c06d Mon Sep 17 00:00:00 2001 From: wyf <18818870625@163.com> Date: Wed, 13 Dec 2023 09:27:36 +0800 Subject: [PATCH 02/11] gtask --- doc/MetaData.java | 99 ++++++++++++++++++++++++++++++++++++++++++++ doc/Node.java | 102 ++++++++++++++++++++++++++++++++++++++++++++++ 2 files changed, 201 insertions(+) create mode 100644 doc/MetaData.java create mode 100644 doc/Node.java diff --git a/doc/MetaData.java b/doc/MetaData.java new file mode 100644 index 0000000..0cfe010 --- /dev/null +++ b/doc/MetaData.java @@ -0,0 +1,99 @@ +/* + * 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.gtask.data; + +import android.database.Cursor; +import android.util.Log; + +import net.micode.notes.tool.GTaskStringUtils; + +import org.json.JSONException; +import org.json.JSONObject; + + +public class MetaData extends Task { + /* + * 功能描述:得到类的简写名称存入字符串TAG中 + * 实现过程:调用getSimpleName ()函数 + */ + private final static String TAG = MetaData.class.getSimpleName(); + + private String mRelatedGid = null; + /* + * 功能描述:设置数据,即生成元数据库 + * 实现过程:调用JSONObject库函数put (),Task类中的setNotes ()和setName ()函数 + */ + public void setMeta(String gid, JSONObject metaInfo) { + try { + metaInfo.put(GTaskStringUtils.META_HEAD_GTASK_ID, gid); + /* + * 将这对键值放入metaInfo这个jsonobject对象中 + */ + } catch (JSONException e) { + //报错 + Log.e(TAG, "failed to put related gid"); + } + setNotes(metaInfo.toString()); + setName(GTaskStringUtils.META_NOTE_NAME); + } + //获得相关联的Gid + public String getRelatedGid() { + return mRelatedGid; + } + + @Override + //判断当前数据是否为空,为空则返回真值即保存 + public boolean isWorthSaving() { + return getNotes() != null; + } + /* + * 功能描述:使用远程json数据对象设置元数据内容 + * 实现过程:调用父类Task中的setContentByRemoteJSON ()函数,并 + */ + @Override + public void setContentByRemoteJSON(JSONObject js) { + super.setContentByRemoteJSON(js); + if (getNotes() != null) { + try { + JSONObject metaInfo = new JSONObject(getNotes().trim()); + mRelatedGid = metaInfo.getString(GTaskStringUtils.META_HEAD_GTASK_ID); + } catch (JSONException e) { + //输出警告信息 + Log.w(TAG, "failed to get related gid"); + mRelatedGid = null; + } + } + } + //使用本地json数据对象设置元数据内容,若调用本函数则抛出异常状态 + @Override + public void setContentByLocalJSON(JSONObject js) { + // this function should not be called(报错) + throw new IllegalAccessError("MetaData:setContentByLocalJSON should not be called"); + } + //从元数据内容中获取本地json对象,若调用此函数则抛出异常状态 + @Override + public JSONObject getLocalJSONFromContent() { + //报错信息 + throw new IllegalAccessError("MetaData:getLocalJSONFromContent should not be called"); + } + //获取同步状态,若调用此函数则抛出异常状态 + @Override + public int getSyncAction(Cursor c) { + throw new IllegalAccessError("MetaData:getSyncAction should not be called"); + } + +} diff --git a/doc/Node.java b/doc/Node.java new file mode 100644 index 0000000..81e1b2b --- /dev/null +++ b/doc/Node.java @@ -0,0 +1,102 @@ +/* + * 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.gtask.data; + +import android.database.Cursor; + +import org.json.JSONObject; + //同步操作的基础数据类型,定义了相关指示同步操作的常量 +public abstract class Node { + //同步状态的常量 + public static final int SYNC_ACTION_NONE = 0;// 本地和云端都无可更新内容 + + public static final int SYNC_ACTION_ADD_REMOTE = 1;// 需要在远程云端增加内容 + + public static final int SYNC_ACTION_ADD_LOCAL = 2;// 需要在本地增加内容 + + public static final int SYNC_ACTION_DEL_REMOTE = 3;// 需要在远程云端删除内容 + + public static final int SYNC_ACTION_DEL_LOCAL = 4;// 需要在本地删除内容 + + public static final int SYNC_ACTION_UPDATE_REMOTE = 5;// 需要将本地内容更新到远程云端 + + public static final int SYNC_ACTION_UPDATE_LOCAL = 6;// 需要将远程云端内容更新到本地 + + public static final int SYNC_ACTION_UPDATE_CONFLICT = 7;// 同步出现冲突 + + public static final int SYNC_ACTION_ERROR = 8;// 同步出现错误 + + private String mGid; + + private String mName; + + private long mLastModified;//记录最后一次修改时间 + + private boolean mDeleted;//表征是否被删除 + + public Node() { + mGid = null; + mName = ""; + mLastModified = 0; + mDeleted = false; + } + //abstract是干嘛的? + public abstract JSONObject getCreateAction(int actionId); + + public abstract JSONObject getUpdateAction(int actionId); + + public abstract void setContentByRemoteJSON(JSONObject js); + + public abstract void setContentByLocalJSON(JSONObject js); + + public abstract JSONObject getLocalJSONFromContent(); + + public abstract int getSyncAction(Cursor c); + + public void setGid(String gid) { + this.mGid = gid; + } + + public void setName(String name) { + this.mName = name; + } + + public void setLastModified(long lastModified) { + this.mLastModified = lastModified; + } + + public void setDeleted(boolean deleted) { + this.mDeleted = deleted; + } + + public String getGid() { + return this.mGid; + } + + public String getName() { + return this.mName; + } + + public long getLastModified() { + return this.mLastModified; + } + + public boolean getDeleted() { + return this.mDeleted; + } + +} -- 2.34.1 From afa57b9feac422d3387aefaaf7c883b562990385 Mon Sep 17 00:00:00 2001 From: wyf <18818870625@163.com> Date: Sat, 16 Dec 2023 09:26:56 +0800 Subject: [PATCH 03/11] =?UTF-8?q?=E6=B3=A8=E9=87=8A?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- doc/SqlData.java | 216 +++++++++++++++++++++++++++++++++++++++++++++++ 1 file changed, 216 insertions(+) create mode 100644 doc/SqlData.java diff --git a/doc/SqlData.java b/doc/SqlData.java new file mode 100644 index 0000000..fffbb91 --- /dev/null +++ b/doc/SqlData.java @@ -0,0 +1,216 @@ +/* + * 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. + */ +/* + * 功能概述:用于支持小米便签最底层的数据库相关操作,和sqlnote的关系上是子集关系,即data是note的子集(节点)。 + * SqlData其实就是也就是所谓数据中的数据 + */ +package net.micode.notes.gtask.data; + +import android.content.ContentResolver; +import android.content.ContentUris; +import android.content.ContentValues; +import android.content.Context; +import android.database.Cursor; +import android.net.Uri; +import android.util.Log; + +import net.micode.notes.data.Notes; +import net.micode.notes.data.Notes.DataColumns; +import net.micode.notes.data.Notes.DataConstants; +import net.micode.notes.data.Notes.NoteColumns; +import net.micode.notes.data.NotesDatabaseHelper.TABLE; +import net.micode.notes.gtask.exception.ActionFailureException; + +import org.json.JSONException; +import org.json.JSONObject; + +/* + * 功能描述:得到类的简写名称存入字符串TAG中 + * 实现过程:调用getSimpleName ()函数 + */ +public class SqlData { + private static final String TAG = SqlData.class.getSimpleName(); + + private static final int INVALID_ID = -99999;//为mDataId置初始值-99999 + // 集合了interface DataColumns中所有SF常量 + public static final String[] PROJECTION_DATA = new String[] { + DataColumns.ID, DataColumns.MIME_TYPE, DataColumns.CONTENT, DataColumns.DATA1, + DataColumns.DATA3 + }; + //以下五个变量作为sql列表中的五列的序号 + public static final int DATA_ID_COLUMN = 0; + + public static final int DATA_MIME_TYPE_COLUMN = 1; + + public static final int DATA_CONTENT_COLUMN = 2; + + public static final int DATA_CONTENT_DATA_1_COLUMN = 3; + + public static final int DATA_CONTENT_DATA_3_COLUMN = 4; + //判断是否直接用Content生成,是为true,否则为false + private ContentResolver mContentResolver; + + private boolean mIsCreate; + + private long mDataId; + + private String mDataMimeType; + + private String mDataContent; + + private long mDataContentData1; + + private String mDataContentData3; + + private ContentValues mDiffDataValues; + /* + * 功能描述:构造函数,用于初始化数据 + * 参数注解:mContentResolver用于获取ContentProvider提供的数据 + * 参数注解: mIsCreate表征当前数据是用哪种方式创建(两种构造函数的参数不同) + */ + public SqlData(Context context) { + mContentResolver = context.getContentResolver(); + mIsCreate = true; + mDataId = INVALID_ID;//mDataId置初始值-99999 + mDataMimeType = DataConstants.NOTE; + mDataContent = ""; + mDataContentData1 = 0; + mDataContentData3 = ""; + mDiffDataValues = new ContentValues(); + } + /* + * 功能描述:构造函数,初始化数据 + * 参数注解:mContentResolver用于获取ContentProvider提供的数据 + * 参数注解: mIsCreate表征当前数据是用哪种方式创建(两种构造函数的参数不同) + */ + public SqlData(Context context, Cursor c) { + mContentResolver = context.getContentResolver(); + mIsCreate = false; + loadFromCursor(c); + mDiffDataValues = new ContentValues(); + } + /* + * 功能描述:从光标处加载数据 + * 从当前的光标处将五列的数据加载到该类的对象 + */ + private void loadFromCursor(Cursor c) { + mDataId = c.getLong(DATA_ID_COLUMN); + mDataMimeType = c.getString(DATA_MIME_TYPE_COLUMN); + mDataContent = c.getString(DATA_CONTENT_COLUMN); + mDataContentData1 = c.getLong(DATA_CONTENT_DATA_1_COLUMN); + mDataContentData3 = c.getString(DATA_CONTENT_DATA_3_COLUMN); + } + /* + * 功能描述:设置用于共享的数据,并提供异常抛出与处理机制 + */ + public void setContent(JSONObject js) throws JSONException { + //如果传入的JSONObject对象中有DataColumns.ID这一项,则设置,否则设为INVALID_ID + long dataId = js.has(DataColumns.ID) ? js.getLong(DataColumns.ID) : INVALID_ID; + if (mIsCreate || mDataId != dataId) { + mDiffDataValues.put(DataColumns.ID, dataId); + } + mDataId = dataId; + + String dataMimeType = js.has(DataColumns.MIME_TYPE) ? js.getString(DataColumns.MIME_TYPE) + : DataConstants.NOTE; + if (mIsCreate || !mDataMimeType.equals(dataMimeType)) { + mDiffDataValues.put(DataColumns.MIME_TYPE, dataMimeType); + } + mDataMimeType = dataMimeType; + + String dataContent = js.has(DataColumns.CONTENT) ? js.getString(DataColumns.CONTENT) : ""; + if (mIsCreate || !mDataContent.equals(dataContent)) { + mDiffDataValues.put(DataColumns.CONTENT, dataContent); + } + mDataContent = dataContent; + + long dataContentData1 = js.has(DataColumns.DATA1) ? js.getLong(DataColumns.DATA1) : 0; + if (mIsCreate || mDataContentData1 != dataContentData1) { + mDiffDataValues.put(DataColumns.DATA1, dataContentData1); + } + mDataContentData1 = dataContentData1; + + String dataContentData3 = js.has(DataColumns.DATA3) ? js.getString(DataColumns.DATA3) : ""; + if (mIsCreate || !mDataContentData3.equals(dataContentData3)) { + mDiffDataValues.put(DataColumns.DATA3, dataContentData3); + } + mDataContentData3 = dataContentData3; + } + /* + * 功能描述:获取共享的数据内容,并提供异常抛出与处理机制 + */ + public JSONObject getContent() throws JSONException { + if (mIsCreate) { + Log.e(TAG, "it seems that we haven't created this in database yet"); + return null; + } + //创建JSONObject对象。并将相关数据放入其中,并返回 + JSONObject js = new JSONObject(); + js.put(DataColumns.ID, mDataId); + js.put(DataColumns.MIME_TYPE, mDataMimeType); + js.put(DataColumns.CONTENT, mDataContent); + js.put(DataColumns.DATA1, mDataContentData1); + js.put(DataColumns.DATA3, mDataContentData3); + return js; + } + /* + * 功能描述:commit函数用于把当前造作所做的修改保存到数据库 + */ + public void commit(long noteId, boolean validateVersion, long version) { + + if (mIsCreate) { + if (mDataId == INVALID_ID && mDiffDataValues.containsKey(DataColumns.ID)) { + mDiffDataValues.remove(DataColumns.ID); + } + + mDiffDataValues.put(DataColumns.NOTE_ID, noteId); + Uri uri = mContentResolver.insert(Notes.CONTENT_DATA_URI, mDiffDataValues); + try { + mDataId = Long.valueOf(uri.getPathSegments().get(1)); + } catch (NumberFormatException e) { + Log.e(TAG, "Get note id error :" + e.toString()); + throw new ActionFailureException("create note failed"); + } + } else { + if (mDiffDataValues.size() > 0) { + int result = 0; + if (!validateVersion) { + result = mContentResolver.update(ContentUris.withAppendedId( + Notes.CONTENT_DATA_URI, mDataId), mDiffDataValues, null, null); + } else { + result = mContentResolver.update(ContentUris.withAppendedId( + Notes.CONTENT_DATA_URI, mDataId), mDiffDataValues, + " ? in (SELECT " + NoteColumns.ID + " FROM " + TABLE.NOTE + + " WHERE " + NoteColumns.VERSION + "=?)", new String[] { + String.valueOf(noteId), String.valueOf(version) + }); + } + if (result == 0) { + Log.w(TAG, "there is no update. maybe user updates note when syncing"); + } + } + } + + mDiffDataValues.clear(); + mIsCreate = false; + } + /* + * 功能描述:获取当前id + */ + public long getId() { + return mDataId; + } +} -- 2.34.1 From 79ea94afef4c5955d5e61027c77d7e6cedebeb4d Mon Sep 17 00:00:00 2001 From: wyf <18818870625@163.com> Date: Mon, 18 Dec 2023 23:18:43 +0800 Subject: [PATCH 04/11] 1 --- doc/AlarmAlertActivity.java | 202 ++++++++++++++++++++++++++++++++++++ doc/AlarmInitReceiver.java | 70 +++++++++++++ doc/AlarmReceiver.java | 32 ++++++ 3 files changed, 304 insertions(+) create mode 100644 doc/AlarmAlertActivity.java create mode 100644 doc/AlarmInitReceiver.java create mode 100644 doc/AlarmReceiver.java diff --git a/doc/AlarmAlertActivity.java b/doc/AlarmAlertActivity.java new file mode 100644 index 0000000..a153069 --- /dev/null +++ b/doc/AlarmAlertActivity.java @@ -0,0 +1,202 @@ +/* + * 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.ui; + +import android.app.Activity; +import android.app.AlertDialog; +import android.content.Context; +import android.content.DialogInterface; +import android.content.DialogInterface.OnClickListener; +import android.content.DialogInterface.OnDismissListener; +import android.content.Intent; +import android.media.AudioManager; +import android.media.MediaPlayer; +import android.media.RingtoneManager; +import android.net.Uri; +import android.os.Bundle; +import android.os.PowerManager; +import android.provider.Settings; +import android.view.Window; +import android.view.WindowManager; + +import net.micode.notes.R; +import net.micode.notes.data.Notes; +import net.micode.notes.tool.DataUtils; + +import java.io.IOException; + + +public class AlarmAlertActivity extends Activity implements OnClickListener, OnDismissListener { + private long mNoteId; + private String mSnippet; + private static final int SNIPPET_PREW_MAX_LEN = 60; + MediaPlayer mPlayer; + + @Override + protected void onCreate(Bundle savedInstanceState) { + //Bundle类型的数据与Map类型的数据相似,都是以key-value的形式存储数据的 + //onsaveInstanceState方法是用来保存Activity的状态的 + //能从onCreate的参数savedInsanceState中获得状态数据 + super.onCreate(savedInstanceState); + //界面显示——无标题 + requestWindowFeature(Window.FEATURE_NO_TITLE); + + final Window win = getWindow(); + win.addFlags(WindowManager.LayoutParams.FLAG_SHOW_WHEN_LOCKED); + + if (!isScreenOn()) { + win.addFlags( + //保持窗体点亮 + WindowManager.LayoutParams.FLAG_KEEP_SCREEN_ON + //将窗体点亮 + | WindowManager.LayoutParams.FLAG_TURN_SCREEN_ON + //允许窗体点亮时锁屏 + | WindowManager.LayoutParams.FLAG_ALLOW_LOCK_WHILE_SCREEN_ON + //在手机锁屏后如果到了闹钟提示时间,点亮屏幕 + | WindowManager.LayoutParams.FLAG_LAYOUT_INSET_DECOR); + } + + Intent intent = getIntent(); + + try { + //根据ID从数据库中获取标签的内容; + //getContentResolver()是实现数据共享,实例存储。 + mNoteId = Long.valueOf(intent.getData().getPathSegments().get(1)); + mSnippet = DataUtils.getSnippetById(this.getContentResolver(), mNoteId); + //判断标签片段是否达到符合长度 + mSnippet = mSnippet.length() > SNIPPET_PREW_MAX_LEN ? mSnippet.substring(0, + SNIPPET_PREW_MAX_LEN) + getResources().getString(R.string.notelist_string_info) + : mSnippet; + } + //异常处理:try如果有错误,就会返回所写异常的处理。 + catch (IllegalArgumentException e) { + e.printStackTrace(); + return; + } + + mPlayer = new MediaPlayer(); + if (DataUtils.visibleInNoteDatabase(getContentResolver(), mNoteId, Notes.TYPE_NOTE)) { + //弹出对话框 + showActionDialog(); + //闹钟提示音激发 + playAlarmSound(); + } else { + //完成闹钟动作 + finish(); + } + } + + private boolean isScreenOn() { + //判断屏幕是否锁屏,调用系统函数判断,最后返回值是布尔类型 + PowerManager pm = (PowerManager) getSystemService(Context.POWER_SERVICE); + return pm.isScreenOn(); + } + //闹钟提示音激发 + private void playAlarmSound() { + //调用系统的铃声管理URI,得到闹钟提示音 + Uri url = RingtoneManager.getActualDefaultRingtoneUri(this, RingtoneManager.TYPE_ALARM); + + int silentModeStreams = Settings.System.getInt(getContentResolver(), + Settings.System.MODE_RINGER_STREAMS_AFFECTED, 0); + + if ((silentModeStreams & (1 << AudioManager.STREAM_ALARM)) != 0) { + mPlayer.setAudioStreamType(silentModeStreams); + } else { + mPlayer.setAudioStreamType(AudioManager.STREAM_ALARM); + } + try { + //方法:setDataSource(Context context, Uri uri) + //解释:无返回值,设置多媒体数据来源【根据 Uri】 + mPlayer.setDataSource(this, url); + //准备同步 + mPlayer.prepare(); + //设置是否循环播放 + mPlayer.setLooping(true); + //开始播放 + mPlayer.start(); + } catch (IllegalArgumentException e) { + // TODO Auto-generated catch block + //e.printStackTrace()函数功能是抛出异常, 还将显示出更深的调用信息 + e.printStackTrace(); + } catch (SecurityException e) { + // TODO Auto-generated catch block + e.printStackTrace(); + } catch (IllegalStateException e) { + // TODO Auto-generated catch block + e.printStackTrace(); + } catch (IOException e) { + // TODO Auto-generated catch block + e.printStackTrace(); + } + } + + private void showActionDialog() { + //AlertDialog的构造方法全部是Protected的 + //所以不能直接通过new一个AlertDialog来创建出一个AlertDialog。 + //要创建一个AlertDialog,就要用到AlertDialog.Builder中的create()方法 + //如这里的dialog就是新建了一个AlertDialog + AlertDialog.Builder dialog = new AlertDialog.Builder(this); + //为对话框设置标题 + dialog.setTitle(R.string.app_name); + //为对话框设置内容 + dialog.setMessage(mSnippet); + //给对话框添加"Got it"按钮 + dialog.setPositiveButton(R.string.notealert_ok, this); + if (isScreenOn()) { + //对话框添加"Take a look"按钮 + dialog.setNegativeButton(R.string.notealert_enter, this); + } + dialog.show().setOnDismissListener(this); + } + + public void onClick(DialogInterface dialog, int which) { + //用which来选择click后下一步的操作 + switch (which) { + //取消操作 + case DialogInterface.BUTTON_NEGATIVE: + //实现两个类间的数据传输 + Intent intent = new Intent(this, NoteEditActivity.class); + //设置动作属性 + intent.setAction(Intent.ACTION_VIEW); + //实现key-value对,EXTRA_UID为key;mNoteId为键 + intent.putExtra(Intent.EXTRA_UID, mNoteId); + //开始动作 + startActivity(intent); + break; + default: + //确定操作 + break; + } + } + //忽略 + public void onDismiss(DialogInterface dialog) { + //停止闹钟声音 + stopAlarmSound(); + //完成该动作 + finish(); + } + + private void stopAlarmSound() { + if (mPlayer != null) { + //停止播放 + mPlayer.stop(); + //释放MediaPlayer对象 + mPlayer.release(); + mPlayer = null; + } + } +} diff --git a/doc/AlarmInitReceiver.java b/doc/AlarmInitReceiver.java new file mode 100644 index 0000000..0ae6daa --- /dev/null +++ b/doc/AlarmInitReceiver.java @@ -0,0 +1,70 @@ +/* + * 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.ui; + +import android.app.AlarmManager; +import android.app.PendingIntent; +import android.content.BroadcastReceiver; +import android.content.ContentUris; +import android.content.Context; +import android.content.Intent; +import android.database.Cursor; + +import net.micode.notes.data.Notes; +import net.micode.notes.data.Notes.NoteColumns; + + +public class AlarmInitReceiver extends BroadcastReceiver { + //对数据库的操作,调用标签ID和闹钟时间 + private static final String [] PROJECTION = new String [] { + NoteColumns.ID, + NoteColumns.ALERTED_DATE + }; + + private static final int COLUMN_ID = 0; + private static final int COLUMN_ALERTED_DATE = 1; + + @Override + public void onReceive(Context context, Intent intent) { + //System.currentTimeMillis()产生一个当前的毫秒 + //这个毫秒其实就是自1970年1月1日0时起的毫秒数 + long currentDate = System.currentTimeMillis(); + //将long变量currentDate转化为字符串 + //Cursor在这里的作用是通过查找数据库中的标签内容,找到和当前系统时间相等的标签 + Cursor c = context.getContentResolver().query(Notes.CONTENT_NOTE_URI, + PROJECTION, + NoteColumns.ALERTED_DATE + ">? AND " + NoteColumns.TYPE + "=" + Notes.TYPE_NOTE, + new String[] { String.valueOf(currentDate) }, + null); + + if (c != null) { + if (c.moveToFirst()) { + //跟据数据库里的闹钟时间创建一个闹钟机制 + do { + long alertDate = c.getLong(COLUMN_ALERTED_DATE); + Intent sender = new Intent(context, AlarmReceiver.class); + sender.setData(ContentUris.withAppendedId(Notes.CONTENT_NOTE_URI, c.getLong(COLUMN_ID))); + PendingIntent pendingIntent = PendingIntent.getBroadcast(context, 0, sender, 0); + AlarmManager alermManager = (AlarmManager) context + .getSystemService(Context.ALARM_SERVICE); + alermManager.set(AlarmManager.RTC_WAKEUP, alertDate, pendingIntent); + } while (c.moveToNext()); + } + c.close(); + } + } +} diff --git a/doc/AlarmReceiver.java b/doc/AlarmReceiver.java new file mode 100644 index 0000000..c1d757b --- /dev/null +++ b/doc/AlarmReceiver.java @@ -0,0 +1,32 @@ +/* + * 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.ui; + +import android.content.BroadcastReceiver; +import android.content.Context; +import android.content.Intent; +//这是实现alarm这个功能最接近用户层的包,基于上面的两个包 +public class AlarmReceiver extends BroadcastReceiver { + @Override + public void onReceive(Context context, Intent intent) { + //启动AlarmAlertActivity + intent.setClass(context, AlarmAlertActivity.class); + //新起一个栈装入启动的activity + intent.addFlags(Intent.FLAG_ACTIVITY_NEW_TASK); + context.startActivity(intent); + } +} -- 2.34.1 From 7538028fbadf1ea6ef8e1904e9933f0d82e44485 Mon Sep 17 00:00:00 2001 From: wyf <18818870625@163.com> Date: Wed, 20 Dec 2023 23:39:40 +0800 Subject: [PATCH 05/11] 1 --- doc/DateTimePicker.java | 507 ++++++++++++++++++++++++++++++++++++++++ 1 file changed, 507 insertions(+) create mode 100644 doc/DateTimePicker.java diff --git a/doc/DateTimePicker.java b/doc/DateTimePicker.java new file mode 100644 index 0000000..17090a4 --- /dev/null +++ b/doc/DateTimePicker.java @@ -0,0 +1,507 @@ +/* + * 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.ui; + +import java.text.DateFormatSymbols; +import java.util.Calendar; + +import net.micode.notes.R; + + +import android.content.Context; +import android.text.format.DateFormat; +import android.view.View; +import android.widget.FrameLayout; +import android.widget.NumberPicker; +//FrameLayout是布局模板之一 +public class DateTimePicker extends FrameLayout { + //初始化控件 + private static final boolean DEFAULT_ENABLE_STATE = true; + private static final int HOURS_IN_HALF_DAY = 12; + private static final int HOURS_IN_ALL_DAY = 24; + private static final int DAYS_IN_ALL_WEEK = 7; + private static final int DATE_SPINNER_MIN_VAL = 0; + private static final int DATE_SPINNER_MAX_VAL = DAYS_IN_ALL_WEEK - 1; + private static final int HOUR_SPINNER_MIN_VAL_24_HOUR_VIEW = 0; + private static final int HOUR_SPINNER_MAX_VAL_24_HOUR_VIEW = 23; + private static final int HOUR_SPINNER_MIN_VAL_12_HOUR_VIEW = 1; + private static final int HOUR_SPINNER_MAX_VAL_12_HOUR_VIEW = 12; + private static final int MINUT_SPINNER_MIN_VAL = 0; + private static final int MINUT_SPINNER_MAX_VAL = 59; + private static final int AMPM_SPINNER_MIN_VAL = 0; + private static final int AMPM_SPINNER_MAX_VAL = 1; + //NumberPicker是数字选择器 + //这里定义的四个变量全部是在设置闹钟时需要选择的变量(如日期、时、分、上午或者下午) + private final NumberPicker mDateSpinner; + private final NumberPicker mHourSpinner; + private final NumberPicker mMinuteSpinner; + private final NumberPicker mAmPmSpinner; + private Calendar mDate; + //定义了Calendar类型的变量mDate,用于操作时间 + private String[] mDateDisplayValues = new String[DAYS_IN_ALL_WEEK]; + + private boolean mIsAm; + + private boolean mIs24HourView; + + private boolean mIsEnabled = DEFAULT_ENABLE_STATE; + + private boolean mInitialising; + //OnValueChangeListener,这是时间改变监听器,这里主要是对日期的监听 + private OnDateTimeChangedListener mOnDateTimeChangedListener; + private NumberPicker.OnValueChangeListener mOnDateChangedListener = new NumberPicker.OnValueChangeListener() { + @Override + //将现在日期的值传递给mDate;updateDateControl是同步操作 + public void onValueChange(NumberPicker picker, int oldVal, int newVal) { + mDate.add(Calendar.DAY_OF_YEAR, newVal - oldVal); + updateDateControl(); + onDateTimeChanged(); + } + }; + //对小时(Hour)的监听 + private NumberPicker.OnValueChangeListener mOnHourChangedListener = new NumberPicker.OnValueChangeListener() { + @Override + public void onValueChange(NumberPicker picker, int oldVal, int newVal) { + boolean isDateChanged = false; + //声明一个Calendar的变量cal,便于后续的操作 + Calendar cal = Calendar.getInstance(); + if (!mIs24HourView) { + //这里是对于12小时制时,晚上11点和12点交替时对日期的更改 + if (!mIsAm && oldVal == HOURS_IN_HALF_DAY - 1 && newVal == HOURS_IN_HALF_DAY) { + cal.setTimeInMillis(mDate.getTimeInMillis()); + cal.add(Calendar.DAY_OF_YEAR, 1); + isDateChanged = true; + } + //这里是对于12小时制时,凌晨11点和12点交替时对日期的更改 + else if (mIsAm && oldVal == HOURS_IN_HALF_DAY && newVal == HOURS_IN_HALF_DAY - 1) { + cal.setTimeInMillis(mDate.getTimeInMillis()); + cal.add(Calendar.DAY_OF_YEAR, -1); + isDateChanged = true; + } + //这里是对于12小时制时,中午11点和12点交替时对AM和PM的更改 + if (oldVal == HOURS_IN_HALF_DAY - 1 && newVal == HOURS_IN_HALF_DAY || + oldVal == HOURS_IN_HALF_DAY && newVal == HOURS_IN_HALF_DAY - 1) { + mIsAm = !mIsAm; + updateAmPmControl(); + } + } else { + //这里是对于24小时制时,晚上11点和12点交替时对日期的更改 + if (oldVal == HOURS_IN_ALL_DAY - 1 && newVal == 0) { + cal.setTimeInMillis(mDate.getTimeInMillis()); + cal.add(Calendar.DAY_OF_YEAR, 1); + isDateChanged = true; + } + //这里是对于12小时制时,凌晨11点和12点交替时对日期的更改 + else if (oldVal == 0 && newVal == HOURS_IN_ALL_DAY - 1) { + cal.setTimeInMillis(mDate.getTimeInMillis()); + cal.add(Calendar.DAY_OF_YEAR, -1); + isDateChanged = true; + } + } + //通过数字选择器对newHour的赋值 + int newHour = mHourSpinner.getValue() % HOURS_IN_HALF_DAY + (mIsAm ? 0 : HOURS_IN_HALF_DAY); + //通过set函数将新的Hour值传给mDate + mDate.set(Calendar.HOUR_OF_DAY, newHour); + onDateTimeChanged(); + if (isDateChanged) { + setCurrentYear(cal.get(Calendar.YEAR)); + setCurrentMonth(cal.get(Calendar.MONTH)); + setCurrentDay(cal.get(Calendar.DAY_OF_MONTH)); + } + } + }; + //对分钟(Minute)改变的监听 + private NumberPicker.OnValueChangeListener mOnMinuteChangedListener = new NumberPicker.OnValueChangeListener() { + @Override + public void onValueChange(NumberPicker picker, int oldVal, int newVal) { + int minValue = mMinuteSpinner.getMinValue(); + int maxValue = mMinuteSpinner.getMaxValue(); + int offset = 0; + //设置offset,作为小时改变的一个记录数据 + if (oldVal == maxValue && newVal == minValue) { + offset += 1; + } else if (oldVal == minValue && newVal == maxValue) { + offset -= 1; + } + //如果原值为59,新值为0,则offset加1 + //如果原值为0,新值为59,则offset减1 + if (offset != 0) { + mDate.add(Calendar.HOUR_OF_DAY, offset); + mHourSpinner.setValue(getCurrentHour()); + updateDateControl(); + int newHour = getCurrentHourOfDay(); + if (newHour >= HOURS_IN_HALF_DAY) { + mIsAm = false; + updateAmPmControl(); + } else { + mIsAm = true; + updateAmPmControl(); + } + } + mDate.set(Calendar.MINUTE, newVal); + onDateTimeChanged(); + } + }; + //对AM和PM的监听 + private NumberPicker.OnValueChangeListener mOnAmPmChangedListener = new NumberPicker.OnValueChangeListener() { + @Override + public void onValueChange(NumberPicker picker, int oldVal, int newVal) { + mIsAm = !mIsAm; + if (mIsAm) { + mDate.add(Calendar.HOUR_OF_DAY, -HOURS_IN_HALF_DAY); + } else { + mDate.add(Calendar.HOUR_OF_DAY, HOURS_IN_HALF_DAY); + } + updateAmPmControl(); + onDateTimeChanged(); + } + }; + + public interface OnDateTimeChangedListener { + void onDateTimeChanged(DateTimePicker view, int year, int month, + int dayOfMonth, int hourOfDay, int minute); + } + //通过对数据库的访问,获取当前的系统时间 + public DateTimePicker(Context context) { + this(context, System.currentTimeMillis()); + } + //上面函数的得到的是一个天文数字(1970至今的秒数),需要DateFormat将其变得有意义 + public DateTimePicker(Context context, long date) { + this(context, date, DateFormat.is24HourFormat(context)); + } + + public DateTimePicker(Context context, long date, boolean is24HourView) { + //获取系统时间 + super(context); + mDate = Calendar.getInstance(); + mInitialising = true; + mIsAm = getCurrentHourOfDay() >= HOURS_IN_HALF_DAY; + inflate(context, R.layout.datetime_picker, this); + //如果当前Activity里用到别的layout,比如对话框layout + //还要设置这个layout上的其他组件的内容,就必须用inflate()方法先将对话框的layout找出来 + //然后再用findViewById()找到它上面的其它组件 + mDateSpinner = (NumberPicker) findViewById(R.id.date); + mDateSpinner.setMinValue(DATE_SPINNER_MIN_VAL); + mDateSpinner.setMaxValue(DATE_SPINNER_MAX_VAL); + mDateSpinner.setOnValueChangedListener(mOnDateChangedListener); + + mHourSpinner = (NumberPicker) findViewById(R.id.hour); + mHourSpinner.setOnValueChangedListener(mOnHourChangedListener); + mMinuteSpinner = (NumberPicker) findViewById(R.id.minute); + mMinuteSpinner.setMinValue(MINUT_SPINNER_MIN_VAL); + mMinuteSpinner.setMaxValue(MINUT_SPINNER_MAX_VAL); + mMinuteSpinner.setOnLongPressUpdateInterval(100); + mMinuteSpinner.setOnValueChangedListener(mOnMinuteChangedListener); + + String[] stringsForAmPm = new DateFormatSymbols().getAmPmStrings(); + mAmPmSpinner = (NumberPicker) findViewById(R.id.amPm); + mAmPmSpinner.setMinValue(AMPM_SPINNER_MIN_VAL); + mAmPmSpinner.setMaxValue(AMPM_SPINNER_MAX_VAL); + mAmPmSpinner.setDisplayedValues(stringsForAmPm); + mAmPmSpinner.setOnValueChangedListener(mOnAmPmChangedListener); + + // update controls to initial state + updateDateControl(); + updateHourControl(); + updateAmPmControl(); + + set24HourView(is24HourView); + + // set to current time + setCurrentDate(date); + + setEnabled(isEnabled()); + + // set the content descriptions + mInitialising = false; + } + + @Override + public void setEnabled(boolean enabled) { + if (mIsEnabled == enabled) { + return; + } + super.setEnabled(enabled); + mDateSpinner.setEnabled(enabled); + mMinuteSpinner.setEnabled(enabled); + mHourSpinner.setEnabled(enabled); + mAmPmSpinner.setEnabled(enabled); + mIsEnabled = enabled; + } + + @Override + public boolean isEnabled() { + return mIsEnabled; + } + + /** + * Get the current date in millis + * + * @return the current date in millis + */ + //实现函数——得到当前的秒数 + public long getCurrentDateInTimeMillis() { + return mDate.getTimeInMillis(); + } + + /** + * Set the current date + * + * @param date The current date in millis + */ + //实现函数功能——设置当前的时间,参数是date + public void setCurrentDate(long date) { + Calendar cal = Calendar.getInstance(); + cal.setTimeInMillis(date); + setCurrentDate(cal.get(Calendar.YEAR), cal.get(Calendar.MONTH), cal.get(Calendar.DAY_OF_MONTH), + cal.get(Calendar.HOUR_OF_DAY), cal.get(Calendar.MINUTE)); + } + + /** + * Set the current date + * + * @param year The current year + * @param month The current month + * @param dayOfMonth The current dayOfMonth + * @param hourOfDay The current hourOfDay + * @param minute The current minute + */ + //实现函数功能——设置当前的时间,参数是各详细的变量 + public void setCurrentDate(int year, int month, + int dayOfMonth, int hourOfDay, int minute) { + setCurrentYear(year); + setCurrentMonth(month); + setCurrentDay(dayOfMonth); + setCurrentHour(hourOfDay); + setCurrentMinute(minute); + } + + /** + * Get current year + * + * @return The current year + */ + //得到year、month、day等值 + public int getCurrentYear() { + return mDate.get(Calendar.YEAR); + } + + /** + * Set current year + * + * @param year The current year + */ + public void setCurrentYear(int year) { + if (!mInitialising && year == getCurrentYear()) { + return; + } + mDate.set(Calendar.YEAR, year); + updateDateControl(); + onDateTimeChanged(); + } + + /** + * Get current month in the year + * + * @return The current month in the year + */ + public int getCurrentMonth() { + return mDate.get(Calendar.MONTH); + } + + /** + * Set current month in the year + * + * @param month The month in the year + */ + public void setCurrentMonth(int month) { + if (!mInitialising && month == getCurrentMonth()) { + return; + } + mDate.set(Calendar.MONTH, month); + updateDateControl(); + onDateTimeChanged(); + } + + /** + * Get current day of the month + * + * @return The day of the month + */ + public int getCurrentDay() { + return mDate.get(Calendar.DAY_OF_MONTH); + } + + /** + * Set current day of the month + * + * @param dayOfMonth The day of the month + */ + public void setCurrentDay(int dayOfMonth) { + if (!mInitialising && dayOfMonth == getCurrentDay()) { + return; + } + mDate.set(Calendar.DAY_OF_MONTH, dayOfMonth); + updateDateControl(); + onDateTimeChanged(); + } + + /** + * Get current hour in 24 hour mode, in the range (0~23) + * @return The current hour in 24 hour mode + */ + public int getCurrentHourOfDay() { + return mDate.get(Calendar.HOUR_OF_DAY); + } + + private int getCurrentHour() { + if (mIs24HourView){ + return getCurrentHourOfDay(); + } else { + int hour = getCurrentHourOfDay(); + if (hour > HOURS_IN_HALF_DAY) { + return hour - HOURS_IN_HALF_DAY; + } else { + return hour == 0 ? HOURS_IN_HALF_DAY : hour; + } + } + } + + /** + * Set current hour in 24 hour mode, in the range (0~23) + * + * @param hourOfDay + */ + public void setCurrentHour(int hourOfDay) { + if (!mInitialising && hourOfDay == getCurrentHourOfDay()) { + return; + } + mDate.set(Calendar.HOUR_OF_DAY, hourOfDay); + if (!mIs24HourView) { + if (hourOfDay >= HOURS_IN_HALF_DAY) { + mIsAm = false; + if (hourOfDay > HOURS_IN_HALF_DAY) { + hourOfDay -= HOURS_IN_HALF_DAY; + } + } else { + mIsAm = true; + if (hourOfDay == 0) { + hourOfDay = HOURS_IN_HALF_DAY; + } + } + updateAmPmControl(); + } + mHourSpinner.setValue(hourOfDay); + onDateTimeChanged(); + } + + /** + * Get currentMinute + * + * @return The Current Minute + */ + public int getCurrentMinute() { + return mDate.get(Calendar.MINUTE); + } + + /** + * Set current minute + */ + public void setCurrentMinute(int minute) { + if (!mInitialising && minute == getCurrentMinute()) { + return; + } + mMinuteSpinner.setValue(minute); + mDate.set(Calendar.MINUTE, minute); + onDateTimeChanged(); + } + + /** + * @return true if this is in 24 hour view else false. + */ + public boolean is24HourView () { + return mIs24HourView; + } + + /** + * Set whether in 24 hour or AM/PM mode. + * + * @param is24HourView True for 24 hour mode. False for AM/PM mode. + */ + public void set24HourView(boolean is24HourView) { + if (mIs24HourView == is24HourView) { + return; + } + mIs24HourView = is24HourView; + mAmPmSpinner.setVisibility(is24HourView ? View.GONE : View.VISIBLE); + int hour = getCurrentHourOfDay(); + updateHourControl(); + setCurrentHour(hour); + updateAmPmControl(); + } + // 对于星期几的算法 + private void updateDateControl() { + Calendar cal = Calendar.getInstance(); + cal.setTimeInMillis(mDate.getTimeInMillis()); + cal.add(Calendar.DAY_OF_YEAR, -DAYS_IN_ALL_WEEK / 2 - 1); + mDateSpinner.setDisplayedValues(null); + for (int i = 0; i < DAYS_IN_ALL_WEEK; ++i) { + cal.add(Calendar.DAY_OF_YEAR, 1); + mDateDisplayValues[i] = (String) DateFormat.format("MM.dd EEEE", cal); + } + mDateSpinner.setDisplayedValues(mDateDisplayValues); + mDateSpinner.setValue(DAYS_IN_ALL_WEEK / 2); + mDateSpinner.invalidate(); + } + + private void updateAmPmControl() { + if (mIs24HourView) { + mAmPmSpinner.setVisibility(View.GONE); + } + // 对于上下午操作的算法 + else { + int index = mIsAm ? Calendar.AM : Calendar.PM; + mAmPmSpinner.setValue(index); + mAmPmSpinner.setVisibility(View.VISIBLE); + } + } + //对与小时的算法 + private void updateHourControl() { + if (mIs24HourView) { + mHourSpinner.setMinValue(HOUR_SPINNER_MIN_VAL_24_HOUR_VIEW); + mHourSpinner.setMaxValue(HOUR_SPINNER_MAX_VAL_24_HOUR_VIEW); + } else { + mHourSpinner.setMinValue(HOUR_SPINNER_MIN_VAL_12_HOUR_VIEW); + mHourSpinner.setMaxValue(HOUR_SPINNER_MAX_VAL_12_HOUR_VIEW); + } + } + + /** + * Set the callback that indicates the 'Set' button has been pressed. + * @param callback the callback, if null will do nothing + */ + public void setOnDateTimeChangedListener(OnDateTimeChangedListener callback) { + mOnDateTimeChangedListener = callback; + } + + private void onDateTimeChanged() { + if (mOnDateTimeChangedListener != null) { + mOnDateTimeChangedListener.onDateTimeChanged(this, getCurrentYear(), + getCurrentMonth(), getCurrentDay(), getCurrentHourOfDay(), getCurrentMinute()); + } + } +} -- 2.34.1 From 783330abeec9684ad224d3524f31c00b966101af Mon Sep 17 00:00:00 2001 From: wyf <18818870625@163.com> Date: Sat, 23 Dec 2023 11:23:19 +0800 Subject: [PATCH 06/11] =?UTF-8?q?=E4=BF=AE=E6=94=B9=E5=90=8E?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- doc/AlarmAlertActivity.java | 162 +++++++++++++++++++----------------- 1 file changed, 86 insertions(+), 76 deletions(-) diff --git a/doc/AlarmAlertActivity.java b/doc/AlarmAlertActivity.java index a153069..bc87d93 100644 --- a/doc/AlarmAlertActivity.java +++ b/doc/AlarmAlertActivity.java @@ -39,76 +39,79 @@ import net.micode.notes.tool.DataUtils; import java.io.IOException; - public class AlarmAlertActivity extends Activity implements OnClickListener, OnDismissListener { private long mNoteId; private String mSnippet; private static final int SNIPPET_PREW_MAX_LEN = 60; MediaPlayer mPlayer; - + /** + * @method: onCreate + * @description: 创建闹钟操作 + * @date: 2023/12/23 10:50 + * @author: wyf + * @param: void + * @return: void + */ @Override protected void onCreate(Bundle savedInstanceState) { - //Bundle类型的数据与Map类型的数据相似,都是以key-value的形式存储数据的 - //onsaveInstanceState方法是用来保存Activity的状态的 - //能从onCreate的参数savedInsanceState中获得状态数据 super.onCreate(savedInstanceState); - //界面显示——无标题 - requestWindowFeature(Window.FEATURE_NO_TITLE); - + requestWindowFeature(Window.FEATURE_NO_TITLE);//界面显示——无标题 final Window win = getWindow(); win.addFlags(WindowManager.LayoutParams.FLAG_SHOW_WHEN_LOCKED); if (!isScreenOn()) { win.addFlags( - //保持窗体点亮 - WindowManager.LayoutParams.FLAG_KEEP_SCREEN_ON - //将窗体点亮 - | WindowManager.LayoutParams.FLAG_TURN_SCREEN_ON - //允许窗体点亮时锁屏 - | WindowManager.LayoutParams.FLAG_ALLOW_LOCK_WHILE_SCREEN_ON - //在手机锁屏后如果到了闹钟提示时间,点亮屏幕 - | WindowManager.LayoutParams.FLAG_LAYOUT_INSET_DECOR); + WindowManager.LayoutParams.FLAG_KEEP_SCREEN_ON//保持窗体点亮 + | WindowManager.LayoutParams.FLAG_TURN_SCREEN_ON//将窗体点亮 + | WindowManager.LayoutParams.FLAG_ALLOW_LOCK_WHILE_SCREEN_ON//允许窗体点亮时锁屏 + | WindowManager.LayoutParams.FLAG_LAYOUT_INSET_DECOR); //在手机锁屏后如果到了闹钟提示时间,点亮屏幕 } Intent intent = getIntent(); try { - //根据ID从数据库中获取标签的内容; - //getContentResolver()是实现数据共享,实例存储。 - mNoteId = Long.valueOf(intent.getData().getPathSegments().get(1)); + mNoteId = Long.valueOf(intent.getData().getPathSegments().get(1)); //根据ID从数据库中获取标签的内容,getContentResolver()是实现数据共享,实例存储。 mSnippet = DataUtils.getSnippetById(this.getContentResolver(), mNoteId); - //判断标签片段是否达到符合长度 mSnippet = mSnippet.length() > SNIPPET_PREW_MAX_LEN ? mSnippet.substring(0, SNIPPET_PREW_MAX_LEN) + getResources().getString(R.string.notelist_string_info) - : mSnippet; + : mSnippet; //判断标签片段是否达到符合长度 } //异常处理:try如果有错误,就会返回所写异常的处理。 catch (IllegalArgumentException e) { e.printStackTrace(); return; } - mPlayer = new MediaPlayer(); if (DataUtils.visibleInNoteDatabase(getContentResolver(), mNoteId, Notes.TYPE_NOTE)) { - //弹出对话框 - showActionDialog(); - //闹钟提示音激发 - playAlarmSound(); + showActionDialog();//弹出对话框 + playAlarmSound();//闹钟提示音激发 } else { - //完成闹钟动作 - finish(); + finish();//完成闹钟动作 } } - + /** + * @method: isScreenOn + * @description: 判断是否锁屏 + * @date: 2023/12/23 10:56 + * @author: wyf + * @param: void + * @return: void + */ private boolean isScreenOn() { //判断屏幕是否锁屏,调用系统函数判断,最后返回值是布尔类型 PowerManager pm = (PowerManager) getSystemService(Context.POWER_SERVICE); return pm.isScreenOn(); } - //闹钟提示音激发 + /** + * @method playAlarmSound + * @description: 播放闹钟提示音 + * @date: 2023/12/23 10:58 + * @author: wyf + * @param: void + * @return: void + */ private void playAlarmSound() { - //调用系统的铃声管理URI,得到闹钟提示音 - Uri url = RingtoneManager.getActualDefaultRingtoneUri(this, RingtoneManager.TYPE_ALARM); + Uri url = RingtoneManager.getActualDefaultRingtoneUri(this, RingtoneManager.TYPE_ALARM);//调用系统的铃声管理URI,得到闹钟提示音 int silentModeStreams = Settings.System.getInt(getContentResolver(), Settings.System.MODE_RINGER_STREAMS_AFFECTED, 0); @@ -119,19 +122,13 @@ public class AlarmAlertActivity extends Activity implements OnClickListener, OnD mPlayer.setAudioStreamType(AudioManager.STREAM_ALARM); } try { - //方法:setDataSource(Context context, Uri uri) - //解释:无返回值,设置多媒体数据来源【根据 Uri】 - mPlayer.setDataSource(this, url); - //准备同步 - mPlayer.prepare(); - //设置是否循环播放 - mPlayer.setLooping(true); - //开始播放 - mPlayer.start(); + mPlayer.setDataSource(this, url);//解释:无返回值,设置多媒体数据来源【根据 Uri】 + mPlayer.prepare();//准备同步 + mPlayer.setLooping(true);//设置是否循环播放 + mPlayer.start();//开始播放 } catch (IllegalArgumentException e) { // TODO Auto-generated catch block - //e.printStackTrace()函数功能是抛出异常, 还将显示出更深的调用信息 - e.printStackTrace(); + e.printStackTrace();//e.printStackTrace()函数功能是抛出异常, 还将显示出更深的调用信息 } catch (SecurityException e) { // TODO Auto-generated catch block e.printStackTrace(); @@ -143,59 +140,72 @@ public class AlarmAlertActivity extends Activity implements OnClickListener, OnD e.printStackTrace(); } } - + /** + * @method showActionDialog + * @description 设置对话框 + * @date: 2023/12/23 11:13 + * @author: wyf + * @param: void + * @return: void + */ private void showActionDialog() { //AlertDialog的构造方法全部是Protected的 //所以不能直接通过new一个AlertDialog来创建出一个AlertDialog。 //要创建一个AlertDialog,就要用到AlertDialog.Builder中的create()方法 //如这里的dialog就是新建了一个AlertDialog AlertDialog.Builder dialog = new AlertDialog.Builder(this); - //为对话框设置标题 - dialog.setTitle(R.string.app_name); - //为对话框设置内容 - dialog.setMessage(mSnippet); - //给对话框添加"Got it"按钮 - dialog.setPositiveButton(R.string.notealert_ok, this); + dialog.setTitle(R.string.app_name);//为对话框设置标题 + dialog.setMessage(mSnippet); //为对话框设置内容 + dialog.setPositiveButton(R.string.notealert_ok, this);//给对话框添加"Yes"按钮 if (isScreenOn()) { - //对话框添加"Take a look"按钮 - dialog.setNegativeButton(R.string.notealert_enter, this); + dialog.setNegativeButton(R.string.notealert_enter, this);//对话框添加"No"按钮 } dialog.show().setOnDismissListener(this); } - + /** + * @method onClick + * @description 确定点击后的动作 + * @date: 2023/12/23 11:18 + * @author: wyf + * @param: void + * @return: void + */ public void onClick(DialogInterface dialog, int which) { - //用which来选择click后下一步的操作 - switch (which) { - //取消操作 - case DialogInterface.BUTTON_NEGATIVE: - //实现两个类间的数据传输 - Intent intent = new Intent(this, NoteEditActivity.class); - //设置动作属性 - intent.setAction(Intent.ACTION_VIEW); - //实现key-value对,EXTRA_UID为key;mNoteId为键 - intent.putExtra(Intent.EXTRA_UID, mNoteId); - //开始动作 - startActivity(intent); + switch (which) {//用which来选择click后下一步的操作 + case DialogInterface.BUTTON_NEGATIVE://取消操作 + Intent intent = new Intent(this, NoteEditActivity.class); //实现两个类间的数据传输 + intent.setAction(Intent.ACTION_VIEW);//设置动作属性 + intent.putExtra(Intent.EXTRA_UID, mNoteId);//实现key-value对,EXTRA_UID为key;mNoteId为键 + startActivity(intent);//开始动作 break; default: - //确定操作 break; } } - //忽略 + /** + * @method onDismiss + * @description 关闭闹钟 + * @date: 2023/12/23 11:17 + * @author: wyf + * @param: void + * @return: void + */ public void onDismiss(DialogInterface dialog) { - //停止闹钟声音 - stopAlarmSound(); - //完成该动作 - finish(); + stopAlarmSound(); //停止闹钟声音 + finish();//完成该动作 } - + /** + * @method stopAlarmSound + * @description 停止闹钟声音 + * @date: 2023/12/23 11:20 + * @author: wyf + * @param: void + * @return: void + */ private void stopAlarmSound() { if (mPlayer != null) { - //停止播放 - mPlayer.stop(); - //释放MediaPlayer对象 - mPlayer.release(); + mPlayer.stop();//停止播放 + mPlayer.release();//释放MediaPlayer对象 mPlayer = null; } } -- 2.34.1 From fed8ca6c38afecbb1c674c27f0882d614dfdc841 Mon Sep 17 00:00:00 2001 From: wyf <18818870625@163.com> Date: Sun, 24 Dec 2023 17:59:42 +0800 Subject: [PATCH 07/11] =?UTF-8?q?=E4=BE=9D=E6=A8=A1=E6=9D=BF=E4=BF=AE?= =?UTF-8?q?=E6=94=B9=E5=90=8E?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- doc/AlarmAlertActivity.java | 14 +- doc/AlarmInitReceiver.java | 26 ++- doc/AlarmReceiver.java | 17 +- doc/DateTimePicker.java | 201 ++++++++++++++---- ...泛读报告-吴一凡-202112509022.docx | Bin 99748 -> 0 bytes ...泛读报告-张林浩-202112509029.docx | Bin 513736 -> 0 bytes ...码泛读报告-肖帆-202112509023.docx | Bin 20173 -> 0 bytes 7 files changed, 200 insertions(+), 58 deletions(-) delete mode 100644 doc/小米便签开源代码泛读报告-吴一凡-202112509022.docx delete mode 100644 doc/小米便签开源代码泛读报告-张林浩-202112509029.docx delete mode 100644 doc/小米便签开源代码泛读报告-肖帆-202112509023.docx diff --git a/doc/AlarmAlertActivity.java b/doc/AlarmAlertActivity.java index bc87d93..036da48 100644 --- a/doc/AlarmAlertActivity.java +++ b/doc/AlarmAlertActivity.java @@ -49,7 +49,7 @@ public class AlarmAlertActivity extends Activity implements OnClickListener, OnD * @description: 创建闹钟操作 * @date: 2023/12/23 10:50 * @author: wyf - * @param: void + * @param: bundle * @return: void */ @Override @@ -94,7 +94,7 @@ public class AlarmAlertActivity extends Activity implements OnClickListener, OnD * @description: 判断是否锁屏 * @date: 2023/12/23 10:56 * @author: wyf - * @param: void + * @param: null * @return: void */ private boolean isScreenOn() { @@ -107,7 +107,7 @@ public class AlarmAlertActivity extends Activity implements OnClickListener, OnD * @description: 播放闹钟提示音 * @date: 2023/12/23 10:58 * @author: wyf - * @param: void + * @param: null * @return: void */ private void playAlarmSound() { @@ -145,7 +145,7 @@ public class AlarmAlertActivity extends Activity implements OnClickListener, OnD * @description 设置对话框 * @date: 2023/12/23 11:13 * @author: wyf - * @param: void + * @param: null * @return: void */ private void showActionDialog() { @@ -167,7 +167,7 @@ public class AlarmAlertActivity extends Activity implements OnClickListener, OnD * @description 确定点击后的动作 * @date: 2023/12/23 11:18 * @author: wyf - * @param: void + * @param: interface\int * @return: void */ public void onClick(DialogInterface dialog, int which) { @@ -187,7 +187,7 @@ public class AlarmAlertActivity extends Activity implements OnClickListener, OnD * @description 关闭闹钟 * @date: 2023/12/23 11:17 * @author: wyf - * @param: void + * @param: interface * @return: void */ public void onDismiss(DialogInterface dialog) { @@ -199,7 +199,7 @@ public class AlarmAlertActivity extends Activity implements OnClickListener, OnD * @description 停止闹钟声音 * @date: 2023/12/23 11:20 * @author: wyf - * @param: void + * @param: null * @return: void */ private void stopAlarmSound() { diff --git a/doc/AlarmInitReceiver.java b/doc/AlarmInitReceiver.java index 0ae6daa..28e9246 100644 --- a/doc/AlarmInitReceiver.java +++ b/doc/AlarmInitReceiver.java @@ -23,11 +23,19 @@ import android.content.ContentUris; import android.content.Context; import android.content.Intent; import android.database.Cursor; +import android.os.Bundle; import net.micode.notes.data.Notes; import net.micode.notes.data.Notes.NoteColumns; - +/** + * @ProjectName: Alarm + * @Package: net.micode.notes.ui + * @ClassName: AlarmInitReceiver + * @Description: 确定时间,构建闹钟 + * @Author: wyf + * @CreateDate: 2023/12/24 16:53 + */ public class AlarmInitReceiver extends BroadcastReceiver { //对数据库的操作,调用标签ID和闹钟时间 private static final String [] PROJECTION = new String [] { @@ -37,12 +45,17 @@ public class AlarmInitReceiver extends BroadcastReceiver { private static final int COLUMN_ID = 0; private static final int COLUMN_ALERTED_DATE = 1; - + /** + * @method: onReceive + * @description:获取闹钟时间并创建闹钟 + * @date: 2023/12/24 17:23 + * @author: wyf + * @param: class + * @return: void + */ @Override public void onReceive(Context context, Intent intent) { - //System.currentTimeMillis()产生一个当前的毫秒 - //这个毫秒其实就是自1970年1月1日0时起的毫秒数 - long currentDate = System.currentTimeMillis(); + long currentDate = System.currentTimeMillis();//System.currentTimeMillis()产生一个当前的毫秒,这个毫秒其实就是自1970年1月1日0时起的毫秒数 //将long变量currentDate转化为字符串 //Cursor在这里的作用是通过查找数据库中的标签内容,找到和当前系统时间相等的标签 Cursor c = context.getContentResolver().query(Notes.CONTENT_NOTE_URI, @@ -53,8 +66,7 @@ public class AlarmInitReceiver extends BroadcastReceiver { if (c != null) { if (c.moveToFirst()) { - //跟据数据库里的闹钟时间创建一个闹钟机制 - do { + do {//跟据数据库里的闹钟时间创建一个闹钟机制 long alertDate = c.getLong(COLUMN_ALERTED_DATE); Intent sender = new Intent(context, AlarmReceiver.class); sender.setData(ContentUris.withAppendedId(Notes.CONTENT_NOTE_URI, c.getLong(COLUMN_ID))); diff --git a/doc/AlarmReceiver.java b/doc/AlarmReceiver.java index c1d757b..0d91473 100644 --- a/doc/AlarmReceiver.java +++ b/doc/AlarmReceiver.java @@ -19,9 +19,24 @@ package net.micode.notes.ui; import android.content.BroadcastReceiver; import android.content.Context; import android.content.Intent; -//这是实现alarm这个功能最接近用户层的包,基于上面的两个包 +/** + * @ProjectName: Alarm + * @Package: net.micode.notes.ui + * @ClassName: AlarmReceiver + * @Description: 闹钟用户层的包 + * @Author: wyf + * @CreateDate: 2023/12/24 17:04 + */ public class AlarmReceiver extends BroadcastReceiver { @Override + /** + * @method: onReceive + * @description:启动闹钟程序 + * @date: 17:25 + * @author: wyf + * @param: class + * @return: void + */ public void onReceive(Context context, Intent intent) { //启动AlarmAlertActivity intent.setClass(context, AlarmAlertActivity.class); diff --git a/doc/DateTimePicker.java b/doc/DateTimePicker.java index 17090a4..18a58ef 100644 --- a/doc/DateTimePicker.java +++ b/doc/DateTimePicker.java @@ -27,9 +27,16 @@ import android.text.format.DateFormat; import android.view.View; import android.widget.FrameLayout; import android.widget.NumberPicker; -//FrameLayout是布局模板之一 +/** + * @ProjectName: DateTime + * @Package: net.micode.notes.ui + * @ClassName: DateTimePicker + * @Description: 对日期等数据模板进行初始化 + * @Author: wyf + * @CreateDate: 2023/12/24 17:06 + */ public class DateTimePicker extends FrameLayout { - //初始化控件 + //各变量的初始化控件,变量代表含义可通过变量名获得 private static final boolean DEFAULT_ENABLE_STATE = true; private static final int HOURS_IN_HALF_DAY = 12; private static final int HOURS_IN_ALL_DAY = 24; @@ -50,8 +57,7 @@ public class DateTimePicker extends FrameLayout { private final NumberPicker mHourSpinner; private final NumberPicker mMinuteSpinner; private final NumberPicker mAmPmSpinner; - private Calendar mDate; - //定义了Calendar类型的变量mDate,用于操作时间 + private Calendar mDate;//定义了Calendar类型的变量mDate,用于操作时间 private String[] mDateDisplayValues = new String[DAYS_IN_ALL_WEEK]; private boolean mIsAm; @@ -61,20 +67,35 @@ public class DateTimePicker extends FrameLayout { private boolean mIsEnabled = DEFAULT_ENABLE_STATE; private boolean mInitialising; - //OnValueChangeListener,这是时间改变监听器,这里主要是对日期的监听 - private OnDateTimeChangedListener mOnDateTimeChangedListener; + + private OnDateTimeChangedListener mOnDateTimeChangedListener; //OnValueChangeListener,这是时间改变监听器,这里主要是对日期的监听 private NumberPicker.OnValueChangeListener mOnDateChangedListener = new NumberPicker.OnValueChangeListener() { @Override - //将现在日期的值传递给mDate;updateDateControl是同步操作 + /** + * @method: onValueChange + * @description:获取日期信息 + * @date: 2023/12/24 17:15 + * @author: wyf + * @param: int + * @return: void + */ public void onValueChange(NumberPicker picker, int oldVal, int newVal) { - mDate.add(Calendar.DAY_OF_YEAR, newVal - oldVal); - updateDateControl(); + mDate.add(Calendar.DAY_OF_YEAR, newVal - oldVal); //将现在日期的值传递给mDate + updateDateControl();//updateDateControl是同步操作 onDateTimeChanged(); } }; //对小时(Hour)的监听 private NumberPicker.OnValueChangeListener mOnHourChangedListener = new NumberPicker.OnValueChangeListener() { @Override + /** + * @method: onValueChange + * @description: + * @date: 2023/12/24 17:16 + * @author: wyf + * @param: class\int + * @return: void + */ public void onValueChange(NumberPicker picker, int oldVal, int newVal) { boolean isDateChanged = false; //声明一个Calendar的变量cal,便于后续的操作 @@ -112,10 +133,8 @@ public class DateTimePicker extends FrameLayout { isDateChanged = true; } } - //通过数字选择器对newHour的赋值 - int newHour = mHourSpinner.getValue() % HOURS_IN_HALF_DAY + (mIsAm ? 0 : HOURS_IN_HALF_DAY); - //通过set函数将新的Hour值传给mDate - mDate.set(Calendar.HOUR_OF_DAY, newHour); + int newHour = mHourSpinner.getValue() % HOURS_IN_HALF_DAY + (mIsAm ? 0 : HOURS_IN_HALF_DAY);//通过数字选择器对newHour的赋值 + mDate.set(Calendar.HOUR_OF_DAY, newHour);//通过set函数将新的Hour值传给mDate onDateTimeChanged(); if (isDateChanged) { setCurrentYear(cal.get(Calendar.YEAR)); @@ -127,18 +146,23 @@ public class DateTimePicker extends FrameLayout { //对分钟(Minute)改变的监听 private NumberPicker.OnValueChangeListener mOnMinuteChangedListener = new NumberPicker.OnValueChangeListener() { @Override + /** + * @method: onValueChange + * @description:对分钟进行修改 + * @date: 2023/12/24 17:27 + * @author: wyf + * @param: class\int + * @return: void + */ public void onValueChange(NumberPicker picker, int oldVal, int newVal) { int minValue = mMinuteSpinner.getMinValue(); int maxValue = mMinuteSpinner.getMaxValue(); - int offset = 0; - //设置offset,作为小时改变的一个记录数据 + int offset = 0; //设置offset,作为小时改变的一个记录数据 if (oldVal == maxValue && newVal == minValue) { - offset += 1; + offset += 1; //如果原值为59,新值为0,则offset加1 } else if (oldVal == minValue && newVal == maxValue) { - offset -= 1; + offset -= 1;//如果原值为0,新值为59,则offset减1 } - //如果原值为59,新值为0,则offset加1 - //如果原值为0,新值为59,则offset减1 if (offset != 0) { mDate.add(Calendar.HOUR_OF_DAY, offset); mHourSpinner.setValue(getCurrentHour()); @@ -159,6 +183,14 @@ public class DateTimePicker extends FrameLayout { //对AM和PM的监听 private NumberPicker.OnValueChangeListener mOnAmPmChangedListener = new NumberPicker.OnValueChangeListener() { @Override + /** + * @method: onValueChange + * @description:对AM和PM进行修改 + * @date: 2023/12/24 17:29 + * @author: wyf + * @param: class\int + * @return: void + */ public void onValueChange(NumberPicker picker, int oldVal, int newVal) { mIsAm = !mIsAm; if (mIsAm) { @@ -175,18 +207,15 @@ public class DateTimePicker extends FrameLayout { void onDateTimeChanged(DateTimePicker view, int year, int month, int dayOfMonth, int hourOfDay, int minute); } - //通过对数据库的访问,获取当前的系统时间 public DateTimePicker(Context context) { - this(context, System.currentTimeMillis()); + this(context, System.currentTimeMillis());//通过对数据库的访问,获取当前的系统时间 } - //上面函数的得到的是一个天文数字(1970至今的秒数),需要DateFormat将其变得有意义 public DateTimePicker(Context context, long date) { - this(context, date, DateFormat.is24HourFormat(context)); + this(context, date, DateFormat.is24HourFormat(context));//得到的是一个天文数字(1970至今的秒数),需要DateFormat将其变得有意义 } public DateTimePicker(Context context, long date, boolean is24HourView) { - //获取系统时间 - super(context); + super(context);//获取系统时间 mDate = Calendar.getInstance(); mInitialising = true; mIsAm = getCurrentHourOfDay() >= HOURS_IN_HALF_DAY; @@ -229,7 +258,6 @@ public class DateTimePicker extends FrameLayout { // set the content descriptions mInitialising = false; } - @Override public void setEnabled(boolean enabled) { if (mIsEnabled == enabled) { @@ -253,17 +281,23 @@ public class DateTimePicker extends FrameLayout { * * @return the current date in millis */ - //实现函数——得到当前的秒数 public long getCurrentDateInTimeMillis() { return mDate.getTimeInMillis(); - } + }//实现函数——得到当前的秒数 /** * Set the current date * * @param date The current date in millis */ - //实现函数功能——设置当前的时间,参数是date + /** + * @method: setCurrentDate + * @description:设置当前时间(以date为参数) + * @date: 2023/12/24 17:36 + * @author: wyf + * @param: long + * @return: void + */ public void setCurrentDate(long date) { Calendar cal = Calendar.getInstance(); cal.setTimeInMillis(date); @@ -280,7 +314,14 @@ public class DateTimePicker extends FrameLayout { * @param hourOfDay The current hourOfDay * @param minute The current minute */ - //实现函数功能——设置当前的时间,参数是各详细的变量 + /** + * @method: setCurrentDate + * @description:设置当前时间(以各项数据为参数) + * @date: 2023/12/24 17:39 + * @author: wyf + * @param: int + * @return: void + */ public void setCurrentDate(int year, int month, int dayOfMonth, int hourOfDay, int minute) { setCurrentYear(year); @@ -295,16 +336,22 @@ public class DateTimePicker extends FrameLayout { * * @return The current year */ - //得到year、month、day等值 public int getCurrentYear() { return mDate.get(Calendar.YEAR); - } - + }//得到year、month、day等值 /** * Set current year * * @param year The current year */ + /** + * @method: setCurrentYear + * @description:设置年的数据 + * @date: 2023/12/24 17:45 + * @author: wyf + * @param: int + * @return: void + */ public void setCurrentYear(int year) { if (!mInitialising && year == getCurrentYear()) { return; @@ -319,15 +366,24 @@ public class DateTimePicker extends FrameLayout { * * @return The current month in the year */ + public int getCurrentMonth() { return mDate.get(Calendar.MONTH); - } + }//获得月的数据 /** * Set current month in the year * * @param month The month in the year */ + /** + * @method: setCurrentMonth + * @description:设置月的数据 + * @date: 2023/12/24 17:47 + * @author: wyf + * @param: int + * @return: void + */ public void setCurrentMonth(int month) { if (!mInitialising && month == getCurrentMonth()) { return; @@ -344,13 +400,21 @@ public class DateTimePicker extends FrameLayout { */ public int getCurrentDay() { return mDate.get(Calendar.DAY_OF_MONTH); - } + }//获得月的数据 /** * Set current day of the month * * @param dayOfMonth The day of the month */ + /** + * @method: setCurrentDay + * @description:设置日的数据 + * @date: 2023/12/24 17:48 + * @author: wyf + * @param: int + * @return: void + */ public void setCurrentDay(int dayOfMonth) { if (!mInitialising && dayOfMonth == getCurrentDay()) { return; @@ -366,8 +430,8 @@ public class DateTimePicker extends FrameLayout { */ public int getCurrentHourOfDay() { return mDate.get(Calendar.HOUR_OF_DAY); - } - + }//获得当天小时的数据 + //获得现在小时数据 private int getCurrentHour() { if (mIs24HourView){ return getCurrentHourOfDay(); @@ -386,6 +450,14 @@ public class DateTimePicker extends FrameLayout { * * @param hourOfDay */ + /** + * @method: getCurrentHour + * @description:设置小时的数据 + * @date: 2023/12/24 17:48 + * @author: wyf + * @param: int + * @return: void + */ public void setCurrentHour(int hourOfDay) { if (!mInitialising && hourOfDay == getCurrentHourOfDay()) { return; @@ -416,11 +488,19 @@ public class DateTimePicker extends FrameLayout { */ public int getCurrentMinute() { return mDate.get(Calendar.MINUTE); - } + }//获得现在分钟数据 /** * Set current minute */ + /** + * @method: setCurrentMinute + * @description:设置当前分钟数 + * @date: 2023/12/24 17:51 + * @author: wyf + * @param: int + * @return: void + */ public void setCurrentMinute(int minute) { if (!mInitialising && minute == getCurrentMinute()) { return; @@ -442,6 +522,14 @@ public class DateTimePicker extends FrameLayout { * * @param is24HourView True for 24 hour mode. False for AM/PM mode. */ + /** + * @method: set24HourView + * @description:设置24小时数据 + * @date: 2023/12/24 17:52 + * @author: wyf + * @param: boolean + * @return: void + */ public void set24HourView(boolean is24HourView) { if (mIs24HourView == is24HourView) { return; @@ -453,7 +541,14 @@ public class DateTimePicker extends FrameLayout { setCurrentHour(hour); updateAmPmControl(); } - // 对于星期几的算法 + /** + * @method: updateDateControl + * @description:计算是星期几 + * @date: 2023/12/24 17:53 + * @author: wyf + * @param: null + * @return: void + */ private void updateDateControl() { Calendar cal = Calendar.getInstance(); cal.setTimeInMillis(mDate.getTimeInMillis()); @@ -467,19 +562,32 @@ public class DateTimePicker extends FrameLayout { mDateSpinner.setValue(DAYS_IN_ALL_WEEK / 2); mDateSpinner.invalidate(); } - + /** + * @method: updateAmPmControl + * @description:计算现在是上下午 + * @date: 2023/12/24 17:54 + * @author: wyf + * @param: null + * @return: void + */ private void updateAmPmControl() { if (mIs24HourView) { mAmPmSpinner.setVisibility(View.GONE); } - // 对于上下午操作的算法 else { int index = mIsAm ? Calendar.AM : Calendar.PM; mAmPmSpinner.setValue(index); mAmPmSpinner.setVisibility(View.VISIBLE); } } - //对与小时的算法 + /** + * @method: updateHourControl + * @description:计算时间的算法 + * @date: 2023/12/24 17:55 + * @author: wyf + * @param: null + * @return: void + */ private void updateHourControl() { if (mIs24HourView) { mHourSpinner.setMinValue(HOUR_SPINNER_MIN_VAL_24_HOUR_VIEW); @@ -497,7 +605,14 @@ public class DateTimePicker extends FrameLayout { public void setOnDateTimeChangedListener(OnDateTimeChangedListener callback) { mOnDateTimeChangedListener = callback; } - + /** + * @method: onDateTimeChanged + * @description:及时更新时间 + * @date: 2023/12/24 17:56 + * @author: wyf + * @param: null + * @return: void + */ private void onDateTimeChanged() { if (mOnDateTimeChangedListener != null) { mOnDateTimeChangedListener.onDateTimeChanged(this, getCurrentYear(), diff --git a/doc/小米便签开源代码泛读报告-吴一凡-202112509022.docx b/doc/小米便签开源代码泛读报告-吴一凡-202112509022.docx deleted file mode 100644 index cc22d6c4bedef6d77309f845948084745e81b3e7..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 99748 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 RRzU~535K@M510w;zW~hwg}49! diff --git a/doc/小米便签开源代码泛读报告-张林浩-202112509029.docx b/doc/小米便签开源代码泛读报告-张林浩-202112509029.docx deleted file mode 100644 index fbaee360e08772492cd0920a24de2df9ae64c78c..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 513736 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 z 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 _Q2Qi4FZ{)#oL}d4A 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

kE)TrTn!JGS?nF){c|c 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ǜ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 diff --git a/doc/小米便签开源代码泛读报告-肖帆-202112509023.docx b/doc/小米便签开源代码泛读报告-肖帆-202112509023.docx deleted file mode 100644 index 0aa5a96868d7335fa8be3b38e40befc26281b898..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 20173 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 bf{ucRRYjU=q Date: Sun, 24 Dec 2023 18:02:22 +0800 Subject: [PATCH 08/11] =?UTF-8?q?=E4=BF=AE=E6=94=B9=E5=90=8E?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- doc/AlarmAlertActivity.java | 11 +++++++++-- 1 file changed, 9 insertions(+), 2 deletions(-) diff --git a/doc/AlarmAlertActivity.java b/doc/AlarmAlertActivity.java index 036da48..0da1caf 100644 --- a/doc/AlarmAlertActivity.java +++ b/doc/AlarmAlertActivity.java @@ -38,7 +38,14 @@ import net.micode.notes.data.Notes; import net.micode.notes.tool.DataUtils; import java.io.IOException; - +/** + * @ProjectName: Alarm + * @Package: net.micode.notes.ui + * @ClassName: AlarmAlertActivity + * @Description: + * @Author: wyf + * @CreateDate: 2023/12/24 18:00 + */ public class AlarmAlertActivity extends Activity implements OnClickListener, OnDismissListener { private long mNoteId; private String mSnippet; @@ -46,7 +53,7 @@ public class AlarmAlertActivity extends Activity implements OnClickListener, OnD MediaPlayer mPlayer; /** * @method: onCreate - * @description: 创建闹钟操作 + * @description: 创建闹钟操作并控制闹钟设置界面 * @date: 2023/12/23 10:50 * @author: wyf * @param: bundle -- 2.34.1 From 3929e9894c7f215fa8c5ef77e9a470cf1c25ece9 Mon Sep 17 00:00:00 2001 From: wyf <18818870625@163.com> Date: Sun, 24 Dec 2023 18:03:49 +0800 Subject: [PATCH 09/11] =?UTF-8?q?=E4=BF=AE=E6=94=B9=E5=90=8E=E5=90=8C?= =?UTF-8?q?=E6=AD=A5?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- doc/MetaData.java | 99 ---------------- doc/Node.java | 102 ---------------- doc/Notes.java | 287 ---------------------------------------------- doc/SqlData.java | 216 ---------------------------------- 4 files changed, 704 deletions(-) delete mode 100644 doc/MetaData.java delete mode 100644 doc/Node.java delete mode 100644 doc/Notes.java delete mode 100644 doc/SqlData.java diff --git a/doc/MetaData.java b/doc/MetaData.java deleted file mode 100644 index 0cfe010..0000000 --- a/doc/MetaData.java +++ /dev/null @@ -1,99 +0,0 @@ -/* - * 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.gtask.data; - -import android.database.Cursor; -import android.util.Log; - -import net.micode.notes.tool.GTaskStringUtils; - -import org.json.JSONException; -import org.json.JSONObject; - - -public class MetaData extends Task { - /* - * 功能描述:得到类的简写名称存入字符串TAG中 - * 实现过程:调用getSimpleName ()函数 - */ - private final static String TAG = MetaData.class.getSimpleName(); - - private String mRelatedGid = null; - /* - * 功能描述:设置数据,即生成元数据库 - * 实现过程:调用JSONObject库函数put (),Task类中的setNotes ()和setName ()函数 - */ - public void setMeta(String gid, JSONObject metaInfo) { - try { - metaInfo.put(GTaskStringUtils.META_HEAD_GTASK_ID, gid); - /* - * 将这对键值放入metaInfo这个jsonobject对象中 - */ - } catch (JSONException e) { - //报错 - Log.e(TAG, "failed to put related gid"); - } - setNotes(metaInfo.toString()); - setName(GTaskStringUtils.META_NOTE_NAME); - } - //获得相关联的Gid - public String getRelatedGid() { - return mRelatedGid; - } - - @Override - //判断当前数据是否为空,为空则返回真值即保存 - public boolean isWorthSaving() { - return getNotes() != null; - } - /* - * 功能描述:使用远程json数据对象设置元数据内容 - * 实现过程:调用父类Task中的setContentByRemoteJSON ()函数,并 - */ - @Override - public void setContentByRemoteJSON(JSONObject js) { - super.setContentByRemoteJSON(js); - if (getNotes() != null) { - try { - JSONObject metaInfo = new JSONObject(getNotes().trim()); - mRelatedGid = metaInfo.getString(GTaskStringUtils.META_HEAD_GTASK_ID); - } catch (JSONException e) { - //输出警告信息 - Log.w(TAG, "failed to get related gid"); - mRelatedGid = null; - } - } - } - //使用本地json数据对象设置元数据内容,若调用本函数则抛出异常状态 - @Override - public void setContentByLocalJSON(JSONObject js) { - // this function should not be called(报错) - throw new IllegalAccessError("MetaData:setContentByLocalJSON should not be called"); - } - //从元数据内容中获取本地json对象,若调用此函数则抛出异常状态 - @Override - public JSONObject getLocalJSONFromContent() { - //报错信息 - throw new IllegalAccessError("MetaData:getLocalJSONFromContent should not be called"); - } - //获取同步状态,若调用此函数则抛出异常状态 - @Override - public int getSyncAction(Cursor c) { - throw new IllegalAccessError("MetaData:getSyncAction should not be called"); - } - -} diff --git a/doc/Node.java b/doc/Node.java deleted file mode 100644 index 81e1b2b..0000000 --- a/doc/Node.java +++ /dev/null @@ -1,102 +0,0 @@ -/* - * 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.gtask.data; - -import android.database.Cursor; - -import org.json.JSONObject; - //同步操作的基础数据类型,定义了相关指示同步操作的常量 -public abstract class Node { - //同步状态的常量 - public static final int SYNC_ACTION_NONE = 0;// 本地和云端都无可更新内容 - - public static final int SYNC_ACTION_ADD_REMOTE = 1;// 需要在远程云端增加内容 - - public static final int SYNC_ACTION_ADD_LOCAL = 2;// 需要在本地增加内容 - - public static final int SYNC_ACTION_DEL_REMOTE = 3;// 需要在远程云端删除内容 - - public static final int SYNC_ACTION_DEL_LOCAL = 4;// 需要在本地删除内容 - - public static final int SYNC_ACTION_UPDATE_REMOTE = 5;// 需要将本地内容更新到远程云端 - - public static final int SYNC_ACTION_UPDATE_LOCAL = 6;// 需要将远程云端内容更新到本地 - - public static final int SYNC_ACTION_UPDATE_CONFLICT = 7;// 同步出现冲突 - - public static final int SYNC_ACTION_ERROR = 8;// 同步出现错误 - - private String mGid; - - private String mName; - - private long mLastModified;//记录最后一次修改时间 - - private boolean mDeleted;//表征是否被删除 - - public Node() { - mGid = null; - mName = ""; - mLastModified = 0; - mDeleted = false; - } - //abstract是干嘛的? - public abstract JSONObject getCreateAction(int actionId); - - public abstract JSONObject getUpdateAction(int actionId); - - public abstract void setContentByRemoteJSON(JSONObject js); - - public abstract void setContentByLocalJSON(JSONObject js); - - public abstract JSONObject getLocalJSONFromContent(); - - public abstract int getSyncAction(Cursor c); - - public void setGid(String gid) { - this.mGid = gid; - } - - public void setName(String name) { - this.mName = name; - } - - public void setLastModified(long lastModified) { - this.mLastModified = lastModified; - } - - public void setDeleted(boolean deleted) { - this.mDeleted = deleted; - } - - public String getGid() { - return this.mGid; - } - - public String getName() { - return this.mName; - } - - public long getLastModified() { - return this.mLastModified; - } - - public boolean getDeleted() { - return this.mDeleted; - } - -} diff --git a/doc/Notes.java b/doc/Notes.java deleted file mode 100644 index 74a9884..0000000 --- a/doc/Notes.java +++ /dev/null @@ -1,287 +0,0 @@ -/* - * 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中定义的常量,大多为int或string -public class Notes { - //static关键词可将变量限制在当前文件,其他文件无法调用该变量,即变为静态 - //final 关键字用于防止类被继承或虚函数被重写 - public static final String AUTHORITY = "micode_notes"; - public static final String TAG = "Notes"; - //以下三个常量对NoteColumns.TYPE的值进行设置时会用到 - public static final int TYPE_NOTE = 0; - public static final int TYPE_FOLDER = 1; - public static final int TYPE_SYSTEM = 2; - - /** - * Following IDs are system folders' identifiers - * {@link Notes#ID_ROOT_FOLDER } is default folder - * {@link Notes#ID_TEMPARAY_FOLDER } is for notes belonging no folder - * {@link Notes#ID_CALL_RECORD_FOLDER} is to store call records - */ - 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; - - 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"; - - public static final int TYPE_WIDGET_INVALIDE = -1; - public static final int TYPE_WIDGET_2X = 0; - public static final int TYPE_WIDGET_4X = 1; - - public static class DataConstants { - public static final String NOTE = TextNote.CONTENT_ITEM_TYPE; - public static final String CALL_NOTE = CallNote.CONTENT_ITEM_TYPE; - } - - /** - * Uri to query all notes and folders - */ - //定义查询便签和文件夹的指针 - public static final Uri CONTENT_NOTE_URI = Uri.parse("content://" + AUTHORITY + "/note"); - - /** - * Uri to query data - */ - //定义查找数据的指针。 - public static final Uri CONTENT_DATA_URI = Uri.parse("content://" + AUTHORITY + "/data"); - // 定义NoteColumns的常量,用于后面创建数据库的表头 - public interface NoteColumns { - /** - * The unique ID for a row - *

Type: INTEGER (long)

- */ - public static final String ID = "_id"; - - /** - * The parent's id for note or folder - *

Type: INTEGER (long)

- */ - public static final String PARENT_ID = "parent_id"; - - /** - * Created data for note or folder - *

Type: INTEGER (long)

- */ - public static final String CREATED_DATE = "created_date"; - - /** - * Latest modified date - *

Type: INTEGER (long)

- */ - public static final String MODIFIED_DATE = "modified_date"; - - - /** - * Alert date - *

Type: INTEGER (long)

- */ - public static final String ALERTED_DATE = "alert_date"; - - /** - * Folder's name or text content of note - *

Type: TEXT

- */ - public static final String SNIPPET = "snippet"; - - /** - * Note's widget id - *

Type: INTEGER (long)

- */ - public static final String WIDGET_ID = "widget_id"; - - /** - * Note's widget type - *

Type: INTEGER (long)

- */ - public static final String WIDGET_TYPE = "widget_type"; - - /** - * Note's background color's id - *

Type: INTEGER (long)

- */ - 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 - *

Type: INTEGER

- */ - public static final String HAS_ATTACHMENT = "has_attachment"; - - /** - * Folder's count of notes - *

Type: INTEGER (long)

- */ - public static final String NOTES_COUNT = "notes_count"; - - /** - * The file type: folder or note - *

Type: INTEGER

- */ - public static final String TYPE = "type"; - - /** - * The last sync id - *

Type: INTEGER (long)

- */ - public static final String SYNC_ID = "sync_id"; - - /** - * Sign to indicate local modified or not - *

Type: INTEGER

- */ - public static final String LOCAL_MODIFIED = "local_modified"; - - /** - * Original parent id before moving into temporary folder - *

Type : INTEGER

- */ - public static final String ORIGIN_PARENT_ID = "origin_parent_id"; - - /** - * The gtask id - *

Type : TEXT

- */ - public static final String GTASK_ID = "gtask_id"; - - /** - * The version code - *

Type : INTEGER (long)

- */ - public static final String VERSION = "version"; - }//这些常量主要是定义便签的属性的。 - - // 定义DataColumns的常量,用于后面创建数据库的表头 - public interface DataColumns { - /** - * The unique ID for a row - *

Type: INTEGER (long)

- */ - public static final String ID = "_id"; - - /** - * The MIME type of the item represented by this row. - *

Type: Text

- */ - public static final String MIME_TYPE = "mime_type"; - - /** - * The reference id to note that this data belongs to - *

Type: INTEGER (long)

- */ - public static final String NOTE_ID = "note_id"; - - /** - * Created data for note or folder - *

Type: INTEGER (long)

- */ - public static final String CREATED_DATE = "created_date"; - - /** - * Latest modified date - *

Type: INTEGER (long)

- */ - public static final String MODIFIED_DATE = "modified_date"; - - /** - * Data's content - *

Type: TEXT

- */ - public static final String CONTENT = "content"; - - - /** - * Generic data column, the meaning is {@link #MIMETYPE} specific, used for - * integer data type - *

Type: INTEGER

- */ - public static final String DATA1 = "data1"; - - /** - * Generic data column, the meaning is {@link #MIMETYPE} specific, used for - * integer data type - *

Type: INTEGER

- */ - public static final String DATA2 = "data2"; - - /** - * Generic data column, the meaning is {@link #MIMETYPE} specific, used for - * TEXT data type - *

Type: TEXT

- */ - public static final String DATA3 = "data3"; - - /** - * Generic data column, the meaning is {@link #MIMETYPE} specific, used for - * TEXT data type - *

Type: TEXT

- */ - public static final String DATA4 = "data4"; - - /** - * Generic data column, the meaning is {@link #MIMETYPE} specific, used for - * TEXT data type - *

Type: TEXT

- */ - public static final String DATA5 = "data5"; - }//主要是定义存储便签内容数据的 - - public static final class TextNote implements DataColumns { - /** - * Mode to indicate the text in check list mode or not - *

Type: Integer 1:check list mode 0: normal mode

- */ - public static final String MODE = DATA1; - - public static final int MODE_CHECK_LIST = 1; - - public static final String CONTENT_TYPE = "vnd.android.cursor.dir/text_note"; - - public static final String CONTENT_ITEM_TYPE = "vnd.android.cursor.item/text_note"; - - public static final Uri CONTENT_URI = Uri.parse("content://" + AUTHORITY + "/text_note"); - }//定义文本内容的数据结构 - - public static final class CallNote implements DataColumns { - /** - * Call date for this record - *

Type: INTEGER (long)

- */ - public static final String CALL_DATE = DATA1; - - /** - * Phone number for this record - *

Type: TEXT

- */ - public static final String PHONE_NUMBER = DATA3; - - public static final String CONTENT_TYPE = "vnd.android.cursor.dir/call_note"; - - public static final String CONTENT_ITEM_TYPE = "vnd.android.cursor.item/call_note"; - - public static final Uri CONTENT_URI = Uri.parse("content://" + AUTHORITY + "/call_note"); - }//定义电话内容的数据结构 - -} diff --git a/doc/SqlData.java b/doc/SqlData.java deleted file mode 100644 index fffbb91..0000000 --- a/doc/SqlData.java +++ /dev/null @@ -1,216 +0,0 @@ -/* - * 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. - */ -/* - * 功能概述:用于支持小米便签最底层的数据库相关操作,和sqlnote的关系上是子集关系,即data是note的子集(节点)。 - * SqlData其实就是也就是所谓数据中的数据 - */ -package net.micode.notes.gtask.data; - -import android.content.ContentResolver; -import android.content.ContentUris; -import android.content.ContentValues; -import android.content.Context; -import android.database.Cursor; -import android.net.Uri; -import android.util.Log; - -import net.micode.notes.data.Notes; -import net.micode.notes.data.Notes.DataColumns; -import net.micode.notes.data.Notes.DataConstants; -import net.micode.notes.data.Notes.NoteColumns; -import net.micode.notes.data.NotesDatabaseHelper.TABLE; -import net.micode.notes.gtask.exception.ActionFailureException; - -import org.json.JSONException; -import org.json.JSONObject; - -/* - * 功能描述:得到类的简写名称存入字符串TAG中 - * 实现过程:调用getSimpleName ()函数 - */ -public class SqlData { - private static final String TAG = SqlData.class.getSimpleName(); - - private static final int INVALID_ID = -99999;//为mDataId置初始值-99999 - // 集合了interface DataColumns中所有SF常量 - public static final String[] PROJECTION_DATA = new String[] { - DataColumns.ID, DataColumns.MIME_TYPE, DataColumns.CONTENT, DataColumns.DATA1, - DataColumns.DATA3 - }; - //以下五个变量作为sql列表中的五列的序号 - public static final int DATA_ID_COLUMN = 0; - - public static final int DATA_MIME_TYPE_COLUMN = 1; - - public static final int DATA_CONTENT_COLUMN = 2; - - public static final int DATA_CONTENT_DATA_1_COLUMN = 3; - - public static final int DATA_CONTENT_DATA_3_COLUMN = 4; - //判断是否直接用Content生成,是为true,否则为false - private ContentResolver mContentResolver; - - private boolean mIsCreate; - - private long mDataId; - - private String mDataMimeType; - - private String mDataContent; - - private long mDataContentData1; - - private String mDataContentData3; - - private ContentValues mDiffDataValues; - /* - * 功能描述:构造函数,用于初始化数据 - * 参数注解:mContentResolver用于获取ContentProvider提供的数据 - * 参数注解: mIsCreate表征当前数据是用哪种方式创建(两种构造函数的参数不同) - */ - public SqlData(Context context) { - mContentResolver = context.getContentResolver(); - mIsCreate = true; - mDataId = INVALID_ID;//mDataId置初始值-99999 - mDataMimeType = DataConstants.NOTE; - mDataContent = ""; - mDataContentData1 = 0; - mDataContentData3 = ""; - mDiffDataValues = new ContentValues(); - } - /* - * 功能描述:构造函数,初始化数据 - * 参数注解:mContentResolver用于获取ContentProvider提供的数据 - * 参数注解: mIsCreate表征当前数据是用哪种方式创建(两种构造函数的参数不同) - */ - public SqlData(Context context, Cursor c) { - mContentResolver = context.getContentResolver(); - mIsCreate = false; - loadFromCursor(c); - mDiffDataValues = new ContentValues(); - } - /* - * 功能描述:从光标处加载数据 - * 从当前的光标处将五列的数据加载到该类的对象 - */ - private void loadFromCursor(Cursor c) { - mDataId = c.getLong(DATA_ID_COLUMN); - mDataMimeType = c.getString(DATA_MIME_TYPE_COLUMN); - mDataContent = c.getString(DATA_CONTENT_COLUMN); - mDataContentData1 = c.getLong(DATA_CONTENT_DATA_1_COLUMN); - mDataContentData3 = c.getString(DATA_CONTENT_DATA_3_COLUMN); - } - /* - * 功能描述:设置用于共享的数据,并提供异常抛出与处理机制 - */ - public void setContent(JSONObject js) throws JSONException { - //如果传入的JSONObject对象中有DataColumns.ID这一项,则设置,否则设为INVALID_ID - long dataId = js.has(DataColumns.ID) ? js.getLong(DataColumns.ID) : INVALID_ID; - if (mIsCreate || mDataId != dataId) { - mDiffDataValues.put(DataColumns.ID, dataId); - } - mDataId = dataId; - - String dataMimeType = js.has(DataColumns.MIME_TYPE) ? js.getString(DataColumns.MIME_TYPE) - : DataConstants.NOTE; - if (mIsCreate || !mDataMimeType.equals(dataMimeType)) { - mDiffDataValues.put(DataColumns.MIME_TYPE, dataMimeType); - } - mDataMimeType = dataMimeType; - - String dataContent = js.has(DataColumns.CONTENT) ? js.getString(DataColumns.CONTENT) : ""; - if (mIsCreate || !mDataContent.equals(dataContent)) { - mDiffDataValues.put(DataColumns.CONTENT, dataContent); - } - mDataContent = dataContent; - - long dataContentData1 = js.has(DataColumns.DATA1) ? js.getLong(DataColumns.DATA1) : 0; - if (mIsCreate || mDataContentData1 != dataContentData1) { - mDiffDataValues.put(DataColumns.DATA1, dataContentData1); - } - mDataContentData1 = dataContentData1; - - String dataContentData3 = js.has(DataColumns.DATA3) ? js.getString(DataColumns.DATA3) : ""; - if (mIsCreate || !mDataContentData3.equals(dataContentData3)) { - mDiffDataValues.put(DataColumns.DATA3, dataContentData3); - } - mDataContentData3 = dataContentData3; - } - /* - * 功能描述:获取共享的数据内容,并提供异常抛出与处理机制 - */ - public JSONObject getContent() throws JSONException { - if (mIsCreate) { - Log.e(TAG, "it seems that we haven't created this in database yet"); - return null; - } - //创建JSONObject对象。并将相关数据放入其中,并返回 - JSONObject js = new JSONObject(); - js.put(DataColumns.ID, mDataId); - js.put(DataColumns.MIME_TYPE, mDataMimeType); - js.put(DataColumns.CONTENT, mDataContent); - js.put(DataColumns.DATA1, mDataContentData1); - js.put(DataColumns.DATA3, mDataContentData3); - return js; - } - /* - * 功能描述:commit函数用于把当前造作所做的修改保存到数据库 - */ - public void commit(long noteId, boolean validateVersion, long version) { - - if (mIsCreate) { - if (mDataId == INVALID_ID && mDiffDataValues.containsKey(DataColumns.ID)) { - mDiffDataValues.remove(DataColumns.ID); - } - - mDiffDataValues.put(DataColumns.NOTE_ID, noteId); - Uri uri = mContentResolver.insert(Notes.CONTENT_DATA_URI, mDiffDataValues); - try { - mDataId = Long.valueOf(uri.getPathSegments().get(1)); - } catch (NumberFormatException e) { - Log.e(TAG, "Get note id error :" + e.toString()); - throw new ActionFailureException("create note failed"); - } - } else { - if (mDiffDataValues.size() > 0) { - int result = 0; - if (!validateVersion) { - result = mContentResolver.update(ContentUris.withAppendedId( - Notes.CONTENT_DATA_URI, mDataId), mDiffDataValues, null, null); - } else { - result = mContentResolver.update(ContentUris.withAppendedId( - Notes.CONTENT_DATA_URI, mDataId), mDiffDataValues, - " ? in (SELECT " + NoteColumns.ID + " FROM " + TABLE.NOTE - + " WHERE " + NoteColumns.VERSION + "=?)", new String[] { - String.valueOf(noteId), String.valueOf(version) - }); - } - if (result == 0) { - Log.w(TAG, "there is no update. maybe user updates note when syncing"); - } - } - } - - mDiffDataValues.clear(); - mIsCreate = false; - } - /* - * 功能描述:获取当前id - */ - public long getId() { - return mDataId; - } -} -- 2.34.1 From 235e09d30a47848ec135b501d0badf15f688d23f Mon Sep 17 00:00:00 2001 From: wyf <18818870625@163.com> Date: Sun, 24 Dec 2023 20:28:51 +0800 Subject: [PATCH 10/11] =?UTF-8?q?=E5=B7=B2=E6=B3=A8=E9=87=8A?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- doc/DateTimePickerDialog.java | 126 ++++++++++++++++++++++++++++++++++ doc/DropdownMenu.java | 75 ++++++++++++++++++++ 2 files changed, 201 insertions(+) create mode 100644 doc/DateTimePickerDialog.java create mode 100644 doc/DropdownMenu.java diff --git a/doc/DateTimePickerDialog.java b/doc/DateTimePickerDialog.java new file mode 100644 index 0000000..347d6cc --- /dev/null +++ b/doc/DateTimePickerDialog.java @@ -0,0 +1,126 @@ +/* + * 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.ui; + +import java.util.Calendar; + +import net.micode.notes.R; +import net.micode.notes.ui.DateTimePicker; +import net.micode.notes.ui.DateTimePicker.OnDateTimeChangedListener; + +import android.app.AlertDialog; +import android.content.Context; +import android.content.DialogInterface; +import android.content.DialogInterface.OnClickListener; +import android.text.format.DateFormat; +import android.text.format.DateUtils; +/** + * @ProjectName: DateTime + * @Package: net.micode.notes.ui + * @ClassName: DateTimePickerDialog + * @Description: 初始化对时间日期操作的变量 + * @Author: wyf + * @CreateDate: 2023/12/24 20:02 + */ +public class DateTimePickerDialog extends AlertDialog implements OnClickListener { + + private Calendar mDate = Calendar.getInstance();//创建一个Calendar类型的变量 mDate,方便时间的操作 + private boolean mIs24HourView; + private OnDateTimeSetListener mOnDateTimeSetListener;//声明一个时间日期滚动选择控件 mOnDateTimeSetListener + private DateTimePicker mDateTimePicker; //DateTimePicker控件,控件一般用于让用户可以从日期列表中选择单个值。运行时,单击控件边上的下拉箭头,会显示为两个部分:一个下拉列表,一个用于选择日期的 + + public interface OnDateTimeSetListener { + void OnDateTimeSet(AlertDialog dialog, long date); + } + //对该界面对话框的实例化 + public DateTimePickerDialog(Context context, long date) { + super(context);//对数据库的操作 + mDateTimePicker = new DateTimePicker(context); + setView(mDateTimePicker);//添加一个子视图 + mDateTimePicker.setOnDateTimeChangedListener(new OnDateTimeChangedListener() { + public void onDateTimeChanged(DateTimePicker view, int year, int month, + int dayOfMonth, int hourOfDay, int minute) { + //将视图中的各选项设置为系统当前时间 + mDate.set(Calendar.YEAR, year); + mDate.set(Calendar.MONTH, month); + mDate.set(Calendar.DAY_OF_MONTH, dayOfMonth); + mDate.set(Calendar.HOUR_OF_DAY, hourOfDay); + mDate.set(Calendar.MINUTE, minute); + updateTitle(mDate.getTimeInMillis()); + } + }); + mDate.setTimeInMillis(date);//得到系统时间 + mDate.set(Calendar.SECOND, 0); //将秒数设置为0 + mDateTimePicker.setCurrentDate(mDate.getTimeInMillis()); + setButton(context.getString(R.string.datetime_dialog_ok), this);//设置设置按钮 + setButton2(context.getString(R.string.datetime_dialog_cancel), (OnClickListener)null);//设置取消按钮 + set24HourView(DateFormat.is24HourFormat(this.getContext()));//时间标准化打印 + updateTitle(mDate.getTimeInMillis()); + } + /** + * @method: set24HourView + * @description:实现时间标准化打印 + * @date: 2023/12/24 20:15 + * @author: wyf + * @param: boolean + * @return: void + */ + public void set24HourView(boolean is24HourView) { + mIs24HourView = is24HourView; + } + /** + * @method: setOnDateTimeSetListener + * @description:将时间日期滚动选择控件实例化 + * @date: 2023/12/24 20:14 + * @author: wyf + * @param: interface + * @return: void + */ + public void setOnDateTimeSetListener(OnDateTimeSetListener callBack) { + mOnDateTimeSetListener = callBack; + } + /** + * @method: updateTitle + * @description:更新标题显示的时间日期 + * @date: 2023/12/24 20:15 + * @author: wyf + * @param: long + * @return: void + */ + private void updateTitle(long date) { + int flag = + DateUtils.FORMAT_SHOW_YEAR | + DateUtils.FORMAT_SHOW_DATE | + DateUtils.FORMAT_SHOW_TIME; + flag |= mIs24HourView ? DateUtils.FORMAT_24HOUR : DateUtils.FORMAT_24HOUR; + setTitle(DateUtils.formatDateTime(this.getContext(), date, flag)); + } + /** + * @method: onClick + * @description:点击事件的对话框 + * @date: 2023/12/24 20:17 + * @author: wyf + * @param: interface\int + * @return: void + */ + public void onClick(DialogInterface arg0, int arg1) { + if (mOnDateTimeSetListener != null) { + mOnDateTimeSetListener.OnDateTimeSet(this, mDate.getTimeInMillis()); + } + } + +} \ No newline at end of file diff --git a/doc/DropdownMenu.java b/doc/DropdownMenu.java new file mode 100644 index 0000000..9a6a8a2 --- /dev/null +++ b/doc/DropdownMenu.java @@ -0,0 +1,75 @@ +/* + * 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.ui; + +import android.content.Context; +import android.view.Menu; +import android.view.MenuItem; +import android.view.View; +import android.view.View.OnClickListener; +import android.widget.Button; +import android.widget.PopupMenu; +import android.widget.PopupMenu.OnMenuItemClickListener; + +import net.micode.notes.R; +/** + * @ProjectName: DropdownMenu + * @Package: net.micode.notes.ui + * @ClassName: DropdownMenu + * @Description: 设置下滑菜单 + * @Author: wyf + * @CreateDate: 2023/12/24 20:20 + */ +public class DropdownMenu { + private Button mButton; + private PopupMenu mPopupMenu;//声明一个下拉菜单 + private Menu mMenu; + + public DropdownMenu(Context context, Button button, int menuId) { + mButton = button; + mButton.setBackgroundResource(R.drawable.dropdown_icon);//设置这个view的背景 + mPopupMenu = new PopupMenu(context, mButton); + mMenu = mPopupMenu.getMenu(); + mPopupMenu.getMenuInflater().inflate(menuId, mMenu);//MenuInflater是用来实例化Menu目录下的Menu布局文件,根据ID来确认menu的内容选项 + mButton.setOnClickListener(new OnClickListener() { + public void onClick(View v) { + mPopupMenu.show(); + } + }); + } + /** + * @method: setOnDropdownMenuItemClickListener + * @description:设置下拉菜单的监听 + * @date: 2023/12/24 20:24 + * @author: wyf + * @param: interface + * @return: void + */ + public void setOnDropdownMenuItemClickListener(OnMenuItemClickListener listener) { + if (mPopupMenu != null) { + mPopupMenu.setOnMenuItemClickListener(listener); + } + } + + public MenuItem findItem(int id) { + return mMenu.findItem(id); + }//对于菜单选项的初始化,根据索引搜索菜单需要的选项 + + public void setTitle(CharSequence title) { + mButton.setText(title); + }//布局文件,设置标题 +} -- 2.34.1 From da4fa905b1dd24d8bcf4560cdfc53dccbb8b21f0 Mon Sep 17 00:00:00 2001 From: wyf <18818870625@163.com> Date: Sun, 24 Dec 2023 20:48:17 +0800 Subject: [PATCH 11/11] =?UTF-8?q?=E5=B7=B2=E5=AE=8C=E6=88=90=E6=B3=A8?= =?UTF-8?q?=E9=87=8A?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- doc/FoldersListAdapter.java | 112 ++++++++++++++++++++++++++++++++++++ 1 file changed, 112 insertions(+) create mode 100644 doc/FoldersListAdapter.java diff --git a/doc/FoldersListAdapter.java b/doc/FoldersListAdapter.java new file mode 100644 index 0000000..ae8c08a --- /dev/null +++ b/doc/FoldersListAdapter.java @@ -0,0 +1,112 @@ +/* + * 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.ui; + +import android.content.Context; +import android.database.Cursor; +import android.view.View; +import android.view.ViewGroup; +import android.widget.CursorAdapter; +import android.widget.LinearLayout; +import android.widget.TextView; + +import net.micode.notes.R; +import net.micode.notes.data.Notes; +import net.micode.notes.data.Notes.NoteColumns; + +/** + * @ProjectName: FoldersListAdapter + * @Package: net.micode.notes.ui + * @ClassName: FoldersListAdapter + * @Description: 设置文件夹的控制变量 + * @Author: wyf + * @CreateDate: 2023/12/24 20:31 + */ +//CursorAdapter是Cursor和ListView的接口 +//FoldersListAdapter继承了CursorAdapter的类 +//主要作用是便签数据库和用户的交互 +//这里就是用folder(文件夹)的形式展现给用户 +public class FoldersListAdapter extends CursorAdapter { + public static final String [] PROJECTION = { + NoteColumns.ID, + NoteColumns.SNIPPET//调用数据库中便签的ID和片段 + }; + + public static final int ID_COLUMN = 0; + public static final int NAME_COLUMN = 1; + + public FoldersListAdapter(Context context, Cursor c) { + super(context, c);//数据库操作 + // TODO Auto-generated constructor stub + } + + @Override + public View newView(Context context, Cursor cursor, ViewGroup parent) { + return new FolderListItem(context);//创建一个文件夹,对于各文件夹中子标签的初始化 + } + /** + * @method: bindView + * @description:将各个布局文件绑定起来 + * @date: 2023/12/24 20:40 + * @author: wyf + * @param: class\interface + * @return: void + */ + @Override + public void bindView(View view, Context context, Cursor cursor) { + if (view instanceof FolderListItem) { + String folderName = (cursor.getLong(ID_COLUMN) == Notes.ID_ROOT_FOLDER) ? context + .getString(R.string.menu_move_parent_folder) : cursor.getString(NAME_COLUMN); + ((FolderListItem) view).bind(folderName); + } + } + + public String getFolderName(Context context, int position) { + Cursor cursor = (Cursor) getItem(position); + return (cursor.getLong(ID_COLUMN) == Notes.ID_ROOT_FOLDER) ? context + .getString(R.string.menu_move_parent_folder) : cursor.getString(NAME_COLUMN); + }//根据数据库中标签的ID得到标签的各项内容 + + private class FolderListItem extends LinearLayout { + private TextView mName; + /** + * @ProjectName: FolderListItem + * @Package: net.micode.notes.ui + * @ClassName: FolderListItem + * @Description: 设置文件夹各项目 + * @Author: wyf + * @CreateDate: 2023/12/24 20:42 + */ + public FolderListItem(Context context) { + super(context);//操作数据库 + inflate(context, R.layout.folder_list_item, this);//根据布局文件的名字等信息将其找出来 + mName = (TextView) findViewById(R.id.tv_folder_name); + } + /** + * @method: bind + * @description:设置显示名称 + * @date: 2023/12/24 20:46 + * @author: wyf + * @param: string + * @return: void + */ + public void bind(String name) { + mName.setText(name); + } + } + +} -- 2.34.1