最终完善了报告文档pdf

main
XinqiQin 7 months ago
parent 3538bf8ca6
commit 189e99d280

Binary file not shown.

After

Width:  |  Height:  |  Size: 180 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 205 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 6.0 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 144 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 152 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 139 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 214 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 195 KiB

@ -79,10 +79,10 @@
\gdef \LT@iv {\LT@entry \gdef \LT@iv {\LT@entry
{1}{85.35156pt}\LT@entry {1}{85.35156pt}\LT@entry
{1}{84.95157pt}\LT@entry {1}{84.95157pt}\LT@entry
{1}{84.95157pt}\LT@entry {1}{109.13788pt}\LT@entry
{1}{109.13788pt}} {1}{109.13788pt}}
\@writefile{toc}{\contentsline {subsubsection}{\numberline {3.3.2}各功能代码规模}{35}{subsubsection.3.3.2}\protected@file@percent } \@writefile{toc}{\contentsline {subsubsection}{\numberline {3.3.2}各功能代码规模}{35}{subsubsection.3.3.2}\protected@file@percent }
\@writefile{lot}{\contentsline {table}{\numberline {4}{\ignorespaces 代码质量分析详细结果}}{35}{table.4}\protected@file@percent } \@writefile{lot}{\contentsline {table}{\numberline {4}{\ignorespaces 各功能代码规模表}}{35}{table.4}\protected@file@percent }
\@writefile{toc}{\contentsline {subsubsection}{\numberline {3.3.3}维护后的质量分析}{36}{subsubsection.3.3.3}\protected@file@percent } \@writefile{toc}{\contentsline {subsubsection}{\numberline {3.3.3}维护后的质量分析}{36}{subsubsection.3.3.3}\protected@file@percent }
\@writefile{lof}{\contentsline {figure}{\numberline {24}{\ignorespaces 代码审查结果}}{36}{figure.caption.43}\protected@file@percent } \@writefile{lof}{\contentsline {figure}{\numberline {24}{\ignorespaces 代码审查结果}}{36}{figure.caption.43}\protected@file@percent }
\@writefile{lof}{\contentsline {figure}{\numberline {25}{\ignorespaces 代码审查结果}}{37}{figure.caption.44}\protected@file@percent } \@writefile{lof}{\contentsline {figure}{\numberline {25}{\ignorespaces 代码审查结果}}{37}{figure.caption.44}\protected@file@percent }
@ -91,84 +91,95 @@
{1}{60.77263pt}\LT@entry {1}{60.77263pt}\LT@entry
{1}{326.8pt}} {1}{326.8pt}}
\@writefile{lot}{\contentsline {table}{\numberline {5}{\ignorespaces 代码质量分析详细结果}}{38}{table.5}\protected@file@percent } \@writefile{lot}{\contentsline {table}{\numberline {5}{\ignorespaces 代码质量分析详细结果}}{38}{table.5}\protected@file@percent }
\@writefile{toc}{\contentsline {subsection}{\numberline {3.4}维护后的软件原型以及功能展示}{40}{subsection.3.4}\protected@file@percent } \@writefile{toc}{\contentsline {subsubsection}{\numberline {3.3.4}维护代码风格展示}{40}{subsubsection.3.3.4}\protected@file@percent }
\@writefile{toc}{\contentsline {subsubsection}{\numberline {3.4.1}设置界面背景}{40}{subsubsection.3.4.1}\protected@file@percent } \@writefile{lof}{\contentsline {figure}{\numberline {26}{\ignorespaces 注释规范性与完整性}}{40}{figure.caption.45}\protected@file@percent }
\@writefile{lof}{\contentsline {figure}{\numberline {26}{\ignorespaces 设置背景1}}{40}{figure.caption.45}\protected@file@percent } \@writefile{lof}{\contentsline {figure}{\numberline {27}{\ignorespaces 代码质量指标}}{41}{figure.caption.46}\protected@file@percent }
\@writefile{lof}{\contentsline {figure}{\numberline {27}{\ignorespaces 设置背景按钮}}{40}{figure.caption.45}\protected@file@percent } \@writefile{lof}{\contentsline {figure}{\numberline {28}{\ignorespaces 架构设计}}{42}{figure.caption.47}\protected@file@percent }
\@writefile{lof}{\contentsline {figure}{\numberline {28}{\ignorespaces 设置背景2}}{40}{figure.caption.45}\protected@file@percent } \@writefile{lof}{\contentsline {figure}{\numberline {29}{\ignorespaces 性能考虑}}{43}{figure.caption.48}\protected@file@percent }
\@writefile{toc}{\contentsline {subsubsection}{\numberline {3.4.2}欢迎界面}{41}{subsubsection.3.4.2}\protected@file@percent } \@writefile{lof}{\contentsline {figure}{\numberline {30}{\ignorespaces 安全性}}{44}{figure.caption.49}\protected@file@percent }
\@writefile{lof}{\contentsline {figure}{\numberline {29}{\ignorespaces 欢迎界面}}{41}{figure.caption.46}\protected@file@percent } \@writefile{toc}{\contentsline {subsection}{\numberline {3.4}维护后的软件原型以及功能展示}{45}{subsection.3.4}\protected@file@percent }
\@writefile{toc}{\contentsline {subsubsection}{\numberline {3.4.3}登录密码}{42}{subsubsection.3.4.3}\protected@file@percent } \@writefile{toc}{\contentsline {subsubsection}{\numberline {3.4.1}设置界面背景}{45}{subsubsection.3.4.1}\protected@file@percent }
\@writefile{lof}{\contentsline {figure}{\numberline {30}{\ignorespaces 新增设置密码的操作}}{42}{figure.caption.47}\protected@file@percent } \@writefile{lof}{\contentsline {figure}{\numberline {31}{\ignorespaces 设置背景1}}{45}{figure.caption.50}\protected@file@percent }
\@writefile{lof}{\contentsline {figure}{\numberline {31}{\ignorespaces 新增密码后的登录界面,要求输入密码}}{43}{figure.caption.48}\protected@file@percent } \@writefile{lof}{\contentsline {figure}{\numberline {32}{\ignorespaces 设置背景按钮}}{45}{figure.caption.50}\protected@file@percent }
\@writefile{lof}{\contentsline {figure}{\numberline {32}{\ignorespaces 重新设置密码}}{44}{figure.caption.49}\protected@file@percent } \@writefile{lof}{\contentsline {figure}{\numberline {33}{\ignorespaces 设置背景2}}{45}{figure.caption.50}\protected@file@percent }
\@writefile{lof}{\contentsline {figure}{\numberline {33}{\ignorespaces 使用原有的密码登录失败}}{45}{figure.caption.50}\protected@file@percent } \@writefile{toc}{\contentsline {subsubsection}{\numberline {3.4.2}欢迎界面}{46}{subsubsection.3.4.2}\protected@file@percent }
\@writefile{lof}{\contentsline {figure}{\numberline {34}{\ignorespaces 删除设置的密码}}{46}{figure.caption.51}\protected@file@percent } \@writefile{lof}{\contentsline {figure}{\numberline {34}{\ignorespaces 欢迎界面}}{46}{figure.caption.51}\protected@file@percent }
\@writefile{lof}{\contentsline {figure}{\numberline {35}{\ignorespaces 登录密码的时序图}}{47}{figure.caption.52}\protected@file@percent } \@writefile{toc}{\contentsline {subsubsection}{\numberline {3.4.3}登录密码}{47}{subsubsection.3.4.3}\protected@file@percent }
\@writefile{toc}{\contentsline {subsubsection}{\numberline {3.4.4}翻译功能}{48}{subsubsection.3.4.4}\protected@file@percent } \@writefile{lof}{\contentsline {figure}{\numberline {35}{\ignorespaces 新增设置密码的操作}}{47}{figure.caption.52}\protected@file@percent }
\@writefile{lof}{\contentsline {figure}{\numberline {36}{\ignorespaces 翻译功能中的将英文翻译为中文}}{48}{figure.caption.53}\protected@file@percent } \@writefile{lof}{\contentsline {figure}{\numberline {36}{\ignorespaces 新增密码后的登录界面,要求输入密码}}{48}{figure.caption.53}\protected@file@percent }
\@writefile{lof}{\contentsline {figure}{\numberline {37}{\ignorespaces 翻译功能中将中文转化为英文}}{49}{figure.caption.54}\protected@file@percent } \@writefile{lof}{\contentsline {figure}{\numberline {37}{\ignorespaces 重新设置密码}}{49}{figure.caption.54}\protected@file@percent }
\@writefile{lof}{\contentsline {figure}{\numberline {38}{\ignorespaces 翻译功能中的还原操作}}{50}{figure.caption.55}\protected@file@percent } \@writefile{lof}{\contentsline {figure}{\numberline {38}{\ignorespaces 使用原有的密码登录失败}}{50}{figure.caption.55}\protected@file@percent }
\@writefile{lof}{\contentsline {figure}{\numberline {39}{\ignorespaces 翻译功能的时序图}}{51}{figure.caption.56}\protected@file@percent } \@writefile{lof}{\contentsline {figure}{\numberline {39}{\ignorespaces 删除设置的密码}}{51}{figure.caption.56}\protected@file@percent }
\@writefile{toc}{\contentsline {subsubsection}{\numberline {3.4.5}插入图片}{52}{subsubsection.3.4.5}\protected@file@percent } \@writefile{lof}{\contentsline {figure}{\numberline {40}{\ignorespaces 登录密码的时序图}}{52}{figure.caption.57}\protected@file@percent }
\@writefile{lof}{\contentsline {figure}{\numberline {40}{\ignorespaces 将本地相册中的图片导入便签编辑界面中}}{52}{figure.caption.57}\protected@file@percent } \@writefile{toc}{\contentsline {subsubsection}{\numberline {3.4.4}翻译功能}{53}{subsubsection.3.4.4}\protected@file@percent }
\@writefile{lof}{\contentsline {figure}{\numberline {41}{\ignorespaces 插入图片的时序图}}{53}{figure.caption.58}\protected@file@percent } \@writefile{lof}{\contentsline {figure}{\numberline {41}{\ignorespaces 翻译功能中的将英文翻译为中文}}{53}{figure.caption.58}\protected@file@percent }
\@writefile{toc}{\contentsline {subsubsection}{\numberline {3.4.6}统计字符个数}{54}{subsubsection.3.4.6}\protected@file@percent } \@writefile{lof}{\contentsline {figure}{\numberline {42}{\ignorespaces 翻译功能中将中文转化为英文}}{54}{figure.caption.59}\protected@file@percent }
\@writefile{lof}{\contentsline {figure}{\numberline {42}{\ignorespaces 统计字符个数}}{54}{figure.caption.59}\protected@file@percent } \@writefile{lof}{\contentsline {figure}{\numberline {43}{\ignorespaces 翻译功能中的还原操作}}{55}{figure.caption.60}\protected@file@percent }
\@writefile{lof}{\contentsline {figure}{\numberline {43}{\ignorespaces 统计字符个数的时序图}}{55}{figure.caption.60}\protected@file@percent } \@writefile{lof}{\contentsline {figure}{\numberline {44}{\ignorespaces 翻译功能的时序图}}{56}{figure.caption.61}\protected@file@percent }
\@writefile{toc}{\contentsline {subsubsection}{\numberline {3.4.7}富文本功能}{56}{subsubsection.3.4.7}\protected@file@percent } \@writefile{toc}{\contentsline {subsubsection}{\numberline {3.4.5}插入图片}{57}{subsubsection.3.4.5}\protected@file@percent }
\@writefile{lof}{\contentsline {figure}{\numberline {44}{\ignorespaces 富文本功能}}{56}{figure.caption.61}\protected@file@percent } \@writefile{lof}{\contentsline {figure}{\numberline {45}{\ignorespaces 将本地相册中的图片导入便签编辑界面中}}{57}{figure.caption.62}\protected@file@percent }
\@writefile{lof}{\contentsline {figure}{\numberline {45}{\ignorespaces 加粗功能}}{56}{figure.caption.62}\protected@file@percent } \@writefile{lof}{\contentsline {figure}{\numberline {46}{\ignorespaces 插入图片的时序图}}{58}{figure.caption.63}\protected@file@percent }
\@writefile{lof}{\contentsline {figure}{\numberline {46}{\ignorespaces 斜体功能}}{56}{figure.caption.63}\protected@file@percent } \@writefile{toc}{\contentsline {subsubsection}{\numberline {3.4.6}统计字符个数}{59}{subsubsection.3.4.6}\protected@file@percent }
\@writefile{lof}{\contentsline {figure}{\numberline {47}{\ignorespaces 删除线功能}}{57}{figure.caption.64}\protected@file@percent } \@writefile{lof}{\contentsline {figure}{\numberline {47}{\ignorespaces 统计字符个数}}{59}{figure.caption.64}\protected@file@percent }
\@writefile{lof}{\contentsline {figure}{\numberline {48}{\ignorespaces 高亮功能}}{57}{figure.caption.65}\protected@file@percent } \@writefile{lof}{\contentsline {figure}{\numberline {48}{\ignorespaces 统计字符个数的时序图}}{60}{figure.caption.65}\protected@file@percent }
\@writefile{lof}{\contentsline {figure}{\numberline {49}{\ignorespaces 富文本功能的时序图}}{58}{figure.caption.66}\protected@file@percent } \@writefile{toc}{\contentsline {subsubsection}{\numberline {3.4.7}富文本功能}{61}{subsubsection.3.4.7}\protected@file@percent }
\@writefile{toc}{\contentsline {subsubsection}{\numberline {3.4.8}朗读功能}{59}{subsubsection.3.4.8}\protected@file@percent } \@writefile{lof}{\contentsline {figure}{\numberline {49}{\ignorespaces 富文本功能}}{61}{figure.caption.66}\protected@file@percent }
\@writefile{lof}{\contentsline {figure}{\numberline {50}{\ignorespaces 朗读功能}}{59}{figure.caption.67}\protected@file@percent } \@writefile{lof}{\contentsline {figure}{\numberline {50}{\ignorespaces 加粗功能}}{61}{figure.caption.67}\protected@file@percent }
\@writefile{lof}{\contentsline {figure}{\numberline {51}{\ignorespaces 朗读功能的时序图}}{59}{figure.caption.68}\protected@file@percent } \@writefile{lof}{\contentsline {figure}{\numberline {51}{\ignorespaces 斜体功能}}{61}{figure.caption.68}\protected@file@percent }
\@writefile{toc}{\contentsline {subsubsection}{\numberline {3.4.9}私密模式}{60}{subsubsection.3.4.9}\protected@file@percent } \@writefile{lof}{\contentsline {figure}{\numberline {52}{\ignorespaces 删除线功能}}{62}{figure.caption.69}\protected@file@percent }
\@writefile{lof}{\contentsline {figure}{\numberline {52}{\ignorespaces 私密模式}}{60}{figure.caption.69}\protected@file@percent } \@writefile{lof}{\contentsline {figure}{\numberline {53}{\ignorespaces 高亮功能}}{62}{figure.caption.70}\protected@file@percent }
\@writefile{lof}{\contentsline {figure}{\numberline {53}{\ignorespaces 退出私密模式}}{61}{figure.caption.70}\protected@file@percent } \@writefile{lof}{\contentsline {figure}{\numberline {54}{\ignorespaces 富文本功能的时序图}}{63}{figure.caption.71}\protected@file@percent }
\@writefile{lof}{\contentsline {figure}{\numberline {54}{\ignorespaces 私密模式的时序图}}{62}{figure.caption.71}\protected@file@percent } \@writefile{toc}{\contentsline {subsubsection}{\numberline {3.4.8}朗读功能}{64}{subsubsection.3.4.8}\protected@file@percent }
\@writefile{toc}{\contentsline {subsubsection}{\numberline {3.4.10}笔记编辑内搜索}{63}{subsubsection.3.4.10}\protected@file@percent } \@writefile{lof}{\contentsline {figure}{\numberline {55}{\ignorespaces 朗读功能}}{64}{figure.caption.72}\protected@file@percent }
\@writefile{lof}{\contentsline {figure}{\numberline {55}{\ignorespaces 笔记内搜索}}{63}{figure.caption.72}\protected@file@percent } \@writefile{lof}{\contentsline {figure}{\numberline {56}{\ignorespaces 朗读功能的时序图}}{64}{figure.caption.73}\protected@file@percent }
\@writefile{lof}{\contentsline {figure}{\numberline {56}{\ignorespaces 笔记内搜索}}{64}{figure.caption.73}\protected@file@percent } \@writefile{toc}{\contentsline {subsubsection}{\numberline {3.4.9}私密模式}{65}{subsubsection.3.4.9}\protected@file@percent }
\@writefile{lof}{\contentsline {figure}{\numberline {57}{\ignorespaces 笔记内搜索的时序图}}{65}{figure.caption.74}\protected@file@percent } \@writefile{lof}{\contentsline {figure}{\numberline {57}{\ignorespaces 私密模式}}{65}{figure.caption.74}\protected@file@percent }
\@writefile{toc}{\contentsline {subsubsection}{\numberline {3.4.11}模板便签}{66}{subsubsection.3.4.11}\protected@file@percent } \@writefile{lof}{\contentsline {figure}{\numberline {58}{\ignorespaces 退出私密模式}}{66}{figure.caption.75}\protected@file@percent }
\@writefile{lof}{\contentsline {figure}{\numberline {58}{\ignorespaces 模板便签(a)}}{66}{figure.caption.75}\protected@file@percent } \@writefile{lof}{\contentsline {figure}{\numberline {59}{\ignorespaces 私密模式的时序图}}{67}{figure.caption.76}\protected@file@percent }
\@writefile{lof}{\contentsline {figure}{\numberline {59}{\ignorespaces 模板便签(b)}}{66}{figure.caption.75}\protected@file@percent } \@writefile{toc}{\contentsline {subsubsection}{\numberline {3.4.10}笔记编辑内搜索}{68}{subsubsection.3.4.10}\protected@file@percent }
\@writefile{lof}{\contentsline {figure}{\numberline {60}{\ignorespaces 模版1}}{67}{figure.caption.76}\protected@file@percent } \@writefile{lof}{\contentsline {figure}{\numberline {60}{\ignorespaces 笔记内搜索}}{68}{figure.caption.77}\protected@file@percent }
\@writefile{lof}{\contentsline {figure}{\numberline {61}{\ignorespaces 模版2}}{68}{figure.caption.77}\protected@file@percent } \@writefile{lof}{\contentsline {figure}{\numberline {61}{\ignorespaces 笔记内搜索}}{69}{figure.caption.78}\protected@file@percent }
\@writefile{lof}{\contentsline {figure}{\numberline {62}{\ignorespaces 模板便签的时序图}}{69}{figure.caption.78}\protected@file@percent } \@writefile{lof}{\contentsline {figure}{\numberline {62}{\ignorespaces 笔记内搜索的时序图}}{70}{figure.caption.79}\protected@file@percent }
\@writefile{toc}{\contentsline {subsubsection}{\numberline {3.4.12}语音听写}{70}{subsubsection.3.4.12}\protected@file@percent } \@writefile{toc}{\contentsline {subsubsection}{\numberline {3.4.11}模板便签}{71}{subsubsection.3.4.11}\protected@file@percent }
\@writefile{lof}{\contentsline {figure}{\numberline {63}{\ignorespaces 语音听写(a)}}{70}{figure.caption.79}\protected@file@percent } \@writefile{lof}{\contentsline {figure}{\numberline {63}{\ignorespaces 模板便签(a)}}{71}{figure.caption.80}\protected@file@percent }
\@writefile{lof}{\contentsline {figure}{\numberline {64}{\ignorespaces 语音听写(b)}}{70}{figure.caption.79}\protected@file@percent } \@writefile{lof}{\contentsline {figure}{\numberline {64}{\ignorespaces 模板便签(b)}}{71}{figure.caption.80}\protected@file@percent }
\@writefile{lof}{\contentsline {figure}{\numberline {65}{\ignorespaces 语音听写的时序图}}{71}{figure.caption.80}\protected@file@percent } \@writefile{lof}{\contentsline {figure}{\numberline {65}{\ignorespaces 模版1}}{72}{figure.caption.81}\protected@file@percent }
\@writefile{toc}{\contentsline {subsubsection}{\numberline {3.4.13}语音合成}{72}{subsubsection.3.4.13}\protected@file@percent } \@writefile{lof}{\contentsline {figure}{\numberline {66}{\ignorespaces 模版2}}{73}{figure.caption.82}\protected@file@percent }
\@writefile{lof}{\contentsline {figure}{\numberline {66}{\ignorespaces 语音合成}}{72}{figure.caption.81}\protected@file@percent } \@writefile{lof}{\contentsline {figure}{\numberline {67}{\ignorespaces 模板便签的时序图}}{74}{figure.caption.83}\protected@file@percent }
\@writefile{lof}{\contentsline {figure}{\numberline {67}{\ignorespaces 语音类型}}{73}{figure.caption.82}\protected@file@percent } \@writefile{toc}{\contentsline {subsubsection}{\numberline {3.4.12}语音听写}{75}{subsubsection.3.4.12}\protected@file@percent }
\@writefile{lof}{\contentsline {figure}{\numberline {68}{\ignorespaces 音频类型}}{73}{figure.caption.82}\protected@file@percent } \@writefile{lof}{\contentsline {figure}{\numberline {68}{\ignorespaces 语音听写(a)}}{75}{figure.caption.84}\protected@file@percent }
\@writefile{lof}{\contentsline {figure}{\numberline {69}{\ignorespaces 语音合成的时序图}}{74}{figure.caption.83}\protected@file@percent } \@writefile{lof}{\contentsline {figure}{\numberline {69}{\ignorespaces 语音听写(b)}}{75}{figure.caption.84}\protected@file@percent }
\@writefile{toc}{\contentsline {subsubsection}{\numberline {3.4.14}对话式大模型}{75}{subsubsection.3.4.14}\protected@file@percent } \@writefile{lof}{\contentsline {figure}{\numberline {70}{\ignorespaces 语音听写的时序图}}{76}{figure.caption.85}\protected@file@percent }
\@writefile{lof}{\contentsline {figure}{\numberline {70}{\ignorespaces 对话式大模型}}{75}{figure.caption.84}\protected@file@percent } \@writefile{lof}{\contentsline {figure}{\numberline {71}{\ignorespaces 语音听写的代码展示}}{77}{figure.caption.86}\protected@file@percent }
\@writefile{lof}{\contentsline {figure}{\numberline {71}{\ignorespaces 对话式大模型的流程图}}{76}{figure.caption.85}\protected@file@percent } \@writefile{toc}{\contentsline {subsubsection}{\numberline {3.4.13}语音合成}{78}{subsubsection.3.4.13}\protected@file@percent }
\@writefile{lof}{\contentsline {figure}{\numberline {72}{\ignorespaces 对话式大模型的时序图}}{77}{figure.caption.86}\protected@file@percent } \@writefile{lof}{\contentsline {figure}{\numberline {72}{\ignorespaces 语音合成}}{78}{figure.caption.87}\protected@file@percent }
\@writefile{lof}{\contentsline {figure}{\numberline {73}{\ignorespaces 语音类型}}{79}{figure.caption.88}\protected@file@percent }
\@writefile{lof}{\contentsline {figure}{\numberline {74}{\ignorespaces 音频类型}}{79}{figure.caption.88}\protected@file@percent }
\@writefile{lof}{\contentsline {figure}{\numberline {75}{\ignorespaces 语音合成的时序图}}{80}{figure.caption.89}\protected@file@percent }
\@writefile{lof}{\contentsline {figure}{\numberline {76}{\ignorespaces 语音合成的代码展示}}{81}{figure.caption.90}\protected@file@percent }
\@writefile{toc}{\contentsline {subsubsection}{\numberline {3.4.14}对话式大模型}{82}{subsubsection.3.4.14}\protected@file@percent }
\@writefile{lof}{\contentsline {figure}{\numberline {77}{\ignorespaces 对话式大模型}}{82}{figure.caption.91}\protected@file@percent }
\@writefile{lof}{\contentsline {figure}{\numberline {78}{\ignorespaces 对话式大模型的流程图}}{83}{figure.caption.92}\protected@file@percent }
\@writefile{lof}{\contentsline {figure}{\numberline {79}{\ignorespaces 对话式大模型的时序图}}{84}{figure.caption.93}\protected@file@percent }
\@writefile{lof}{\contentsline {figure}{\numberline {80}{\ignorespaces 对话式大模型的代码展示}}{85}{figure.caption.94}\protected@file@percent }
\gdef \LT@vi {\LT@entry \gdef \LT@vi {\LT@entry
{1}{36.9863pt}\LT@entry {1}{36.9863pt}\LT@entry
{1}{109.13788pt}\LT@entry {1}{109.13788pt}\LT@entry
{1}{99.46188pt}} {1}{99.46188pt}}
\@writefile{lot}{\contentsline {table}{\numberline {6}{\ignorespaces \relax }}{78}{table.6}\protected@file@percent } \@writefile{lot}{\contentsline {table}{\numberline {6}{\ignorespaces \relax }}{86}{table.6}\protected@file@percent }
\@writefile{toc}{\contentsline {subsubsection}{\numberline {3.4.15}撤回功能}{79}{subsubsection.3.4.15}\protected@file@percent } \@writefile{toc}{\contentsline {subsubsection}{\numberline {3.4.15}撤回功能}{87}{subsubsection.3.4.15}\protected@file@percent }
\@writefile{lof}{\contentsline {figure}{\numberline {73}{\ignorespaces 撤回功能}}{79}{figure.caption.87}\protected@file@percent } \@writefile{lof}{\contentsline {figure}{\numberline {81}{\ignorespaces 撤回功能}}{87}{figure.caption.95}\protected@file@percent }
\@writefile{toc}{\contentsline {subsubsection}{\numberline {3.4.16}获取地理位置}{80}{subsubsection.3.4.16}\protected@file@percent } \@writefile{lof}{\contentsline {figure}{\numberline {82}{\ignorespaces 撤回功能的时序图}}{88}{figure.caption.96}\protected@file@percent }
\@writefile{lof}{\contentsline {figure}{\numberline {74}{\ignorespaces 获取地理位置}}{80}{figure.caption.88}\protected@file@percent } \@writefile{toc}{\contentsline {subsubsection}{\numberline {3.4.16}获取地理位置}{89}{subsubsection.3.4.16}\protected@file@percent }
\@writefile{lof}{\contentsline {figure}{\numberline {75}{\ignorespaces 清除地理位置}}{80}{figure.caption.88}\protected@file@percent } \@writefile{lof}{\contentsline {figure}{\numberline {83}{\ignorespaces 获取地理位置}}{89}{figure.caption.97}\protected@file@percent }
\@writefile{toc}{\contentsline {section}{\numberline {4}实践收获和体会}{81}{section.4}\protected@file@percent } \@writefile{lof}{\contentsline {figure}{\numberline {84}{\ignorespaces 清除地理位置}}{89}{figure.caption.97}\protected@file@percent }
\@writefile{toc}{\contentsline {subsection}{\numberline {4.1}收获}{81}{subsection.4.1}\protected@file@percent } \@writefile{lof}{\contentsline {figure}{\numberline {85}{\ignorespaces 获取地理位置的时序图}}{90}{figure.caption.98}\protected@file@percent }
\@writefile{toc}{\contentsline {subsection}{\numberline {4.2}体会}{81}{subsection.4.2}\protected@file@percent } \@writefile{toc}{\contentsline {section}{\numberline {4}实践收获和体会}{91}{section.4}\protected@file@percent }
\@writefile{toc}{\contentsline {subsection}{\numberline {4.3}参考文献与网址}{82}{subsection.4.3}\protected@file@percent } \@writefile{toc}{\contentsline {subsection}{\numberline {4.1}收获}{91}{subsection.4.1}\protected@file@percent }
\@writefile{toc}{\contentsline {subsubsection}{\numberline {4.3.1}讯飞智能API介绍}{82}{subsubsection.4.3.1}\protected@file@percent } \@writefile{toc}{\contentsline {subsection}{\numberline {4.2}体会}{91}{subsection.4.2}\protected@file@percent }
\@writefile{toc}{\contentsline {subsubsection}{\numberline {4.3.2}百度翻译API介绍}{82}{subsubsection.4.3.2}\protected@file@percent } \@writefile{toc}{\contentsline {subsection}{\numberline {4.3}参考文献与网址}{92}{subsection.4.3}\protected@file@percent }
\@writefile{toc}{\contentsline {subsubsection}{\numberline {4.3.3}UML建模}{82}{subsubsection.4.3.3}\protected@file@percent } \@writefile{toc}{\contentsline {subsubsection}{\numberline {4.3.1}讯飞智能API介绍}{92}{subsubsection.4.3.1}\protected@file@percent }
\@writefile{toc}{\contentsline {subsubsection}{\numberline {4.3.4}CodeArts质量分析}{82}{subsubsection.4.3.4}\protected@file@percent } \@writefile{toc}{\contentsline {subsubsection}{\numberline {4.3.2}百度翻译API介绍}{92}{subsubsection.4.3.2}\protected@file@percent }
\gdef \@abspage@last{82} \@writefile{toc}{\contentsline {subsubsection}{\numberline {4.3.3}UML建模}{92}{subsubsection.4.3.3}\protected@file@percent }
\@writefile{toc}{\contentsline {subsubsection}{\numberline {4.3.4}CodeArts质量分析}{92}{subsubsection.4.3.4}\protected@file@percent }
\gdef \@abspage@last{92}

@ -0,0 +1,365 @@
# Fdb version 4
["pdflatex"] 1736853720.97302 "d:/software engineering/xiaomi/xiaomi/xiaomi/doc/代码泛读、标注、维护报告/小米便签泛读、标注和维护报告文档.tex" "小米便签泛读、标注和维护报告文档.pdf" "小米便签泛读、标注和维护报告文档" 1736853735.78883 0
"c:/Windows/Fonts/msyh.ttc" 1733880346 19704352 1e10e74402e59d54499af795caf0b135 ""
"c:/Windows/Fonts/simhei.ttf" 1711630440 9755440 983b60188a8e5a7c29c06c674f428b3d ""
"c:/Windows/Fonts/simsun.ttc" 1733880347 18070492 992f2bdc407dde6953c5ed83ceac9a91 ""
"d:/software engineering/xiaomi/xiaomi/xiaomi/doc/代码泛读、标注、维护报告/小米便签泛读、标注和维护报告文档.tex" 1736853719 91059 202504a1b1fc5ef15e9bb590ce940dce ""
"f:/texlive/2024/texmf-dist/fonts/enc/dvips/cm-super/cm-super-ts1.enc" 1735820179 2900 1537cc8184ad1792082cd229ecc269f4 ""
"f:/texlive/2024/texmf-dist/fonts/map/fontname/texfonts.map" 1735821617 3524 cb3e574dea2d1052e39280babc910dc8 ""
"f:/texlive/2024/texmf-dist/fonts/sfd/ttf2pk/UGBK.sfd" 1735864473 182544 bcd31d5d273400b38612a969fcab55f9 ""
"f:/texlive/2024/texmf-dist/fonts/sfd/ttf2pk/Unicode.sfd" 1735864473 103212 c249c63d38b8b55408aee52d643b0c18 ""
"f:/texlive/2024/texmf-dist/fonts/tfm/jknappen/ec/tcrm1200.tfm" 1735820992 1536 74b7293ec3713bb7fdca8dd1bd1f469c ""
"f:/texlive/2024/texmf-dist/fonts/tfm/public/cm/cmbx12.tfm" 1735820169 1324 c910af8c371558dc20f2d7822f66fe64 ""
"f:/texlive/2024/texmf-dist/fonts/tfm/public/cm/cmmi12.tfm" 1735820169 1524 4414a8315f39513458b80dfc63bff03a ""
"f:/texlive/2024/texmf-dist/fonts/tfm/public/cm/cmmi6.tfm" 1735820169 1512 f21f83efb36853c0b70002322c1ab3ad ""
"f:/texlive/2024/texmf-dist/fonts/tfm/public/cm/cmmi8.tfm" 1735820169 1520 eccf95517727cb11801f4f1aee3a21b4 ""
"f:/texlive/2024/texmf-dist/fonts/tfm/public/cm/cmr10.tfm" 1735820169 1296 45809c5a464d5f32c8f98ba97c1bb47f ""
"f:/texlive/2024/texmf-dist/fonts/tfm/public/cm/cmr12.tfm" 1735820169 1288 655e228510b4c2a1abe905c368440826 ""
"f:/texlive/2024/texmf-dist/fonts/tfm/public/cm/cmr17.tfm" 1735820169 1292 296a67155bdbfc32aa9c636f21e91433 ""
"f:/texlive/2024/texmf-dist/fonts/tfm/public/cm/cmr6.tfm" 1735820169 1300 b62933e007d01cfd073f79b963c01526 ""
"f:/texlive/2024/texmf-dist/fonts/tfm/public/cm/cmr8.tfm" 1735820169 1292 21c1c5bfeaebccffdb478fd231a0997d ""
"f:/texlive/2024/texmf-dist/fonts/tfm/public/cm/cmsy10.tfm" 1735820169 1124 6c73e740cf17375f03eec0ee63599741 ""
"f:/texlive/2024/texmf-dist/fonts/tfm/public/cm/cmsy6.tfm" 1735820169 1116 933a60c408fc0a863a92debe84b2d294 ""
"f:/texlive/2024/texmf-dist/fonts/tfm/public/cm/cmsy8.tfm" 1735820169 1120 8b7d695260f3cff42e636090a8002094 ""
"f:/texlive/2024/texmf-dist/fonts/tfm/public/cm/cmtt12.tfm" 1735820169 772 9a936b7f5e2ff0557fce0f62822f0bbf ""
"f:/texlive/2024/texmf-dist/fonts/tfm/zhmetrics/unihei/unihei30.tfm" 1735865347 1172 18ad1097cc3f3c36c758d33bf2dd19bd ""
"f:/texlive/2024/texmf-dist/fonts/tfm/zhmetrics/unihei/unihei4e.tfm" 1735865347 1172 2d5e87dd6ec409d864e1fe1662d00646 ""
"f:/texlive/2024/texmf-dist/fonts/tfm/zhmetrics/unihei/unihei4f.tfm" 1735865347 1172 d30a5fea134273110a27f48164b06e0c ""
"f:/texlive/2024/texmf-dist/fonts/tfm/zhmetrics/unihei/unihei51.tfm" 1735865347 1172 7ee56fddd7b8de24477f743547fdf508 ""
"f:/texlive/2024/texmf-dist/fonts/tfm/zhmetrics/unihei/unihei52.tfm" 1735865347 1172 481a000690ef15d58de2a93b3c34574c ""
"f:/texlive/2024/texmf-dist/fonts/tfm/zhmetrics/unihei/unihei53.tfm" 1735865347 1172 a5c37c86ae9131b27b9c0199f3d12df2 ""
"f:/texlive/2024/texmf-dist/fonts/tfm/zhmetrics/unihei/unihei54.tfm" 1735865347 1172 d48fa656debc44b54635777f72473a7c ""
"f:/texlive/2024/texmf-dist/fonts/tfm/zhmetrics/unihei/unihei56.tfm" 1735865347 1172 3d70386494675a81e9a6697b900ec8a8 ""
"f:/texlive/2024/texmf-dist/fonts/tfm/zhmetrics/unihei/unihei57.tfm" 1735865347 1172 22fcff286e20a86fd370e6e42f5ce3ce ""
"f:/texlive/2024/texmf-dist/fonts/tfm/zhmetrics/unihei/unihei59.tfm" 1735865347 1172 cb2089a3c8bd5826b7666fffdf326cbc ""
"f:/texlive/2024/texmf-dist/fonts/tfm/zhmetrics/unihei/unihei5b.tfm" 1735865346 1172 2120666fa3540653fd1185d802592022 ""
"f:/texlive/2024/texmf-dist/fonts/tfm/zhmetrics/unihei/unihei5c.tfm" 1735865347 1172 bd43fa5a6a1bdc14b787de765c6df7cc ""
"f:/texlive/2024/texmf-dist/fonts/tfm/zhmetrics/unihei/unihei5d.tfm" 1735865347 1172 ad3b1e5fc915d97e4a51b8667388e1de ""
"f:/texlive/2024/texmf-dist/fonts/tfm/zhmetrics/unihei/unihei5e.tfm" 1735865346 1172 43d03c144e7fffa57074d64aa459c451 ""
"f:/texlive/2024/texmf-dist/fonts/tfm/zhmetrics/unihei/unihei5f.tfm" 1735865347 1172 7048f0a8b693444590781debe54eecbd ""
"f:/texlive/2024/texmf-dist/fonts/tfm/zhmetrics/unihei/unihei60.tfm" 1735865346 1172 96cb70e1efefba6c98e5b547e0d33833 ""
"f:/texlive/2024/texmf-dist/fonts/tfm/zhmetrics/unihei/unihei61.tfm" 1735865347 1172 3f7056664c0918b43fea3154b2e9a4e5 ""
"f:/texlive/2024/texmf-dist/fonts/tfm/zhmetrics/unihei/unihei62.tfm" 1735865347 1172 3b0f7c4bc785f23eefed0160e713cd09 ""
"f:/texlive/2024/texmf-dist/fonts/tfm/zhmetrics/unihei/unihei63.tfm" 1735865347 1172 fff11ea27394506a041a526a495f9652 ""
"f:/texlive/2024/texmf-dist/fonts/tfm/zhmetrics/unihei/unihei64.tfm" 1735865347 1172 abd4be36b7787f9979caadfeef9cdae5 ""
"f:/texlive/2024/texmf-dist/fonts/tfm/zhmetrics/unihei/unihei65.tfm" 1735865347 1172 c34b1545992ab0d7393a03f889ceeb86 ""
"f:/texlive/2024/texmf-dist/fonts/tfm/zhmetrics/unihei/unihei66.tfm" 1735865347 1172 023ac6647c726f082a8ecd4350d68793 ""
"f:/texlive/2024/texmf-dist/fonts/tfm/zhmetrics/unihei/unihei67.tfm" 1735865347 1172 127372bbba8b4f4a65a26e565c0c6a2e ""
"f:/texlive/2024/texmf-dist/fonts/tfm/zhmetrics/unihei/unihei68.tfm" 1735865347 1172 a6e39128d14a2d8e22ed8239e864feff ""
"f:/texlive/2024/texmf-dist/fonts/tfm/zhmetrics/unihei/unihei6a.tfm" 1735865347 1172 ea35fa13ee483c308a0c68cffa2f52fb ""
"f:/texlive/2024/texmf-dist/fonts/tfm/zhmetrics/unihei/unihei6b.tfm" 1735865347 1172 865a135040ed6ad7a3ce493fd0108ece ""
"f:/texlive/2024/texmf-dist/fonts/tfm/zhmetrics/unihei/unihei6c.tfm" 1735865347 1172 7dd7a6f05321dd25f399ebba47f53887 ""
"f:/texlive/2024/texmf-dist/fonts/tfm/zhmetrics/unihei/unihei6d.tfm" 1735865346 1172 e5be6419407f0c8504254055afe6a633 ""
"f:/texlive/2024/texmf-dist/fonts/tfm/zhmetrics/unihei/unihei6e.tfm" 1735865347 1172 bd56dfdf26ff6117dfce95c1a9273b69 ""
"f:/texlive/2024/texmf-dist/fonts/tfm/zhmetrics/unihei/unihei72.tfm" 1735865347 1172 0743ca7a73b589a0a7b7707340e6c407 ""
"f:/texlive/2024/texmf-dist/fonts/tfm/zhmetrics/unihei/unihei73.tfm" 1735865347 1172 04594028df286605c5e043f49c67e7c6 ""
"f:/texlive/2024/texmf-dist/fonts/tfm/zhmetrics/unihei/unihei74.tfm" 1735865347 1172 a9c6136b4c7ff7b154a76d1701531b59 ""
"f:/texlive/2024/texmf-dist/fonts/tfm/zhmetrics/unihei/unihei75.tfm" 1735865347 1172 a25bf5894dd20c7f5582ee012df9c39f ""
"f:/texlive/2024/texmf-dist/fonts/tfm/zhmetrics/unihei/unihei76.tfm" 1735865347 1172 717e1aab695517230a61456b5d0d4ae0 ""
"f:/texlive/2024/texmf-dist/fonts/tfm/zhmetrics/unihei/unihei78.tfm" 1735865347 1172 f839ed6c9e325affc7a6f8b3ce684108 ""
"f:/texlive/2024/texmf-dist/fonts/tfm/zhmetrics/unihei/unihei79.tfm" 1735865347 1172 b207e507f45bccbebcb511c2d8f484c9 ""
"f:/texlive/2024/texmf-dist/fonts/tfm/zhmetrics/unihei/unihei7a.tfm" 1735865347 1172 8e66b7d5a581fb748da225cc80739f0e ""
"f:/texlive/2024/texmf-dist/fonts/tfm/zhmetrics/unihei/unihei7b.tfm" 1735865347 1172 25a61bc54cd072423f001bcd06ad937f ""
"f:/texlive/2024/texmf-dist/fonts/tfm/zhmetrics/unihei/unihei7c.tfm" 1735865347 1172 9e4fe5216b40afa8ffc6c259528a5985 ""
"f:/texlive/2024/texmf-dist/fonts/tfm/zhmetrics/unihei/unihei7d.tfm" 1735865347 1172 81a3581242d083d082bb03904f89f65b ""
"f:/texlive/2024/texmf-dist/fonts/tfm/zhmetrics/unihei/unihei7e.tfm" 1735865346 1172 fc758d34799896087d8800c18ce979f8 ""
"f:/texlive/2024/texmf-dist/fonts/tfm/zhmetrics/unihei/unihei7f.tfm" 1735865347 1172 ea6db19cb8d2678f35079f6f874b4d84 ""
"f:/texlive/2024/texmf-dist/fonts/tfm/zhmetrics/unihei/unihei80.tfm" 1735865347 1172 7c53005410278de6d612480963dd5ced ""
"f:/texlive/2024/texmf-dist/fonts/tfm/zhmetrics/unihei/unihei82.tfm" 1735865347 1172 48a658a971e46d0d4eb65a8c59e02b35 ""
"f:/texlive/2024/texmf-dist/fonts/tfm/zhmetrics/unihei/unihei83.tfm" 1735865347 1172 1e66119ab3ed0a0669ae552fd97a5040 ""
"f:/texlive/2024/texmf-dist/fonts/tfm/zhmetrics/unihei/unihei86.tfm" 1735865346 1172 580a15928ff7c62adcfd1ae1167a5f7e ""
"f:/texlive/2024/texmf-dist/fonts/tfm/zhmetrics/unihei/unihei88.tfm" 1735865347 1172 4b5747a6c0d911e39c45f758903a60d6 ""
"f:/texlive/2024/texmf-dist/fonts/tfm/zhmetrics/unihei/unihei89.tfm" 1735865347 1172 364fffd8ea27d98d6edb9222bf84c180 ""
"f:/texlive/2024/texmf-dist/fonts/tfm/zhmetrics/unihei/unihei8a.tfm" 1735865347 1172 b8090cf7ab844b8c390669cbe8997c0c ""
"f:/texlive/2024/texmf-dist/fonts/tfm/zhmetrics/unihei/unihei8b.tfm" 1735865347 1172 bdf00141a2e7bd9848cfb6dae5c7e1ef ""
"f:/texlive/2024/texmf-dist/fonts/tfm/zhmetrics/unihei/unihei8d.tfm" 1735865347 1172 f0be8ff15d300dd67be1d65ad94ec80b ""
"f:/texlive/2024/texmf-dist/fonts/tfm/zhmetrics/unihei/unihei8f.tfm" 1735865347 1172 e5ac568cbbb10c21a8919c10147ccf70 ""
"f:/texlive/2024/texmf-dist/fonts/tfm/zhmetrics/unihei/unihei90.tfm" 1735865347 1172 bf3a9ea28c06174042dcd642737f0ad2 ""
"f:/texlive/2024/texmf-dist/fonts/tfm/zhmetrics/unihei/unihei91.tfm" 1735865347 1172 af08f180dd0ec6a7129972d09ff61a98 ""
"f:/texlive/2024/texmf-dist/fonts/tfm/zhmetrics/unihei/unihei94.tfm" 1735865347 1172 3342a075989efb631633f68dafc48654 ""
"f:/texlive/2024/texmf-dist/fonts/tfm/zhmetrics/unihei/unihei95.tfm" 1735865347 1172 5a7e9ba612e7803abcac167ef6c5a665 ""
"f:/texlive/2024/texmf-dist/fonts/tfm/zhmetrics/unihei/unihei96.tfm" 1735865346 1172 baafaa35cbf14b936974ec3a58b5f3e8 ""
"f:/texlive/2024/texmf-dist/fonts/tfm/zhmetrics/unihei/unihei97.tfm" 1735865346 1172 909826a1f69146e1bd8f119157e28fcd ""
"f:/texlive/2024/texmf-dist/fonts/tfm/zhmetrics/unihei/unihei98.tfm" 1735865347 1172 1261ce7302f6ac3352bb5ce3d475a0d8 ""
"f:/texlive/2024/texmf-dist/fonts/tfm/zhmetrics/unihei/unihei9a.tfm" 1735865347 1172 8ba4cc771068baafaef7437667c8184d ""
"f:/texlive/2024/texmf-dist/fonts/tfm/zhmetrics/unihei/uniheiff.tfm" 1735865347 1172 753ad64262b81ffe372ea0e0ce61c8b9 ""
"f:/texlive/2024/texmf-dist/fonts/tfm/zhmetrics/unisong/unisong20.tfm" 1735865347 1172 c443622f792d7e5350ad5382dd8aebb3 ""
"f:/texlive/2024/texmf-dist/fonts/tfm/zhmetrics/unisong/unisong30.tfm" 1735865347 1172 87d6ba1aff8b955258f6ef7a5d8e86e5 ""
"f:/texlive/2024/texmf-dist/fonts/tfm/zhmetrics/unisong/unisong4e.tfm" 1735865347 1172 89be830028b08964827966f204abf065 ""
"f:/texlive/2024/texmf-dist/fonts/tfm/zhmetrics/unisong/unisong4f.tfm" 1735865347 1172 dd7ec0fe171ece0b66015cb8929849f0 ""
"f:/texlive/2024/texmf-dist/fonts/tfm/zhmetrics/unisong/unisong50.tfm" 1735865347 1172 04255d5811683ec0231c5fbfdd125757 ""
"f:/texlive/2024/texmf-dist/fonts/tfm/zhmetrics/unisong/unisong51.tfm" 1735865347 1172 c46d453988a7d703c4f5c5104bb894f0 ""
"f:/texlive/2024/texmf-dist/fonts/tfm/zhmetrics/unisong/unisong52.tfm" 1735865347 1172 ebad2f047d83d1be72706895f11e9896 ""
"f:/texlive/2024/texmf-dist/fonts/tfm/zhmetrics/unisong/unisong53.tfm" 1735865347 1172 e2a03d4bc65395303b42aaff9aacd7be ""
"f:/texlive/2024/texmf-dist/fonts/tfm/zhmetrics/unisong/unisong54.tfm" 1735865347 1172 c93f9362e45903cde8748b054b30ab56 ""
"f:/texlive/2024/texmf-dist/fonts/tfm/zhmetrics/unisong/unisong55.tfm" 1735865347 1172 3c2677828bb3b2231f72896b373b851c ""
"f:/texlive/2024/texmf-dist/fonts/tfm/zhmetrics/unisong/unisong56.tfm" 1735865347 1172 483bbebc510ee17933c3af062965b6d4 ""
"f:/texlive/2024/texmf-dist/fonts/tfm/zhmetrics/unisong/unisong57.tfm" 1735865347 1172 eb821bcbfd385c0d470afef6ff6ac95b ""
"f:/texlive/2024/texmf-dist/fonts/tfm/zhmetrics/unisong/unisong58.tfm" 1735865347 1172 9097e54d4337c7af2506271a2618d1d8 ""
"f:/texlive/2024/texmf-dist/fonts/tfm/zhmetrics/unisong/unisong59.tfm" 1735865347 1172 2aa8dc9bdcfa6684a19d81e71fa8a3e1 ""
"f:/texlive/2024/texmf-dist/fonts/tfm/zhmetrics/unisong/unisong5b.tfm" 1735865347 1172 449ef25f4dcd447addb8325f7bf12b2a ""
"f:/texlive/2024/texmf-dist/fonts/tfm/zhmetrics/unisong/unisong5c.tfm" 1735865347 1172 bbe7d94072c5d308e673fac2512329ac ""
"f:/texlive/2024/texmf-dist/fonts/tfm/zhmetrics/unisong/unisong5d.tfm" 1735865347 1172 1fd8042971efdf7ea35b87f9c6c10b8b ""
"f:/texlive/2024/texmf-dist/fonts/tfm/zhmetrics/unisong/unisong5e.tfm" 1735865347 1172 19d2fe591b31a07314df704f4d4d5035 ""
"f:/texlive/2024/texmf-dist/fonts/tfm/zhmetrics/unisong/unisong5f.tfm" 1735865347 1172 e4d92bc2f617835508003ad811702c49 ""
"f:/texlive/2024/texmf-dist/fonts/tfm/zhmetrics/unisong/unisong60.tfm" 1735865347 1172 7b3876cac8e97dc2d0915ac00b6e4c26 ""
"f:/texlive/2024/texmf-dist/fonts/tfm/zhmetrics/unisong/unisong61.tfm" 1735865347 1172 0c54aba04f6eca94b3b31a372d096e93 ""
"f:/texlive/2024/texmf-dist/fonts/tfm/zhmetrics/unisong/unisong62.tfm" 1735865347 1172 9ffac14c72fbc4879502782835fb1e0a ""
"f:/texlive/2024/texmf-dist/fonts/tfm/zhmetrics/unisong/unisong63.tfm" 1735865347 1172 5558042a53f0a34c54eaf1c8af13f377 ""
"f:/texlive/2024/texmf-dist/fonts/tfm/zhmetrics/unisong/unisong64.tfm" 1735865347 1172 9123bc1a52f39fa754022a43a1394244 ""
"f:/texlive/2024/texmf-dist/fonts/tfm/zhmetrics/unisong/unisong65.tfm" 1735865347 1172 2873dd6228ece5c9b075cfdc580febae ""
"f:/texlive/2024/texmf-dist/fonts/tfm/zhmetrics/unisong/unisong66.tfm" 1735865347 1172 f300cf9aac35a61638796e3d2ecc0e47 ""
"f:/texlive/2024/texmf-dist/fonts/tfm/zhmetrics/unisong/unisong67.tfm" 1735865347 1172 bfeea74ab6553bd251ccbd092c04122a ""
"f:/texlive/2024/texmf-dist/fonts/tfm/zhmetrics/unisong/unisong68.tfm" 1735865347 1172 e36ee82e53889b69220fe0f54fd031bb ""
"f:/texlive/2024/texmf-dist/fonts/tfm/zhmetrics/unisong/unisong69.tfm" 1735865347 1172 0209d2b99858d2df0c8ca278aa28ba42 ""
"f:/texlive/2024/texmf-dist/fonts/tfm/zhmetrics/unisong/unisong6a.tfm" 1735865347 1172 00f8a00771908df2108694cbd69134d7 ""
"f:/texlive/2024/texmf-dist/fonts/tfm/zhmetrics/unisong/unisong6b.tfm" 1735865347 1172 eec47476c8168dac40c6b0d39a32faa4 ""
"f:/texlive/2024/texmf-dist/fonts/tfm/zhmetrics/unisong/unisong6c.tfm" 1735865347 1172 da6dd37ba8d24cc1a36aa510c8ac56f9 ""
"f:/texlive/2024/texmf-dist/fonts/tfm/zhmetrics/unisong/unisong6d.tfm" 1735865347 1172 3942109a9ca7a08ec5324d8eec4093d9 ""
"f:/texlive/2024/texmf-dist/fonts/tfm/zhmetrics/unisong/unisong6e.tfm" 1735865347 1172 42ca517602ab12cb60a5174be463b80a ""
"f:/texlive/2024/texmf-dist/fonts/tfm/zhmetrics/unisong/unisong6f.tfm" 1735865347 1172 c8e0b675a1ae3514b60e0bbed9ef993a ""
"f:/texlive/2024/texmf-dist/fonts/tfm/zhmetrics/unisong/unisong70.tfm" 1735865347 1172 65f78ffa41ce8b45f91f362b219db0e7 ""
"f:/texlive/2024/texmf-dist/fonts/tfm/zhmetrics/unisong/unisong71.tfm" 1735865347 1172 ac9bcd3bdbf45728188f855f6ba1cf2f ""
"f:/texlive/2024/texmf-dist/fonts/tfm/zhmetrics/unisong/unisong72.tfm" 1735865347 1172 3988931ed4f7026bbecd81a5650d7854 ""
"f:/texlive/2024/texmf-dist/fonts/tfm/zhmetrics/unisong/unisong73.tfm" 1735865347 1172 fd0cb8a34c74e2d27b9d6ceb95f2f96d ""
"f:/texlive/2024/texmf-dist/fonts/tfm/zhmetrics/unisong/unisong74.tfm" 1735865347 1172 9c784b2c832c4124ae2a4cc407dc47a5 ""
"f:/texlive/2024/texmf-dist/fonts/tfm/zhmetrics/unisong/unisong75.tfm" 1735865347 1172 402d633b1aba150cdcd663d684057796 ""
"f:/texlive/2024/texmf-dist/fonts/tfm/zhmetrics/unisong/unisong76.tfm" 1735865347 1172 44cc15829d76f419e5a8bac63a8fed30 ""
"f:/texlive/2024/texmf-dist/fonts/tfm/zhmetrics/unisong/unisong77.tfm" 1735865347 1172 700f8f915e90952a352eb230ae635c92 ""
"f:/texlive/2024/texmf-dist/fonts/tfm/zhmetrics/unisong/unisong78.tfm" 1735865347 1172 7693562f5e83d5e3f5e32b3aa27065f6 ""
"f:/texlive/2024/texmf-dist/fonts/tfm/zhmetrics/unisong/unisong79.tfm" 1735865347 1172 ce37048b43f744f562318164cad22210 ""
"f:/texlive/2024/texmf-dist/fonts/tfm/zhmetrics/unisong/unisong7a.tfm" 1735865347 1172 f8375167264f31944f2511f305972138 ""
"f:/texlive/2024/texmf-dist/fonts/tfm/zhmetrics/unisong/unisong7b.tfm" 1735865347 1172 11ddb11e6fbba10bd31629a75b0d10c6 ""
"f:/texlive/2024/texmf-dist/fonts/tfm/zhmetrics/unisong/unisong7c.tfm" 1735865347 1172 244f58522afea40d9573f43f05491e74 ""
"f:/texlive/2024/texmf-dist/fonts/tfm/zhmetrics/unisong/unisong7d.tfm" 1735865347 1172 4025c8a91771a1668f52295903b8fc89 ""
"f:/texlive/2024/texmf-dist/fonts/tfm/zhmetrics/unisong/unisong7e.tfm" 1735865347 1172 c58659cf25f9ba2d1c548f969b16af79 ""
"f:/texlive/2024/texmf-dist/fonts/tfm/zhmetrics/unisong/unisong7f.tfm" 1735865347 1172 4fb15fe26ea6dad0b54285fd42fdf8b9 ""
"f:/texlive/2024/texmf-dist/fonts/tfm/zhmetrics/unisong/unisong80.tfm" 1735865347 1172 bc023ebc9b121bce07974f18a4be28bc ""
"f:/texlive/2024/texmf-dist/fonts/tfm/zhmetrics/unisong/unisong81.tfm" 1735865347 1172 88aa66087396e79a2d9046555fe05ea9 ""
"f:/texlive/2024/texmf-dist/fonts/tfm/zhmetrics/unisong/unisong82.tfm" 1735865347 1172 97758becb7742daa4b4c772be88e9009 ""
"f:/texlive/2024/texmf-dist/fonts/tfm/zhmetrics/unisong/unisong83.tfm" 1735865347 1172 7dfd9db201c758b6a39baf9f8fe63ca3 ""
"f:/texlive/2024/texmf-dist/fonts/tfm/zhmetrics/unisong/unisong84.tfm" 1735865347 1172 28184c57fe14bd0a42eeec4fe056b9b7 ""
"f:/texlive/2024/texmf-dist/fonts/tfm/zhmetrics/unisong/unisong85.tfm" 1735865347 1172 1e0042ffb16f156fe969c5931939aa12 ""
"f:/texlive/2024/texmf-dist/fonts/tfm/zhmetrics/unisong/unisong86.tfm" 1735865347 1172 1c2dc910b8ad781a19e026043f33b0fe ""
"f:/texlive/2024/texmf-dist/fonts/tfm/zhmetrics/unisong/unisong88.tfm" 1735865347 1172 e80b61bcc19bffe1009dc0e70ca042e8 ""
"f:/texlive/2024/texmf-dist/fonts/tfm/zhmetrics/unisong/unisong89.tfm" 1735865347 1172 8b185a44b25b68fee81f017ffd4f4c82 ""
"f:/texlive/2024/texmf-dist/fonts/tfm/zhmetrics/unisong/unisong8a.tfm" 1735865347 1172 a036683e790606984e21b7cb9523d25d ""
"f:/texlive/2024/texmf-dist/fonts/tfm/zhmetrics/unisong/unisong8b.tfm" 1735865347 1172 cb1829d4415ae14a6d1b42840373e23a ""
"f:/texlive/2024/texmf-dist/fonts/tfm/zhmetrics/unisong/unisong8c.tfm" 1735865347 1172 ef00399cafeb3f8b6343803347ead58f ""
"f:/texlive/2024/texmf-dist/fonts/tfm/zhmetrics/unisong/unisong8d.tfm" 1735865347 1172 766e8f05ddf433a70188e0789a492ab5 ""
"f:/texlive/2024/texmf-dist/fonts/tfm/zhmetrics/unisong/unisong8e.tfm" 1735865347 1172 9dfad4829b5a6e75e3e50384da3f5d00 ""
"f:/texlive/2024/texmf-dist/fonts/tfm/zhmetrics/unisong/unisong8f.tfm" 1735865347 1172 39abbbe02586d0f65fa39c19429184a6 ""
"f:/texlive/2024/texmf-dist/fonts/tfm/zhmetrics/unisong/unisong90.tfm" 1735865347 1172 1dd258add692258fd748a53ff76ed075 ""
"f:/texlive/2024/texmf-dist/fonts/tfm/zhmetrics/unisong/unisong91.tfm" 1735865347 1172 084e1e91aa4ae30efc415c3663943670 ""
"f:/texlive/2024/texmf-dist/fonts/tfm/zhmetrics/unisong/unisong92.tfm" 1735865347 1172 95013a1223a6a04645b71fd4d4c13d0b ""
"f:/texlive/2024/texmf-dist/fonts/tfm/zhmetrics/unisong/unisong94.tfm" 1735865347 1172 00477fac41b20ed3dc624d7550b67f54 ""
"f:/texlive/2024/texmf-dist/fonts/tfm/zhmetrics/unisong/unisong95.tfm" 1735865347 1172 b83dfb32a9b8d234282a0b11898d2c55 ""
"f:/texlive/2024/texmf-dist/fonts/tfm/zhmetrics/unisong/unisong96.tfm" 1735865347 1172 97abce3faa5097f1401cb707f6f69600 ""
"f:/texlive/2024/texmf-dist/fonts/tfm/zhmetrics/unisong/unisong97.tfm" 1735865347 1172 3322410a0eee91e13e02457b09378209 ""
"f:/texlive/2024/texmf-dist/fonts/tfm/zhmetrics/unisong/unisong98.tfm" 1735865347 1172 0d85b1f7b78508ff1f0a5ef94e0aaca9 ""
"f:/texlive/2024/texmf-dist/fonts/tfm/zhmetrics/unisong/unisong99.tfm" 1735865347 1172 445e3c81b2f1f84601e454216cbde866 ""
"f:/texlive/2024/texmf-dist/fonts/tfm/zhmetrics/unisong/unisong9a.tfm" 1735865347 1172 37a3cd36cf03e67f393bee80b1370d05 ""
"f:/texlive/2024/texmf-dist/fonts/tfm/zhmetrics/unisong/unisong9e.tfm" 1735865347 1172 e797949130fb017e573d6826989dff50 ""
"f:/texlive/2024/texmf-dist/fonts/tfm/zhmetrics/unisong/unisong9f.tfm" 1735865347 1172 9f5913528ac56c45715ab9430a95446c ""
"f:/texlive/2024/texmf-dist/fonts/tfm/zhmetrics/unisong/unisongff.tfm" 1735865347 1172 156175f4eaa9daea4e21b890ac9fafb8 ""
"f:/texlive/2024/texmf-dist/fonts/type1/public/amsfonts/cm/cmbx12.pfb" 1735818841 32080 340ef9bf63678554ee606688e7b5339d ""
"f:/texlive/2024/texmf-dist/fonts/type1/public/amsfonts/cm/cmr10.pfb" 1735818841 35752 024fb6c41858982481f6968b5fc26508 ""
"f:/texlive/2024/texmf-dist/fonts/type1/public/amsfonts/cm/cmr12.pfb" 1735818841 32722 d7379af29a190c3f453aba36302ff5a9 ""
"f:/texlive/2024/texmf-dist/fonts/type1/public/amsfonts/cm/cmtt12.pfb" 1735818841 24252 1e4e051947e12dfb50fee0b7f4e26e3a ""
"f:/texlive/2024/texmf-dist/fonts/type1/public/cm-super/sfrm1200.pfb" 1735820179 136101 b18d10b3436f8cb0cd04046deb340fe7 ""
"f:/texlive/2024/texmf-dist/tex/context/base/mkii/supp-pdf.mkii" 1735823707 71627 94eb9990bed73c364d7f53f960cc8c5b ""
"f:/texlive/2024/texmf-dist/tex/generic/atbegshi/atbegshi.sty" 1735819181 24708 5584a51a7101caf7e6bbf1fc27d8f7b1 ""
"f:/texlive/2024/texmf-dist/tex/generic/bigintcalc/bigintcalc.sty" 1735819688 40635 c40361e206be584d448876bba8a64a3b ""
"f:/texlive/2024/texmf-dist/tex/generic/bitset/bitset.sty" 1735819708 33961 6b5c75130e435b2bfdb9f480a09a39f9 ""
"f:/texlive/2024/texmf-dist/tex/generic/ctex/zhmap/ctex-zhmap-windows.tex" 1735820540 5818 f8fc8b7a2383410fd5810f6ec6565186 ""
"f:/texlive/2024/texmf-dist/tex/generic/gettitlestring/gettitlestring.sty" 1735821805 8371 9d55b8bd010bc717624922fb3477d92e ""
"f:/texlive/2024/texmf-dist/tex/generic/iftex/ifpdf.sty" 1735822347 480 5778104efadad304ced77548ca2184b1 ""
"f:/texlive/2024/texmf-dist/tex/generic/iftex/iftex.sty" 1735822347 7237 bdd120a32c8fdb4b433cf9ca2e7cd98a ""
"f:/texlive/2024/texmf-dist/tex/generic/iftex/ifvtex.sty" 1735822347 1057 525c2192b5febbd8c1f662c9468335bb ""
"f:/texlive/2024/texmf-dist/tex/generic/infwarerr/infwarerr.sty" 1735822388 8356 7bbb2c2373aa810be568c29e333da8ed ""
"f:/texlive/2024/texmf-dist/tex/generic/intcalc/intcalc.sty" 1735822415 31769 002a487f55041f8e805cfbf6385ffd97 ""
"f:/texlive/2024/texmf-dist/tex/generic/kvdefinekeys/kvdefinekeys.sty" 1735822680 5412 d5a2436094cd7be85769db90f29250a6 ""
"f:/texlive/2024/texmf-dist/tex/generic/ltxcmds/ltxcmds.sty" 1735823128 17865 1a9bd36b4f98178fa551aca822290953 ""
"f:/texlive/2024/texmf-dist/tex/generic/pdfescape/pdfescape.sty" 1735862221 19007 15924f7228aca6c6d184b115f4baa231 ""
"f:/texlive/2024/texmf-dist/tex/generic/pdftexcmds/pdftexcmds.sty" 1735862263 20089 80423eac55aa175305d35b49e04fe23b ""
"f:/texlive/2024/texmf-dist/tex/generic/uniquecounter/uniquecounter.sty" 1735864673 7008 f92eaa0a3872ed622bbf538217cd2ab7 ""
"f:/texlive/2024/texmf-dist/tex/latex/atveryend/atveryend.sty" 1735819193 19336 ce7ae9438967282886b3b036cfad1e4d ""
"f:/texlive/2024/texmf-dist/tex/latex/auxhook/auxhook.sty" 1735819231 3935 57aa3c3e203a5c2effb4d2bd2efbc323 ""
"f:/texlive/2024/texmf-dist/tex/latex/base/article.cls" 1735822743 20144 147463a6a579f4597269ef9565205cfe ""
"f:/texlive/2024/texmf-dist/tex/latex/base/atbegshi-ltx.sty" 1735822743 3045 273c666a54e60b9f730964f431a56c1b ""
"f:/texlive/2024/texmf-dist/tex/latex/base/atveryend-ltx.sty" 1735822743 2462 6bc53756156dbd71c1ad550d30a3b93f ""
"f:/texlive/2024/texmf-dist/tex/latex/base/fix-cm.sty" 1735822743 14741 8b0de6b00fb0a5eac1dbb1bd11363c83 ""
"f:/texlive/2024/texmf-dist/tex/latex/base/fontenc.sty" 1735822743 5119 a04a8b68ab4f6ce800a41f7f8012a10e ""
"f:/texlive/2024/texmf-dist/tex/latex/base/inputenc.sty" 1735822743 5048 425739d70251273bf93e3d51f3c40048 ""
"f:/texlive/2024/texmf-dist/tex/latex/base/size12.clo" 1735822743 8449 f07039d8e4e89f21078d9b5137579bfc ""
"f:/texlive/2024/texmf-dist/tex/latex/base/ts1enc.def" 1735822743 8090 f16408278fc28f119d5a6757c212f57e ""
"f:/texlive/2024/texmf-dist/tex/latex/caption/caption.sty" 1735819898 56128 c2ccf1a29d78c33bc553880402e4fb9a ""
"f:/texlive/2024/texmf-dist/tex/latex/caption/caption3.sty" 1735819898 72619 ee90b6612147680fd73c3b1406a74245 ""
"f:/texlive/2024/texmf-dist/tex/latex/caption/ltcaption.sty" 1735819898 7418 021d7c4eb11bde94592761855a3d046e ""
"f:/texlive/2024/texmf-dist/tex/latex/caption/subcaption.sty" 1735819898 12494 0c0cdb824278a4d51cefeb2e79901315 ""
"f:/texlive/2024/texmf-dist/tex/latex/cjk/texinput/CJK.enc" 1735820117 29591 d67c9aa515f4260cdd60fa9f76d96368 ""
"f:/texlive/2024/texmf-dist/tex/latex/cjk/texinput/CJK.sty" 1735820117 33241 3ee25f21824a4a347866900e5037d6f3 ""
"f:/texlive/2024/texmf-dist/tex/latex/cjk/texinput/CJKspace.sty" 1735820117 2451 fef3f022e9041e00c5a6e0f269d142dd ""
"f:/texlive/2024/texmf-dist/tex/latex/cjk/texinput/CJKutf8.sty" 1735820117 24621 e1c0abd54a87918dd1e31a35b20e99e4 ""
"f:/texlive/2024/texmf-dist/tex/latex/cjk/texinput/UTF8/UTF8.bdg" 1735820117 3857 eb1bacae4debef49a730cd935a17d208 ""
"f:/texlive/2024/texmf-dist/tex/latex/cjk/texinput/UTF8/UTF8.chr" 1735820117 8601 48822bfc9ff5adbcc1c7f832dd920f29 ""
"f:/texlive/2024/texmf-dist/tex/latex/cjk/texinput/UTF8/UTF8.enc" 1735820117 6111 5a99517ba8cc0c0905d3c54d7c7bcc48 ""
"f:/texlive/2024/texmf-dist/tex/latex/cjk/texinput/mule/MULEenc.sty" 1735820117 12177 48c95ebf85a580326918e5eb490b477b ""
"f:/texlive/2024/texmf-dist/tex/latex/cjkpunct/CJKpunct.spa" 1735820124 7 7979211695692235f48c7d3ba95863ea ""
"f:/texlive/2024/texmf-dist/tex/latex/cjkpunct/CJKpunct.sty" 1735820124 17985 35c6beb757001c750ed764f3ac4ef0d6 ""
"f:/texlive/2024/texmf-dist/tex/latex/ctex/config/ctex-name-utf8.cfg" 1735820540 1770 50e40a993c4c5ea72af9155aff7e605c ""
"f:/texlive/2024/texmf-dist/tex/latex/ctex/config/ctex.cfg" 1735820540 1230 140911b70e325208170dc573931e772d ""
"f:/texlive/2024/texmf-dist/tex/latex/ctex/config/ctexopts.cfg" 1735820540 1291 feb9a19ff907013e8b3014895a284585 ""
"f:/texlive/2024/texmf-dist/tex/latex/ctex/ctex.sty" 1735820540 32650 ae1549373401d5cdb1fa16e45ec2f2c3 ""
"f:/texlive/2024/texmf-dist/tex/latex/ctex/ctexhook.sty" 1735820540 6505 33157acfddefdd8fd513e2308e07a435 ""
"f:/texlive/2024/texmf-dist/tex/latex/ctex/ctexpatch.sty" 1735820540 8448 194e901f66d106236c72ef098b091d00 ""
"f:/texlive/2024/texmf-dist/tex/latex/ctex/ctexspa.def" 1735820540 10881 81f1c81c512ebcc46745af438dfa73d9 ""
"f:/texlive/2024/texmf-dist/tex/latex/ctex/engine/ctex-engine-pdftex.def" 1735820540 20297 90a9347d15e74883d4c66bd8b9fe695e ""
"f:/texlive/2024/texmf-dist/tex/latex/ctex/fd/c70rm.fd" 1735820540 1820 94b600cf0e8675b72e2f47cdec13db0a ""
"f:/texlive/2024/texmf-dist/tex/latex/ctex/fontset/ctex-fontset-windows.def" 1735820540 4952 f781dcade04ad6ae6d09fde004a752be ""
"f:/texlive/2024/texmf-dist/tex/latex/ctex/scheme/ctex-scheme-chinese.def" 1735820540 2309 6d7454f886152e0f183b87105f3b3adf ""
"f:/texlive/2024/texmf-dist/tex/latex/epstopdf-pkg/epstopdf-base.sty" 1735821179 13886 d1306dcf79a944f6988e688c1785f9ce ""
"f:/texlive/2024/texmf-dist/tex/latex/etoolbox/etoolbox.sty" 1735821262 46845 3b58f70c6e861a13d927bff09d35ecbc ""
"f:/texlive/2024/texmf-dist/tex/latex/float/float.sty" 1735821559 6749 16d2656a1984957e674b149555f1ea1d ""
"f:/texlive/2024/texmf-dist/tex/latex/geometry/geometry.sty" 1735821786 41601 9cf6c5257b1bc7af01a58859749dd37a ""
"f:/texlive/2024/texmf-dist/tex/latex/graphics-cfg/color.cfg" 1735821949 1213 620bba36b25224fa9b7e1ccb4ecb76fd ""
"f:/texlive/2024/texmf-dist/tex/latex/graphics-cfg/graphics.cfg" 1735821949 1224 978390e9c2234eab29404bc21b268d1e ""
"f:/texlive/2024/texmf-dist/tex/latex/graphics-def/pdftex.def" 1735821951 19448 1e988b341dda20961a6b931bcde55519 ""
"f:/texlive/2024/texmf-dist/tex/latex/graphics/color.sty" 1735821947 7233 e46ce9241d2b2ca2a78155475fdd557a ""
"f:/texlive/2024/texmf-dist/tex/latex/graphics/graphics.sty" 1735821947 18387 8f900a490197ebaf93c02ae9476d4b09 ""
"f:/texlive/2024/texmf-dist/tex/latex/graphics/graphicx.sty" 1735821947 8010 a8d949cbdbc5c983593827c9eec252e1 ""
"f:/texlive/2024/texmf-dist/tex/latex/graphics/keyval.sty" 1735821947 2671 7e67d78d9b88c845599a85b2d41f2e39 ""
"f:/texlive/2024/texmf-dist/tex/latex/graphics/mathcolor.ltx" 1735821947 2885 9c645d672ae17285bba324998918efd8 ""
"f:/texlive/2024/texmf-dist/tex/latex/graphics/trig.sty" 1735821947 4023 293ea1c16429fc0c4cf605f4da1791a9 ""
"f:/texlive/2024/texmf-dist/tex/latex/hycolor/hycolor.sty" 1735822222 17914 4c28a13fc3d975e6e81c9bea1d697276 ""
"f:/texlive/2024/texmf-dist/tex/latex/hyperref/hpdftex.def" 1735822234 48154 e46bf8adeb936500541441171d61726d ""
"f:/texlive/2024/texmf-dist/tex/latex/hyperref/hyperref.sty" 1735822234 220920 fd3cbb5f1a2bc9b8f451b8b7d8171264 ""
"f:/texlive/2024/texmf-dist/tex/latex/hyperref/nameref.sty" 1735822234 11026 182c63f139a71afd30a28e5f1ed2cd1c ""
"f:/texlive/2024/texmf-dist/tex/latex/hyperref/pd1enc.def" 1735822234 14249 e67cb186717b7ab18d14a4875e7e98b5 ""
"f:/texlive/2024/texmf-dist/tex/latex/hyperref/puenc.def" 1735822234 117112 05831178ece2cad4d9629dcf65099b11 ""
"f:/texlive/2024/texmf-dist/tex/latex/kvoptions/kvoptions.sty" 1735822684 22555 6d8e155cfef6d82c3d5c742fea7c992e ""
"f:/texlive/2024/texmf-dist/tex/latex/kvsetkeys/kvsetkeys.sty" 1735822686 13815 760b0c02f691ea230f5359c4e1de23a7 ""
"f:/texlive/2024/texmf-dist/tex/latex/l3backend/l3backend-pdftex.def" 1735822697 30006 3d512c0edd558928ddea1690180ef77e ""
"f:/texlive/2024/texmf-dist/tex/latex/l3kernel/expl3.sty" 1735822704 6565 10e89ed128ccd59431746bbdd82129fc ""
"f:/texlive/2024/texmf-dist/tex/latex/latexconfig/epstopdf-sys.cfg" 1735822833 678 4792914a8f45be57bb98413425e4c7af ""
"f:/texlive/2024/texmf-dist/tex/latex/listings/listings.cfg" 1735822991 1830 20af84c556326f7c12b9202ebe363f56 ""
"f:/texlive/2024/texmf-dist/tex/latex/listings/listings.sty" 1735822991 81322 d02238bdeb305f2c9f9d0229f99371d0 ""
"f:/texlive/2024/texmf-dist/tex/latex/listings/lstmisc.sty" 1735822991 77022 5c8c440739265e7ba15b8379ece6ecd7 ""
"f:/texlive/2024/texmf-dist/tex/latex/listings/lstpatch.sty" 1735822991 329 f19f5da7234b51d16764e23d20999c73 ""
"f:/texlive/2024/texmf-dist/tex/latex/multirow/multirow.sty" 1735823758 6149 2398eec4faa1ee24ff761581e580ecf1 ""
"f:/texlive/2024/texmf-dist/tex/latex/refcount/refcount.sty" 1735863061 9878 9e94e8fa600d95f9c7731bb21dfb67a4 ""
"f:/texlive/2024/texmf-dist/tex/latex/rerunfilecheck/rerunfilecheck.sty" 1735863095 9714 ba3194bd52c8499b3f1e3eb91d409670 ""
"f:/texlive/2024/texmf-dist/tex/latex/setspace/setspace.sty" 1735863385 22490 8cac309b79a4c53a4ffce4b1b07aead0 ""
"f:/texlive/2024/texmf-dist/tex/latex/tools/array.sty" 1735864393 12667 e4b5eb11e4b7239e6c8a52bbe074a6c6 ""
"f:/texlive/2024/texmf-dist/tex/latex/tools/indentfirst.sty" 1735864393 1618 c5f08dcf49a56107311a81073b35fa4e ""
"f:/texlive/2024/texmf-dist/tex/latex/tools/longtable.sty" 1735864393 12935 94a3291359b5f73ff1b19345a6983105 ""
"f:/texlive/2024/texmf-dist/tex/latex/url/url.sty" 1735864762 12796 8edb7d69a20b857904dd0ea757c14ec9 ""
"f:/texlive/2024/texmf-dist/tex/latex/zhnumber/zhnumber-utf8.cfg" 1735865352 5700 603e2f09dad175efabc8594730623a0b ""
"f:/texlive/2024/texmf-dist/tex/latex/zhnumber/zhnumber.sty" 1735865352 38160 aafa8d740e4f21b62a4acd4835e54359 ""
"f:/texlive/2024/texmf-dist/web2c/texmf.cnf" 1735818660 41649 5d6ae549fbbcb850a863f69aa41f3d10 ""
"f:/texlive/2024/texmf-var/fonts/map/pdftex/updmap/pdftex.map" 1735865434 5513072 3c142b3aa2bb6151fbdf53ce8a9269ac ""
"f:/texlive/2024/texmf-var/web2c/pdftex/pdflatex.fmt" 1735865800 8221527 dde4bcbd8a14ed93bb1ccc7dff478a23 ""
"f:/texlive/2024/texmf.cnf" 1735865389 713 e69b156964470283e0530f5060668171 ""
"picture/1.1.png" 1736836183 100001 6f7d2c00d5d054ba695c8270700e1989 ""
"picture/111.png" 1736836183 122594 bb8c2de5b3391239d30ed1752a887e78 ""
"picture/112.png" 1736836183 505304 299da676b0adb190c99a07a85e830076 ""
"picture/113.png" 1736836183 202995 d2464340aa5352526764f08d505e846b ""
"picture/114.png" 1736836183 150157 dba5d060dc27662015deaa296b696feb ""
"picture/12.png" 1736836183 359717 34a5050668b51b7c0376b40e435290a5 ""
"picture/13.png" 1736836183 298537 c759c6ea0536af13d4e0582d344a8023 ""
"picture/14.png" 1736836183 338379 00e80518314cb9787aa0c8090f491ab3 ""
"picture/15.png" 1736836183 353100 20995e0b8c379c7af2871ebdb6af1035 ""
"picture/16.png" 1736836183 278909 7f2c25f6b5b2dc812a75612b09adfbbf ""
"picture/17.png" 1736836183 100047 aabb46f1b3fbc1ed034d0e5c7946b9f9 ""
"picture/18.png" 1736836183 113123 354af39d06bfcd863d3263f64da4bf48 ""
"picture/19.png" 1736836183 108072 5aa4f57f5fbdcf17a29b3d33f3578bf1 ""
"picture/2.png" 1736836183 72226 ae35b6edbc55f9cef51841be6e5d69ae ""
"picture/20.png" 1736836183 101173 61394766c552290861a8d665c9ff2c7f ""
"picture/21.png" 1736836183 95200 b4a5a0c74c83deb21355d65015e87bf1 ""
"picture/22.png" 1736836183 337255 2b60da7be806b1b17edcabe32c7b5952 ""
"picture/23.png" 1736836183 130416 aac6613a0320fc9640bc3ce39d723c4b ""
"picture/24.png" 1736836183 105456 ec3d5bfb8ee2a1c09c753443fb53dbb2 ""
"picture/25.png" 1736836183 134114 a7e7d8954fb77cb198d3a66695b221ec ""
"picture/26.png" 1736836183 134852 6f58cedb22cf13cbf693fd4531bb9309 ""
"picture/27.png" 1736836183 135063 a736b025ceba4c4cec4ca50cc852c6f2 ""
"picture/28.png" 1736836183 125615 ce2e5aaf0bcf5c3c3e34060ced136e8b ""
"picture/29.png" 1736836183 102928 c8dfe55924d27079e7cd00a996973ea4 ""
"picture/30.png" 1736836183 148888 15afa99a9d2975e8e80daf48379f1a9f ""
"picture/31.png" 1736836183 18378 95c5f077f665189bdba59e8c142ec14a ""
"picture/32.png" 1736836183 18063 b0c594d2abd1e8ca39958519d328357d ""
"picture/33.png" 1736836183 18546 3cfd1337f3288a2f0199060826dfc9fc ""
"picture/34.png" 1736836183 18439 d5b3c5244a2c3c0ddffaa69f0df741e9 ""
"picture/35.png" 1736836183 17579 4d78bd00353277483189f98712d9e4b7 ""
"picture/36.png" 1736836183 68009 a5842c173acf23b6f97b659634718b6d ""
"picture/37.png" 1736836183 283915 45d99bc11e85e6013d267a22ffc10607 ""
"picture/38.png" 1736836183 337153 b0bba29e3ef6acd6ea921530b94b6e27 ""
"picture/39.png" 1736836183 202762 c54197216340fdf254d8611660aacbc6 ""
"picture/4.png" 1736836183 39580 a23f91f7205a3d7444351d24e4107a91 ""
"picture/40.png" 1736836183 345182 fe0f99d7d5cafda530004723fa3530a8 ""
"picture/41.png" 1736836183 162089 9c3082c7c2d030d74c2a7d9b37184d66 ""
"picture/42.png" 1736836183 166236 d3b6c66b4226d58a98c0a3868759ee82 ""
"picture/46.png" 1736836183 54399 cb9671a4469b22701520d322df2f863c ""
"picture/47.png" 1736836183 16390 91c22e93ca62e82c065c249e0961f45c ""
"picture/48.png" 1736836183 59699 b64a5f2dd105938ffbe25090e832afb0 ""
"picture/7.png" 1736836183 27326 f356481d8ec0d433004bfc710f39a61d ""
"picture/8.png" 1736836183 51137 d7050f61e5db8c949f5559225f2c97d0 ""
"picture/9.png" 1736836183 107915 e3ace6c72f757cea414dfe2d2b637b9c ""
"picture/CodeArts-lastest-1.png" 1736836183 182715 5baf5aa420b4ba410bb99f2ebd1fde1a ""
"picture/CodeArts-master.png" 1736836183 330488 0d8a68423fb09ad6dd559eee401b2c01 ""
"picture/Data bar Chart -java.png" 1736836183 141503 5a33720f0e231500731e2c93b38b0207 ""
"picture/Data bar Chart -xml.png" 1736836183 128685 5c4ac7b145e525b6d0b742a15827f94d ""
"picture/Data pie Chart -java.png" 1736836183 209851 630cfd9010dd9c1d0b03a54a9228dbab ""
"picture/Data pie Chart -xml.png" 1736836183 214977 2cc96f7931facb23356b9edded8a0b97 ""
"picture/Dialogue-based large models.png" 1736836183 178500 4f885e4fcb96f7724a758732a10e3221 ""
"picture/Merge data bar chart.png" 1736836183 120528 950ef5e5720007d091150da992ccc542 ""
"picture/Merge data pie charts.png" 1736836183 184799 ba673fa0d1c77ae0ac7550d7a9322782 ""
"picture/Obtain the geographical location schematic diagram 1.png" 1736836183 97035 19df3cec920de0fab03dd6acddcaabab ""
"picture/Obtain the geographical location schematic diagram 2.png" 1736836183 111512 ac00bda5ec6f8571b45dac1b54f1dc9f ""
"picture/Speech synthesis diagram 1.png" 1736836183 134738 3ecdda3cf1a678992e1e13a26d1627fe ""
"picture/Speech synthesis diagram 2.png" 1736836183 136365 b53e9a84cf8eeb2a0242d3c163b2d909 ""
"picture/Speech synthesis diagram 3.png" 1736836183 107777 36a3f1a5fa826d8893d9dadde11d9aa7 ""
"picture/Structure Package.png" 1736836183 35143 9c39b4cdb8f40083b738c7d1c11101a6 ""
"picture/Template tag 1.png" 1736836183 277781 fd35e861b6e1fecf12886f293ff7880c ""
"picture/Template tag 2.png" 1736836183 117857 d3ef395ee7cd59da9f9d50e57bff4bf9 ""
"picture/Undo function1.png" 1736836183 155642 ce9508ca0dbeffc9b974e1db6fcaa2a3 ""
"picture/comment1.png" 1736850944 184238 ab01d2f0c5dd5709f2279234344489bf ""
"picture/comment2.png" 1736851339 209737 8c60497059c5e3f89859c38aea155f14 ""
"picture/comment3.png" 1736851643 6179 349fbb6dbc55ab20e7d2528748a9d1db ""
"picture/comment4.png" 1736851857 147966 85b26c0ef511888ef7880de84fb81372 ""
"picture/comment5.png" 1736851985 155348 f69079ca961443628cf56787739a549d ""
"picture/java-1.png" 1736836183 415152 453c9ced2e2ed9e83fe2d6def5a1224e ""
"picture/java-2.png" 1736836183 406150 9a95741d69b82489b464c09f1a5e4342 ""
"picture/linsten1.png" 1736836183 127493 917af4d9e9a825fc5d880da416ac4215 ""
"picture/linsten2.png" 1736836183 110317 882eb85892fb092e3b2ede72861658ad ""
"picture/packet.png" 1736836183 179675 b07b7f7c0c89b7149dd9c4f633e72d14 ""
"picture/seq12_Iat.png" 1736836183 107614 f6d35d0debaea4e2c890cfabbe9b6295 ""
"picture/seq13_Tts.png" 1736836183 115127 c6b0c5b6541fedabc431148697abea44 ""
"picture/seq14-LL.png" 1736836183 271500 ef5430b085847fdae02c9e2d2a9e67d0 ""
"picture/seq14_chatLLM.png" 1736836183 87469 c8618935124d9a5d5ff84c21c399bfc5 ""
"picture/seq3_Login.png" 1736836183 145119 af311b15513fdde25d4a0ac67688636e ""
"picture/seq4_Translate.png" 1736836183 62766 173286a4c767290d23bb3717f33cddd8 ""
"picture/seq5_Insert_Img.png" 1736839125 43439 fd56e4470d57888b24078f4483f92f82 ""
"picture/seq6_count.png" 1736839174 38801 a5591eb14b4e0a026c51b531a999f48d ""
"picture/seq7_Text.png" 1736839057 73405 4e35708853e6a3b7fa0a9161bbae912c ""
"picture/seq8_TtsSpeak.png" 1736839479 76367 ca60a63a541af3c163e8953f8cfa428e ""
"picture/seq9_secretmode.png" 1736840104 48693 9e52420b03b6dd9eced7ecadba383c1a ""
"picture/seq_10search.png" 1736840581 85762 9517444923a5185f955726d7688d7e76 ""
"picture/seq_11templatenote.png" 1736840932 84733 20fbf86a698359dae0bc16090a349f47 ""
"picture/seq_15revoke.png" 1736846019 58816 a16c78286bf640e7eaf18858fea3e2d4 ""
"picture/seq_16getlocation.png" 1736846293 89140 902d1ae490c4cdc403ad2db1b696ec84 ""
"picture/show1.png" 1736852586 142650 b146ba15fc44c93289a66338a7d7518f ""
"picture/show2.png" 1736852631 219208 1fc7984620fa3993e7876554638f2313 ""
"picture/show3.png" 1736852668 199227 ef7b9be3b5a34506539a0ca9c23b845c ""
"picture/xml-1.png" 1736836183 369276 6cc1d9a530cec03be55c53296252d485 ""
"picture/xml-2.png" 1736836183 572565 ba5fa1e4c851a9aea36bd41b76257b55 ""
"小米便签泛读、标注和维护报告文档.aux" 1736853733 21927 653fcf92b69d5aeff8489b601f59fe61 "pdflatex"
"小米便签泛读、标注和维护报告文档.out" 1736853733 5019 a623a28c46c39ba5020b5847bd6901fd "pdflatex"
"小米便签泛读、标注和维护报告文档.tex" 1736853719 91059 202504a1b1fc5ef15e9bb590ce940dce ""
"小米便签泛读、标注和维护报告文档.toc" 1736853733 5272 4f3de710a2b04433ff36c55e0c11a3db "pdflatex"
(generated)
"小米便签泛读、标注和维护报告文档.aux"
"小米便签泛读、标注和维护报告文档.log"
"小米便签泛读、标注和维护报告文档.out"
"小米便签泛读、标注和维护报告文档.pdf"
"小米便签泛读、标注和维护报告文档.toc"
(rewritten before read)

@ -13,30 +13,31 @@
\BOOKMARK [3][-]{subsubsection.3.2.3}{\376\377\165\114\227\142\213\276\213\241}{subsection.3.2}% 13 \BOOKMARK [3][-]{subsubsection.3.2.3}{\376\377\165\114\227\142\213\276\213\241}{subsection.3.2}% 13
\BOOKMARK [2][-]{subsection.3.3}{\376\377\176\364\142\244\116\343\170\001\145\160\221\317\116\345\123\312\215\050\221\317\140\305\121\265}{section.3}% 14 \BOOKMARK [2][-]{subsection.3.3}{\376\377\176\364\142\244\116\343\170\001\145\160\221\317\116\345\123\312\215\050\221\317\140\305\121\265}{section.3}% 14
\BOOKMARK [3][-]{subsubsection.3.3.1}{\376\377\176\364\142\244\116\343\170\001\145\160\221\317}{subsection.3.3}% 15 \BOOKMARK [3][-]{subsubsection.3.3.1}{\376\377\176\364\142\244\116\343\170\001\145\160\221\317}{subsection.3.3}% 15
\BOOKMARK [3][-]{subsubsection.3.3.2}{\376\377\124\004\122\237\200\375\116\343\170\001\211\304\152\041}{subsection.3.3}% 16 \BOOKMARK [3][-]{subsubsection.3.3.2}{\376\377\124\004\122\237\200\375\116\343\170\001\211\304\152\041\210\150}{subsection.3.3}% 16
\BOOKMARK [3][-]{subsubsection.3.3.3}{\376\377\176\364\142\244\124\016\166\204\215\050\221\317\122\006\147\220}{subsection.3.3}% 17 \BOOKMARK [3][-]{subsubsection.3.3.3}{\376\377\176\364\142\244\124\016\166\204\215\050\221\317\122\006\147\220}{subsection.3.3}% 17
\BOOKMARK [2][-]{subsection.3.4}{\376\377\176\364\142\244\124\016\166\204\217\157\116\366\123\237\127\213\116\345\123\312\122\237\200\375\134\125\171\072}{section.3}% 18 \BOOKMARK [3][-]{subsubsection.3.3.4}{\376\377\176\364\142\244\116\343\170\001\230\316\150\074\134\125\171\072}{subsection.3.3}% 18
\BOOKMARK [3][-]{subsubsection.3.4.1}{\376\377\213\276\177\156\165\114\227\142\200\314\146\157}{subsection.3.4}% 19 \BOOKMARK [2][-]{subsection.3.4}{\376\377\176\364\142\244\124\016\166\204\217\157\116\366\123\237\127\213\116\345\123\312\122\237\200\375\134\125\171\072}{section.3}% 19
\BOOKMARK [3][-]{subsubsection.3.4.2}{\376\377\153\042\217\316\165\114\227\142}{subsection.3.4}% 20 \BOOKMARK [3][-]{subsubsection.3.4.1}{\376\377\213\276\177\156\165\114\227\142\200\314\146\157}{subsection.3.4}% 20
\BOOKMARK [3][-]{subsubsection.3.4.3}{\376\377\166\173\137\125\133\306\170\001}{subsection.3.4}% 21 \BOOKMARK [3][-]{subsubsection.3.4.2}{\376\377\153\042\217\316\165\114\227\142}{subsection.3.4}% 21
\BOOKMARK [3][-]{subsubsection.3.4.4}{\376\377\177\373\213\321\122\237\200\375}{subsection.3.4}% 22 \BOOKMARK [3][-]{subsubsection.3.4.3}{\376\377\166\173\137\125\133\306\170\001}{subsection.3.4}% 22
\BOOKMARK [3][-]{subsubsection.3.4.5}{\376\377\143\322\121\145\126\376\162\107}{subsection.3.4}% 23 \BOOKMARK [3][-]{subsubsection.3.4.4}{\376\377\177\373\213\321\122\237\200\375}{subsection.3.4}% 23
\BOOKMARK [3][-]{subsubsection.3.4.6}{\376\377\176\337\213\241\133\127\173\046\116\052\145\160}{subsection.3.4}% 24 \BOOKMARK [3][-]{subsubsection.3.4.5}{\376\377\143\322\121\145\126\376\162\107}{subsection.3.4}% 24
\BOOKMARK [3][-]{subsubsection.3.4.7}{\376\377\133\314\145\207\147\054\122\237\200\375}{subsection.3.4}% 25 \BOOKMARK [3][-]{subsubsection.3.4.6}{\376\377\176\337\213\241\133\127\173\046\116\052\145\160}{subsection.3.4}% 25
\BOOKMARK [3][-]{subsubsection.3.4.8}{\376\377\147\027\213\373\122\237\200\375}{subsection.3.4}% 26 \BOOKMARK [3][-]{subsubsection.3.4.7}{\376\377\133\314\145\207\147\054\122\237\200\375}{subsection.3.4}% 26
\BOOKMARK [3][-]{subsubsection.3.4.9}{\376\377\171\301\133\306\152\041\137\017}{subsection.3.4}% 27 \BOOKMARK [3][-]{subsubsection.3.4.8}{\376\377\147\027\213\373\122\237\200\375}{subsection.3.4}% 27
\BOOKMARK [3][-]{subsubsection.3.4.10}{\376\377\173\024\213\260\177\026\217\221\121\205\144\034\175\042}{subsection.3.4}% 28 \BOOKMARK [3][-]{subsubsection.3.4.9}{\376\377\171\301\133\306\152\041\137\017}{subsection.3.4}% 28
\BOOKMARK [3][-]{subsubsection.3.4.11}{\376\377\152\041\147\177\117\277\173\176}{subsection.3.4}% 29 \BOOKMARK [3][-]{subsubsection.3.4.10}{\376\377\173\024\213\260\177\026\217\221\121\205\144\034\175\042}{subsection.3.4}% 29
\BOOKMARK [3][-]{subsubsection.3.4.12}{\376\377\213\355\227\363\124\054\121\231}{subsection.3.4}% 30 \BOOKMARK [3][-]{subsubsection.3.4.11}{\376\377\152\041\147\177\117\277\173\176}{subsection.3.4}% 30
\BOOKMARK [3][-]{subsubsection.3.4.13}{\376\377\213\355\227\363\124\010\142\020}{subsection.3.4}% 31 \BOOKMARK [3][-]{subsubsection.3.4.12}{\376\377\213\355\227\363\124\054\121\231}{subsection.3.4}% 31
\BOOKMARK [3][-]{subsubsection.3.4.14}{\376\377\133\371\213\335\137\017\131\047\152\041\127\213}{subsection.3.4}% 32 \BOOKMARK [3][-]{subsubsection.3.4.13}{\376\377\213\355\227\363\124\010\142\020}{subsection.3.4}% 32
\BOOKMARK [3][-]{subsubsection.3.4.15}{\376\377\144\244\126\336\122\237\200\375}{subsection.3.4}% 33 \BOOKMARK [3][-]{subsubsection.3.4.14}{\376\377\133\371\213\335\137\017\131\047\152\041\127\213}{subsection.3.4}% 33
\BOOKMARK [3][-]{subsubsection.3.4.16}{\376\377\203\267\123\326\127\060\164\006\117\115\177\156}{subsection.3.4}% 34 \BOOKMARK [3][-]{subsubsection.3.4.15}{\376\377\144\244\126\336\122\237\200\375}{subsection.3.4}% 34
\BOOKMARK [1][-]{section.4}{\376\377\133\236\215\365\145\066\203\267\124\214\117\123\117\032}{}% 35 \BOOKMARK [3][-]{subsubsection.3.4.16}{\376\377\203\267\123\326\127\060\164\006\117\115\177\156}{subsection.3.4}% 35
\BOOKMARK [2][-]{subsection.4.1}{\376\377\145\066\203\267}{section.4}% 36 \BOOKMARK [1][-]{section.4}{\376\377\133\236\215\365\145\066\203\267\124\214\117\123\117\032}{}% 36
\BOOKMARK [2][-]{subsection.4.2}{\376\377\117\123\117\032}{section.4}% 37 \BOOKMARK [2][-]{subsection.4.1}{\376\377\145\066\203\267}{section.4}% 37
\BOOKMARK [2][-]{subsection.4.3}{\376\377\123\302\200\003\145\207\163\056\116\016\177\121\127\100}{section.4}% 38 \BOOKMARK [2][-]{subsection.4.2}{\376\377\117\123\117\032}{section.4}% 38
\BOOKMARK [3][-]{subsubsection.4.3.1}{\376\377\213\257\230\336\146\172\200\375\000A\000P\000I\116\313\176\315}{subsection.4.3}% 39 \BOOKMARK [2][-]{subsection.4.3}{\376\377\123\302\200\003\145\207\163\056\116\016\177\121\127\100}{section.4}% 39
\BOOKMARK [3][-]{subsubsection.4.3.2}{\376\377\166\176\136\246\177\373\213\321\000A\000P\000I\116\313\176\315}{subsection.4.3}% 40 \BOOKMARK [3][-]{subsubsection.4.3.1}{\376\377\213\257\230\336\146\172\200\375\000A\000P\000I\116\313\176\315}{subsection.4.3}% 40
\BOOKMARK [3][-]{subsubsection.4.3.3}{\376\377\000U\000M\000L\136\372\152\041}{subsection.4.3}% 41 \BOOKMARK [3][-]{subsubsection.4.3.2}{\376\377\166\176\136\246\177\373\213\321\000A\000P\000I\116\313\176\315}{subsection.4.3}% 41
\BOOKMARK [3][-]{subsubsection.4.3.4}{\376\377\000C\000o\000d\000e\000A\000r\000t\000s\215\050\221\317\122\006\147\220}{subsection.4.3}% 42 \BOOKMARK [3][-]{subsubsection.4.3.3}{\376\377\000U\000M\000L\136\372\152\041}{subsection.4.3}% 42
\BOOKMARK [3][-]{subsubsection.4.3.4}{\376\377\000C\000o\000d\000e\000A\000r\000t\000s\215\050\221\317\122\006\147\220}{subsection.4.3}% 43

@ -824,9 +824,10 @@ Gtask包用于存放与数据更新同步检测异常相关的类和方法
\end{enumerate} \end{enumerate}
\newpage \newpage
\subsubsection{各功能代码规模} \subsubsection{各功能代码规模表}
\begin{longtable}{|p{0.15\textwidth}|p{0.15\textwidth}|p{0.15\textwidth}|p{0.2\textwidth}|} 在完成代码维护之后我们小组对维护的代码进行了统计展示了各功能代码规模统计结果见表4如下所示
\caption{代码质量分析详细结果} \\ \begin{longtable}{|p{0.15\textwidth}|p{0.15\textwidth}|p{0.2\textwidth}|p{0.2\textwidth}|}
\caption{各功能代码规模表} \\
\hline \hline
\footnotesize 序号 & \footnotesize 维护类别 & \footnotesize 名称 & \footnotesize 受影响的代码行数 \\ \footnotesize 序号 & \footnotesize 维护类别 & \footnotesize 名称 & \footnotesize 受影响的代码行数 \\
@ -866,8 +867,6 @@ Gtask包用于存放与数据更新同步检测异常相关的类和方法
\end{longtable} \end{longtable}
\newpage \newpage
\subsubsection{维护后的质量分析} \subsubsection{维护后的质量分析}
在代码维护之后我们小组再次对代码进行了质量分析使用CodeArts中的代码审查功能对代码的质量进行分析。 在代码维护之后我们小组再次对代码进行了质量分析使用CodeArts中的代码审查功能对代码的质量进行分析。
@ -913,7 +912,7 @@ Gtask包用于存放与数据更新同步检测异常相关的类和方法
\end{enumerate} \end{enumerate}
\item 详细的分析结果汇总见表4,如下所示: \item 详细的分析结果汇总见表5,如下所示:
\begin{longtable}{|p{0.15\textwidth}|p{0.1\textwidth}|p{0.65\textwidth}|} \begin{longtable}{|p{0.15\textwidth}|p{0.1\textwidth}|p{0.65\textwidth}|}
\caption{代码质量分析详细结果} \\ \caption{代码质量分析详细结果} \\
@ -1008,12 +1007,107 @@ Gtask包用于存放与数据更新同步检测异常相关的类和方法
\end{itemize} \end{itemize}
针对如上代码质量分析,我们小组对应地进行了如下改进:
\begin{enumerate}
\item \textbf{代码注释规范化}
针对G.CMT.01、G.CMT.03和G.CMT.06问题我们对所有public和protected方法添加了规范的Javadoc注释包含完整的功能说明、参数说明和返回值说明。同时规范了注释格式确保注释与代码之间保持适当的空行和空格。
\item \textbf{代码格式标准化}
解决G.FMT.06、G.FMT.08和G.FMT.10等问题统一采用4空格缩进控制行宽在120字符以内并规范了大括号的放置位置。通过IDE的代码格式化工具保证了整体代码风格的一致性。
\item \textbf{异常处理优化}
针对G.ERR.03问题重构了异常处理逻辑。对可能出现NullPointerException等运行时异常的代码段加入了try-catch或者分支语句作为预检查机制提高了代码的健壮性。
\item \textbf{方法结构优化}
解决G.MET.01系列问题对部分超过50行的方法进行了重构和拆分降低了代码块的嵌套深度并优化了参数数量提升了代码的可维护性。
\item \textbf{命名规范统一}
针对G.NAM.03、G.NAM.04和G.NAM.05问题,统一了类名使用大驼峰命名法,方法名使用小驼峰命名法,常量使用全大写下划线分隔的命名规范;对部分常量进行了统一声明。
\item \textbf{代码冗余清理}
解决G.OTH.03问题清理了所有注释掉的代码段和未使用的import语句提高了代码的整洁度和可读性。
\end{enumerate}
接下来本小组对维护后的代码进行了代码风格展示。
\newpage
\subsubsection{维护代码风格展示}
\begin{enumerate}
\item \textbf{注释规范性与完整性}
\begin{itemize}
\item 注释完整性:新增代码中添加了大量注释(约3900行)占总代码量的50\%左右,有助于代码的可读性和可维护性。
\item 命名规范:类注释、语句与语句块注释符合规范。
\item 代码格式:遵从最基本的缩进、空行、空格、换行等格式规范。
\end{itemize}
具体的注释规范性展示见图26。
\begin{figure}[H]
\centering
\includegraphics[width=1.0\textwidth]{picture/comment1.png}
\caption{注释规范性与完整性}
\end{figure}
\item \textbf{代码质量指标}
\begin{itemize}
\item 代码复杂度平均复杂度为3.22,处于合理范围内,表明代码结构相对简单清晰。
\item 代码重复率1.9\%的重复率较低,说明代码复用情况良好。
\item 异常处理:增加了预检查机制。
\end{itemize}
具体的代码质量指标展示见图27利用了较多的分支和try-catch语句预检查。
\begin{figure}[H]
\centering
\includegraphics[width=1.0\textwidth]{picture/comment2.png}
\caption{代码质量指标}
\end{figure}
\item \textbf{架构设计}
\begin{itemize}
\item 模块化:新增功能按照既有架构进行模块划分,保持了良好的代码组织结构。
\item 接口设计:通过接口封装第三方服务调用,提高了代码的可维护性和可扩展性。
\item 依赖管理合理使用了外部依赖但需要注意第三方SDK的版本管理和兼容性问题。
\end{itemize}
具体的架构设计展示见图28独立使用第三方SDK的信息传递文件以及配置文件单独成包。
\begin{figure}[H]
\centering
\includegraphics[width=0.8\textwidth]{picture/comment3.png}
\caption{架构设计}
\end{figure}
\item \textbf{性能考虑}
\begin{itemize}
\item 资源管理:对于线程创建等资源密集型操作,部分使用线程池进行管理。
\item 内存使用:需要注意图片处理、语音识别等功能的内存占用情况。
\item 响应速度异步处理网络请求和耗时操作保证UI响应的流畅性。
\end{itemize}
具体的性能考虑展示见图29使用了多线程进行异步处理并使用线程池管理保证响应的流畅性。
\begin{figure}[H]
\centering
\includegraphics[width=0.8\textwidth]{picture/comment4.png}
\caption{性能考虑}
\end{figure}
\item \textbf{安全性}
\begin{itemize}
\item 数据安全:实现了密码保护和私密模式等功能,增强了应用的安全性。
\item 权限管理:合理申请和使用地理位置等敏感权限。
\item 加密措施使用MD5等加密算法保护用户数据。
\end{itemize}
具体的代码安全性展示见图30使用了MD5等加密算法保护用户数据。
\begin{figure}[H]
\centering
\includegraphics[width=0.8\textwidth]{picture/comment5.png}
\caption{安全性}
\end{figure}
\end{enumerate}
\newpage \newpage
\subsection{维护后的软件原型以及功能展示} \subsection{维护后的软件原型以及功能展示}
\subsubsection{设置界面背景} \subsubsection{设置界面背景}
修改了小米便签的初始背景更具有美观性让用户有良好的使用体验。同时可以对背景进行切换操作总共设计了2款不同背景。见图26、图27、图28 修改了小米便签的初始背景更具有美观性让用户有良好的使用体验。同时可以对背景进行切换操作总共设计了2款不同背景。见图31、图32、图33
%并列图片 %并列图片
@ -1042,7 +1136,7 @@ Gtask包用于存放与数据更新同步检测异常相关的类和方法
\newpage \newpage
\subsubsection{欢迎界面} \subsubsection{欢迎界面}
实现进入便签前两秒钟的欢迎界面,让用户有良好的使用体验。(见图29 实现进入便签前两秒钟的欢迎界面,让用户有良好的使用体验。(见图34
\begin{figure}[H] \begin{figure}[H]
\centering \centering
\includegraphics[width=0.7\textwidth]{picture/15.png} \includegraphics[width=0.7\textwidth]{picture/15.png}
@ -1052,9 +1146,9 @@ Gtask包用于存放与数据更新同步检测异常相关的类和方法
\subsubsection{登录密码} \subsubsection{登录密码}
在主界面菜单中,有新建登陆密码按钮、删除登陆密码按钮和修改登录密码按钮。 在主界面菜单中,有新建登陆密码按钮、删除登陆密码按钮和修改登录密码按钮。
点击新建登陆密码会出来新建登录密码界面里面有输入密码和确认密码如果输入密码和确认密码不一致则要求用户重新输入。见图30 点击新建登陆密码会出来新建登录密码界面里面有输入密码和确认密码如果输入密码和确认密码不一致则要求用户重新输入。见图35
这一功能的时序图如图33所示。 这一功能的时序图如图40所示。
\begin{figure}[htbp] \begin{figure}[htbp]
\centering \centering
\begin{subfigure}[b]{0.45\textwidth} \begin{subfigure}[b]{0.45\textwidth}
@ -1071,7 +1165,7 @@ Gtask包用于存放与数据更新同步检测异常相关的类和方法
\newpage \newpage
我们新建密码为“111”再次进行登录操作可以发现必须要输入密码才能进入应用。 我们新建密码为“111”再次进行登录操作可以发现必须要输入密码才能进入应用。
输入密码之后可以成功进入。见图31 输入密码之后可以成功进入。见图36
\begin{figure}[H] \begin{figure}[H]
\centering \centering
\includegraphics[width=0.7\textwidth]{picture/18.png} \includegraphics[width=0.7\textwidth]{picture/18.png}
@ -1079,7 +1173,7 @@ Gtask包用于存放与数据更新同步检测异常相关的类和方法
\end{figure} \end{figure}
\newpage \newpage
如图32所示我们重新设置密码的时候需要我们输入现有的密码然后才能设置新的密码输入新的密码“123”确认密码密码进行更换。 如图37所示我们重新设置密码的时候需要我们输入现有的密码然后才能设置新的密码输入新的密码“123”确认密码密码进行更换。
\begin{figure}[H] \begin{figure}[H]
\centering \centering
\includegraphics[width=0.7\textwidth]{picture/19.png} \includegraphics[width=0.7\textwidth]{picture/19.png}
@ -1087,7 +1181,7 @@ Gtask包用于存放与数据更新同步检测异常相关的类和方法
\end{figure} \end{figure}
\newpage \newpage
再次登录的时候原本的密码“111”已经不再适用输入现有密码“123”才能够成功进入。见图33 再次登录的时候原本的密码“111”已经不再适用输入现有密码“123”才能够成功进入。见图38
\begin{figure}[H] \begin{figure}[H]
\centering \centering
\includegraphics[width=0.7\textwidth]{picture/20.png} \includegraphics[width=0.7\textwidth]{picture/20.png}
@ -1095,7 +1189,7 @@ Gtask包用于存放与数据更新同步检测异常相关的类和方法
\end{figure} \end{figure}
\newpage \newpage
同样的要想删除设置的密码也要先输入原有的密码。如图34)删除之后,再次点击删除密码的按钮会提醒“没有设置密码”。 同样的要想删除设置的密码也要先输入原有的密码。如图39)删除之后,再次点击删除密码的按钮会提醒“没有设置密码”。
\begin{figure}[H] \begin{figure}[H]
\centering \centering
@ -1121,9 +1215,9 @@ Gtask包用于存放与数据更新同步检测异常相关的类和方法
\newpage \newpage
\subsubsection{翻译功能} \subsubsection{翻译功能}
在便签编辑界面的上方,有个翻译按钮,点开之后有三个按钮可以选择:中文翻译为英文、英文翻译为中文、还原,其中还原可以将文本还原为翻译之前的内容。这一功能的时序图如图39所示。 在便签编辑界面的上方,有个翻译按钮,点开之后有三个按钮可以选择:中文翻译为英文、英文翻译为中文、还原,其中还原可以将文本还原为翻译之前的内容。这一功能的时序图如图44所示。
如图36所示可以将便签内的内容由英文转化为中文。例“Welcome to the new world.”可以翻译为“欢迎来到新世界。” 如图41所示可以将便签内的内容由英文转化为中文。例“Welcome to the new world.”可以翻译为“欢迎来到新世界。”
%并列图片 %并列图片
\begin{figure}[htbp] \begin{figure}[htbp]
@ -1141,7 +1235,7 @@ Gtask包用于存放与数据更新同步检测异常相关的类和方法
\end{figure} \end{figure}
\newpage \newpage
与此同时,我们也可以将便签内的内容由中文转化为英文。(见图37“欢迎来到新世界。”可以翻译为“Welcome to the new world.” 与此同时,我们也可以将便签内的内容由中文转化为英文。(见图42“欢迎来到新世界。”可以翻译为“Welcome to the new world.”
%并列图片 %并列图片
\begin{figure}[htbp] \begin{figure}[htbp]
\centering \centering
@ -1158,7 +1252,7 @@ Gtask包用于存放与数据更新同步检测异常相关的类和方法
\end{figure} \end{figure}
\newpage \newpage
另外我们在翻译功能中还实现了将翻译的内容进行还原可以将翻译之后的内容再还原回去。见图38 另外,我们在翻译功能中还实现了,将翻译的内容进行还原,可以将翻译之后的内容再还原回去。(见图43
\begin{figure}[htbp] \begin{figure}[htbp]
\centering \centering
@ -1185,7 +1279,7 @@ Gtask包用于存放与数据更新同步检测异常相关的类和方法
\newpage \newpage
\subsubsection{插入图片} \subsubsection{插入图片}
在便签编辑界面增加插入图片按钮点击后跳转到相册供用户选择插入图片用户选好图片后将图片的路径插入到文本中在将文本中的路径显示成图片。见图40 在便签编辑界面增加插入图片按钮点击后跳转到相册供用户选择插入图片用户选好图片后将图片的路径插入到文本中在将文本中的路径显示成图片。见图45
%插入图片29 %插入图片29
\begin{figure}[H] \begin{figure}[H]
\centering \centering
@ -1194,7 +1288,7 @@ Gtask包用于存放与数据更新同步检测异常相关的类和方法
\end{figure} \end{figure}
\newpage \newpage
时序图如下图所示 时序图如下图图46所示
\begin{figure}[H] \begin{figure}[H]
\centering \centering
\includegraphics[width=1.0\textwidth]{picture/seq5_Insert_Img.png} \includegraphics[width=1.0\textwidth]{picture/seq5_Insert_Img.png}
@ -1204,7 +1298,7 @@ Gtask包用于存放与数据更新同步检测异常相关的类和方法
\newpage \newpage
\subsubsection{统计字符个数} \subsubsection{统计字符个数}
在便签编辑页面的左上角菜单里面添加了统计总字符数的按钮可以实时反映便签中的字符个数。如图42所示。 在便签编辑页面的左上角菜单里面添加了统计总字符数的按钮可以实时反映便签中的字符个数。如图47所示。
\begin{figure}[H] \begin{figure}[H]
\centering \centering
\includegraphics[width=0.7\textwidth]{picture/30.png} \includegraphics[width=0.7\textwidth]{picture/30.png}
@ -1222,9 +1316,9 @@ Gtask包用于存放与数据更新同步检测异常相关的类和方法
\newpage \newpage
\subsubsection{富文本功能} \subsubsection{富文本功能}
在便签编辑界面,当选中文本后,选中文本下面会显示加粗、斜体、删除线以及高亮按钮,可以对文本进行加粗、斜体、删除线以及高亮等操作。(见图44) 在便签编辑界面,当选中文本后,选中文本下面会显示加粗、斜体、删除线以及高亮按钮,可以对文本进行加粗、斜体、删除线以及高亮等操作。(见图49)
其中加粗功能见图45斜体功能见图46删除线功能见图47高亮功能见图48 其中加粗功能见图50斜体功能见图51删除线功能见图52高亮功能见图53
\begin{figure}[H] \begin{figure}[H]
\centering \centering
\includegraphics[width=0.7\textwidth]{picture/31.png} \includegraphics[width=0.7\textwidth]{picture/31.png}
@ -1268,7 +1362,7 @@ Gtask包用于存放与数据更新同步检测异常相关的类和方法
\newpage \newpage
\subsubsection{朗读功能} \subsubsection{朗读功能}
在修改便签界面上侧有朗读按钮点击朗读按钮就可以朗读便签文本的内容除去了空格、换行符、图片路径功能界面见图50 在修改便签界面上侧有朗读按钮点击朗读按钮就可以朗读便签文本的内容除去了空格、换行符、图片路径功能界面见图55
\begin{figure}[H] \begin{figure}[H]
\centering \centering
\includegraphics[width=0.7\textwidth]{picture/36.png} \includegraphics[width=0.7\textwidth]{picture/36.png}
@ -1291,7 +1385,7 @@ Gtask包用于存放与数据更新同步检测异常相关的类和方法
\newpage \newpage
\subsubsection{私密模式} \subsubsection{私密模式}
在写便签前的界面,右上角的菜单中,添加两个按钮:私密模式和退出私密模式。 在写便签前的界面,右上角的菜单中,添加两个按钮:私密模式和退出私密模式。
点击私密模式后所有便签的在首页的显示都是“123456789”见图52)防止其他人通过首页了解便签内部信息。点击退出私密模式即可退出私密模式。 点击私密模式后所有便签的在首页的显示都是“123456789”见图57)防止其他人通过首页了解便签内部信息。点击退出私密模式即可退出私密模式。
%插入并列图片 %插入并列图片
@ -1310,7 +1404,7 @@ Gtask包用于存放与数据更新同步检测异常相关的类和方法
\end{figure} \end{figure}
\newpage \newpage
当我们退出私密模式时首行内容重新显示出来。如图53所示。 当我们退出私密模式时首行内容重新显示出来。如图58所示。
\begin{figure}[H] \begin{figure}[H]
\centering \centering
\begin{subfigure}[b]{0.45\textwidth} \begin{subfigure}[b]{0.45\textwidth}
@ -1339,10 +1433,10 @@ Gtask包用于存放与数据更新同步检测异常相关的类和方法
\newpage \newpage
\subsubsection{笔记编辑内搜索} \subsubsection{笔记编辑内搜索}
\begin{itemize} \begin{itemize}
\item 在编辑笔记界面,点击搜索按钮,可以对笔记内容进行搜索。(见图55(a)) \item 在编辑笔记界面,点击搜索按钮,可以对笔记内容进行搜索。(见图60(a))
\item 点击搜索按钮后,会弹出搜索框,输入要搜索的内容,点击确定按钮,可以搜索到所有包含该内容的内容。(见图55(b)) \item 点击搜索按钮后,会弹出搜索框,输入要搜索的内容,点击确定按钮,可以搜索到所有包含该内容的内容。(见图60(b))
\item 当搜索到内容时,会高亮所有搜索到的内容。(见图56(a)) \item 当搜索到内容时,会高亮所有搜索到的内容。(见图61(a))
\item 如果搜索不到内容,会显示“未找到相关内容”。(见图56(b)) \item 如果搜索不到内容,会显示“未找到相关内容”。(见图61(b))
\item 点击取消按钮,可以取消搜索,高亮的文本会恢复到原来的颜色。 \item 点击取消按钮,可以取消搜索,高亮的文本会恢复到原来的颜色。
\end{itemize} \end{itemize}
@ -1387,7 +1481,7 @@ Gtask包用于存放与数据更新同步检测异常相关的类和方法
\newpage \newpage
\subsubsection{模板便签} \subsubsection{模板便签}
在便签编辑界面,点击模板按钮,可以对便签内容进行模板化。(见图58、59 在便签编辑界面,点击模板按钮,可以对便签内容进行模板化。(见图63a、63b
\begin{figure}[htbp] \begin{figure}[htbp]
\centering \centering
\begin{minipage}{0.49\linewidth} \begin{minipage}{0.49\linewidth}
@ -1432,9 +1526,9 @@ Gtask包用于存放与数据更新同步检测异常相关的类和方法
\newpage \newpage
\subsubsection{语音听写} \subsubsection{语音听写}
在便签编辑界面点击语音听写按钮可以对便签内容进行语音听写。见图63、64 在便签编辑界面点击语音听写按钮可以对便签内容进行语音听写。见图68a、68b
时序图如图65所示。 时序图如图70所示。
\begin{figure}[htbp] \begin{figure}[htbp]
\centering \centering
@ -1472,11 +1566,20 @@ Gtask包用于存放与数据更新同步检测异常相关的类和方法
\caption{语音听写的时序图} \caption{语音听写的时序图}
\end{figure} \end{figure}
\newpage
下图所示为语音听写的部分代码展示主要展示了核心类mRecongnizerDialogListner的创立。
\begin{figure}[H]
\centering
\includegraphics[width=1.0\textwidth]{picture/show1.png}
\caption{语音听写的代码展示}
\end{figure}
配合流程图可以看到核心类mRecongnizerDialogListner的创立以及其内部方法的调用的局部详情可见代码IatDemo。
\newpage \newpage
\subsubsection{语音合成} \subsubsection{语音合成}
在便签编辑界面点击语音合成按钮可以对便签内容进行语音合成。见图66 在便签编辑界面点击语音合成按钮可以对便签内容进行语音合成。见图72
点击语音合成按钮后会弹出语音合成界面输入要合成的内容点击确定按钮可以合成语音。见图67、68 点击语音合成按钮后会弹出语音合成界面输入要合成的内容点击确定按钮可以合成语音。见图73、74
时序图如图69所示。 时序图如图69所示。
\begin{figure}[htbp] \begin{figure}[htbp]
@ -1509,12 +1612,22 @@ Gtask包用于存放与数据更新同步检测异常相关的类和方法
\includegraphics[width=0.9\textwidth]{picture/seq13_Tts.png} \includegraphics[width=0.9\textwidth]{picture/seq13_Tts.png}
\caption{语音合成的时序图} \caption{语音合成的时序图}
\end{figure} \end{figure}
\newpage
下图所示为语音合成的部分代码展示,主要展示了各控件的具体含义与功能实现。
另外也注明了控件对应方法的参数与注意事项详情可见代码TtsDemo。
\begin{figure}[H]
\centering
\includegraphics[width=1.0\textwidth]{picture/show2.png}
\caption{语音合成的代码展示}
\end{figure}
\newpage \newpage
\subsubsection{对话式大模型} \subsubsection{对话式大模型}
在便签编辑界面和接入了对话式大模型可以对便签内容进行对话式大模型交互。见图70 在便签编辑界面和接入了对话式大模型可以对便签内容进行对话式大模型交互。见图77
对话式大模型的流程图见图71时序图见图72。 对话式大模型的流程图见图78时序图见图79
\begin{figure}[H] \begin{figure}[H]
\centering \centering
\includegraphics[width=0.7\textwidth]{picture/Dialogue-based large models.png} \includegraphics[width=0.7\textwidth]{picture/Dialogue-based large models.png}
@ -1535,10 +1648,18 @@ Gtask包用于存放与数据更新同步检测异常相关的类和方法
\caption{对话式大模型的时序图} \caption{对话式大模型的时序图}
\end{figure} \end{figure}
\newpage
下图所示为对话式大模型的部分代码展示主要展示了大模型交互类的配置信息以及调试所用到的JSON格式。
\begin{figure}[H]
\centering
\includegraphics[width=1.0\textwidth]{picture/show3.png}
\caption{对话式大模型的代码展示}
\end{figure}
\newpage \newpage
这里对对话式大模型以及语音合成与转写功能进行一部分特殊说明由于使用了第三方SDK并且需要与第三方服务器Iflytek Server等连接因此虚拟机 这里对对话式大模型以及语音合成与转写功能进行一部分特殊说明由于使用了第三方SDK并且需要与第三方服务器Iflytek Server等连接因此虚拟机
必须需要连接网络这一点百度翻译也是一样的。其次讯飞星火大模型和语音识别功能还依赖官方提供的特定MSC和aar文件这些库依赖需要在build.gradle中额外声明包括dependencies依赖项声明和依赖树结构对应的MSC和AAR文件已经上传至项目中的源码文件夹下的app子包的libs包中值得一提的是该MSA和AAR文件都只支持arm64-v8a或armeabi-v7a处理器部分虚拟机可能不具备调试的前提最后讯飞的SDK服务有一定期限到期后需要用户重新购买服务并在本项目中替换appid、密钥等信息。 必须需要连接网络这一点百度翻译也是一样的。其次讯飞星火大模型和语音识别功能还依赖官方提供的特定MSC和aar文件这些库依赖需要在build.gradle中额外声明包括dependencies依赖项声明和依赖树结构对应的MSC和AAR文件已经上传至项目中的源码文件夹下的app子包的libs包中值得一提的是该MSA和AAR文件都只支持arm64-v8a或armeabi-v7a处理器部分虚拟机可能不具备调试的前提最后讯飞的SDK服务有一定期限到期后需要用户重新购买服务并在本项目中替换appid、密钥等信息。
MSC的部分文件如表5所示 MSC的部分文件如表6所示:
\begin{longtable}{|p{0.05\textwidth}|p{0.20\textwidth}|p{0.18\textwidth}|} \begin{longtable}{|p{0.05\textwidth}|p{0.20\textwidth}|p{0.18\textwidth}|}
\caption{} \\ \caption{} \\
@ -1564,7 +1685,7 @@ MSC的部分文件如表5所示
\newpage \newpage
\subsubsection{撤回功能} \subsubsection{撤回功能}
在进行便签编辑时,有时候会不小心错误的操作,这时候就需要撤回功能来恢复之前的状态。(见图73 在进行便签编辑时,有时候会不小心错误的操作,这时候就需要撤回功能来恢复之前的状态。(见图81
点击菜单栏中的撤回按钮,可以恢复到上一个状态。 点击菜单栏中的撤回按钮,可以恢复到上一个状态。
\begin{figure}[H] \begin{figure}[H]
\centering \centering
@ -1572,18 +1693,23 @@ MSC的部分文件如表5所示
\caption{撤回功能} \caption{撤回功能}
\end{figure} \end{figure}
具体时序图如图82所示。
\begin{figure}[H]
\centering
\includegraphics[width=0.7\textwidth]{picture/seq_15revoke.png}
\caption{撤回功能的时序图}
\end{figure}
撤回功能的实现比较简单,点击事件主要依靠一个监听器对存储曾经编辑的便签内容(存储在一个栈中)进行监听,然后通过一个按钮的点击事件,将曾经编辑的便签内容恢复到当前编辑界面中。
\newpage \newpage
\subsubsection{获取地理位置} \subsubsection{获取地理位置}
在编辑编辑的下方,有一个获取地理位置按钮,点击该按钮,弹出功能界面,有两个选项获取地理位置和清楚地理位置。 在编辑编辑的下方,有一个获取地理位置按钮,点击该按钮,弹出功能界面,有两个选项获取地理位置和清楚地理位置。
点击获取地理位置按钮,可以获取当前的地理位置。(见图74其地理位置为虚拟机设定的地理位置可以在Android Studio中的Device Manager中添加设定自己IP所在位置也可以沿用虚拟机本身的设置。 点击获取地理位置按钮,可以获取当前的地理位置。(见图83其地理位置为虚拟机设定的地理位置可以在Android Studio中的Device Manager中添加设定自己IP所在位置也可以沿用虚拟机本身的设置。
本图中返回的西经122°北纬37°经查阅为北美洲加利福尼亚州地区的西南沿岸与中国时差约为10小时左右时差和虚拟机-真机时差符合的比较好,可见功能的正确性。 本图中返回的西经122°北纬37°经查阅为北美洲加利福尼亚州地区的西南沿岸与中国时差约为10小时左右时差和虚拟机-真机时差符合的比较好,可见功能的正确性。
点击清除地理位置按钮,可以清除当前的地理位置。(见图75 点击清除地理位置按钮,可以清除当前的地理位置。(见图84
\begin{figure}[H] \begin{figure}[H]
\centering \centering
\begin{minipage}{0.49\linewidth} \begin{minipage}{0.49\linewidth}
@ -1601,8 +1727,13 @@ MSC的部分文件如表5所示
\end{minipage} \end{minipage}
\end{figure} \end{figure}
\newpage
具体时序图如图85所示。
\begin{figure}[H]
\centering
\includegraphics[width=0.7\textwidth]{picture/seq_16getlocation.png}
\caption{获取地理位置的时序图}
\end{figure}

@ -31,30 +31,31 @@
\contentsline {paragraph}{界面整体布局分析}{28}{section*.30}% \contentsline {paragraph}{界面整体布局分析}{28}{section*.30}%
\contentsline {subsection}{\numberline {3.3}维护代码数量以及质量情况}{31}{subsection.3.3}% \contentsline {subsection}{\numberline {3.3}维护代码数量以及质量情况}{31}{subsection.3.3}%
\contentsline {subsubsection}{\numberline {3.3.1}维护代码数量}{31}{subsubsection.3.3.1}% \contentsline {subsubsection}{\numberline {3.3.1}维护代码数量}{31}{subsubsection.3.3.1}%
\contentsline {subsubsection}{\numberline {3.3.2}各功能代码规模}{35}{subsubsection.3.3.2}% \contentsline {subsubsection}{\numberline {3.3.2}各功能代码规模}{35}{subsubsection.3.3.2}%
\contentsline {subsubsection}{\numberline {3.3.3}维护后的质量分析}{36}{subsubsection.3.3.3}% \contentsline {subsubsection}{\numberline {3.3.3}维护后的质量分析}{36}{subsubsection.3.3.3}%
\contentsline {subsection}{\numberline {3.4}维护后的软件原型以及功能展示}{40}{subsection.3.4}% \contentsline {subsubsection}{\numberline {3.3.4}维护代码风格展示}{40}{subsubsection.3.3.4}%
\contentsline {subsubsection}{\numberline {3.4.1}设置界面背景}{40}{subsubsection.3.4.1}% \contentsline {subsection}{\numberline {3.4}维护后的软件原型以及功能展示}{45}{subsection.3.4}%
\contentsline {subsubsection}{\numberline {3.4.2}欢迎界面}{41}{subsubsection.3.4.2}% \contentsline {subsubsection}{\numberline {3.4.1}设置界面背景}{45}{subsubsection.3.4.1}%
\contentsline {subsubsection}{\numberline {3.4.3}登录密码}{42}{subsubsection.3.4.3}% \contentsline {subsubsection}{\numberline {3.4.2}欢迎界面}{46}{subsubsection.3.4.2}%
\contentsline {subsubsection}{\numberline {3.4.4}翻译功能}{48}{subsubsection.3.4.4}% \contentsline {subsubsection}{\numberline {3.4.3}登录密码}{47}{subsubsection.3.4.3}%
\contentsline {subsubsection}{\numberline {3.4.5}插入图片}{52}{subsubsection.3.4.5}% \contentsline {subsubsection}{\numberline {3.4.4}翻译功能}{53}{subsubsection.3.4.4}%
\contentsline {subsubsection}{\numberline {3.4.6}统计字符个数}{54}{subsubsection.3.4.6}% \contentsline {subsubsection}{\numberline {3.4.5}插入图片}{57}{subsubsection.3.4.5}%
\contentsline {subsubsection}{\numberline {3.4.7}富文本功能}{56}{subsubsection.3.4.7}% \contentsline {subsubsection}{\numberline {3.4.6}统计字符个数}{59}{subsubsection.3.4.6}%
\contentsline {subsubsection}{\numberline {3.4.8}朗读功能}{59}{subsubsection.3.4.8}% \contentsline {subsubsection}{\numberline {3.4.7}富文本功能}{61}{subsubsection.3.4.7}%
\contentsline {subsubsection}{\numberline {3.4.9}私密模式}{60}{subsubsection.3.4.9}% \contentsline {subsubsection}{\numberline {3.4.8}朗读功能}{64}{subsubsection.3.4.8}%
\contentsline {subsubsection}{\numberline {3.4.10}笔记编辑内搜索}{63}{subsubsection.3.4.10}% \contentsline {subsubsection}{\numberline {3.4.9}私密模式}{65}{subsubsection.3.4.9}%
\contentsline {subsubsection}{\numberline {3.4.11}模板便签}{66}{subsubsection.3.4.11}% \contentsline {subsubsection}{\numberline {3.4.10}笔记编辑内搜索}{68}{subsubsection.3.4.10}%
\contentsline {subsubsection}{\numberline {3.4.12}语音听写}{70}{subsubsection.3.4.12}% \contentsline {subsubsection}{\numberline {3.4.11}模板便签}{71}{subsubsection.3.4.11}%
\contentsline {subsubsection}{\numberline {3.4.13}语音合成}{72}{subsubsection.3.4.13}% \contentsline {subsubsection}{\numberline {3.4.12}语音听写}{75}{subsubsection.3.4.12}%
\contentsline {subsubsection}{\numberline {3.4.14}对话式大模型}{75}{subsubsection.3.4.14}% \contentsline {subsubsection}{\numberline {3.4.13}语音合成}{78}{subsubsection.3.4.13}%
\contentsline {subsubsection}{\numberline {3.4.15}撤回功能}{79}{subsubsection.3.4.15}% \contentsline {subsubsection}{\numberline {3.4.14}对话式大模型}{82}{subsubsection.3.4.14}%
\contentsline {subsubsection}{\numberline {3.4.16}获取地理位置}{80}{subsubsection.3.4.16}% \contentsline {subsubsection}{\numberline {3.4.15}撤回功能}{87}{subsubsection.3.4.15}%
\contentsline {section}{\numberline {4}实践收获和体会}{81}{section.4}% \contentsline {subsubsection}{\numberline {3.4.16}获取地理位置}{89}{subsubsection.3.4.16}%
\contentsline {subsection}{\numberline {4.1}收获}{81}{subsection.4.1}% \contentsline {section}{\numberline {4}实践收获和体会}{91}{section.4}%
\contentsline {subsection}{\numberline {4.2}体会}{81}{subsection.4.2}% \contentsline {subsection}{\numberline {4.1}收获}{91}{subsection.4.1}%
\contentsline {subsection}{\numberline {4.3}参考文献与网址}{82}{subsection.4.3}% \contentsline {subsection}{\numberline {4.2}体会}{91}{subsection.4.2}%
\contentsline {subsubsection}{\numberline {4.3.1}讯飞智能API介绍}{82}{subsubsection.4.3.1}% \contentsline {subsection}{\numberline {4.3}参考文献与网址}{92}{subsection.4.3}%
\contentsline {subsubsection}{\numberline {4.3.2}百度翻译API介绍}{82}{subsubsection.4.3.2}% \contentsline {subsubsection}{\numberline {4.3.1}讯飞智能API介绍}{92}{subsubsection.4.3.1}%
\contentsline {subsubsection}{\numberline {4.3.3}UML建模}{82}{subsubsection.4.3.3}% \contentsline {subsubsection}{\numberline {4.3.2}百度翻译API介绍}{92}{subsubsection.4.3.2}%
\contentsline {subsubsection}{\numberline {4.3.4}CodeArts质量分析}{82}{subsubsection.4.3.4}% \contentsline {subsubsection}{\numberline {4.3.3}UML建模}{92}{subsubsection.4.3.3}%
\contentsline {subsubsection}{\numberline {4.3.4}CodeArts质量分析}{92}{subsubsection.4.3.4}%

@ -1,6 +1,6 @@
<?xml version="1.0" encoding="UTF-8"?> <?xml version="1.0" encoding="UTF-8"?>
<module version="4"> <module version="4">
<component name="SonarLintModuleSettings"> <component name="SonarLintModuleSettings">
<option name="uniqueId" value="b75cf9d3-3bcd-4914-a40e-08647b11b949" /> <option name="uniqueId" value="60677ed1-6762-4ddd-861d-fa3c43575901" />
</component> </component>
</module> </module>

@ -1,6 +1,6 @@
<?xml version="1.0" encoding="UTF-8"?> <?xml version="1.0" encoding="UTF-8"?>
<module version="4"> <module version="4">
<component name="SonarLintModuleSettings"> <component name="SonarLintModuleSettings">
<option name="uniqueId" value="3d31c8b0-8569-400c-9c7a-2c2e9d70dbf5" /> <option name="uniqueId" value="feec84a8-4776-4cc4-9694-aaf932ae26d2" />
</component> </component>
</module> </module>

@ -1,6 +1,6 @@
<?xml version="1.0" encoding="UTF-8"?> <?xml version="1.0" encoding="UTF-8"?>
<module version="4"> <module version="4">
<component name="SonarLintModuleSettings"> <component name="SonarLintModuleSettings">
<option name="uniqueId" value="34492107-23ec-4dbf-92df-b5e9b1fe7f3b" /> <option name="uniqueId" value="2dd6c824-0a33-41c0-9352-c4608a8ff59f" />
</component> </component>
</module> </module>

@ -1,6 +1,6 @@
<?xml version="1.0" encoding="UTF-8"?> <?xml version="1.0" encoding="UTF-8"?>
<module version="4"> <module version="4">
<component name="SonarLintModuleSettings"> <component name="SonarLintModuleSettings">
<option name="uniqueId" value="b2334929-3147-44c6-90ab-6c77b3e52f68" /> <option name="uniqueId" value="a9a960bb-8ec9-4c48-8c31-48cb61cd934d" />
</component> </component>
</module> </module>

@ -1,47 +0,0 @@
v
java:S22935"YReplace the type specification in this constructor call with the diamond operator ("<>").(Ýýî°8ðäµÙÄ2
n
java:S1192É"KDefine a constant instead of duplicating this literal "SparkChain" 3 times.(îÅŸ„ùÿÿÿÿ˜ÉÙÄ2
m java:S1175"QRename this local variable to match the regular expression '^[a-z][a-zA-Z0-9]*$'.(Ýýî°8ñäµÙÄ2
r java:S1177"QRename this local variable to match the regular expression '^[a-z][a-zA-Z0-9]*$'.(‰ç»ìøÿÿÿÿ8ñäµÙÄ2
J
java:S1604f"(Make this anonymous inner class a lambda(˜<>ã¯þÿÿÿÿ8ñäµÙÄ2
K
java:S1604ç"(Make this anonymous inner class a lambda(˜<>ã¯þÿÿÿÿ8ñäµÙÄ2
K
java:S1604ñ"(Make this anonymous inner class a lambda(˜<>ã¯þÿÿÿÿ8ñäµÙÄ2
K
java:S1604ú"(Make this anonymous inner class a lambda(˜<>ã¯þÿÿÿÿ8ñäµÙÄ2
{ java:S120"ZRename this package name to match the regular expression '^[a-z_]+(\.[a-z_][a-z0-9_]*)*$'.(ÅÊ«Åùÿÿÿÿ8óäµÙÄ2
p java:S116+"TRename this field "tv_result" to match the regular expression '^[a-z][a-zA-Z0-9]*$'.(<28>°ÉÁ8¼æµÙÄ2
 java:S116-"hRename this field "btn_imageGeneration_run_start" to match the regular expression '^[a-z][a-zA-Z0-9]*$'.(ÿ†ü¿8¼æµÙÄ2
 java:S116-"iRename this field "btn_imageGeneration_arun_start" to match the regular expression '^[a-z][a-zA-Z0-9]*$'.(ÿ†ü¿8¼æµÙÄ2
 java:S116-"cRename this field "btn_imageGeneration_stop" to match the regular expression '^[a-z][a-zA-Z0-9]*$'.(ÿ†ü¿8¼æµÙÄ2
t java:S116/"SRename this field "ed_input" to match the regular expression '^[a-z][a-zA-Z0-9]*$'.(ÿ݆Ùùÿÿÿÿ8¼æµÙÄ2
x
java:S1659-"[Declare "btn_imageGeneration_arun_start" and all following declarations on a separate line.(ÿ†ü¿8¾æµÙÄ2
Š
java:S1450-"mRemove the "btn_imageGeneration_arun_start" field and declare it as a local variable in the relevant methods.(ÿ†ü¿8¾æµÙÄ2

java:S1450-"lRemove the "btn_imageGeneration_run_start" field and declare it as a local variable in the relevant methods.(ÿ†ü¿8¾æµÙÄ2

java:S1450-"gRemove the "btn_imageGeneration_stop" field and declare it as a local variable in the relevant methods.(ÿ†ü¿8¾æµÙÄ2
r
java:S14501"URemove the "isAuth" field and declare it as a local variable in the relevant methods.(¢¸‰ê8¾æµÙÄ2
o java:S1004"NRename this method name to match the regular expression '^[a-z][a-zA-Z0-9]*$'.(ŸÛ®Äûÿÿÿÿ8ÅæµÙÄ2
G
java:S11976"*Move the array designators [] to the type.(¤šÐ•8ÆæµÙÄ2
L
java:S11977"*Move the array designators [] to the type.(‰ç»ìøÿÿÿÿ8ÆæµÙÄ2
M
java:S1172e"+Remove this unused method parameter "text".(ëÆ¿<C386>øÿÿÿÿ8ÉæµÙÄ2
] java:S125i"<This block of commented-out lines of code should be removed.(‚çíìùÿÿÿÿ8ÊæµÙÄ2
<EFBFBD>
java:S1186"€Add a nested comment explaining why this method is empty, throw an UnsupportedOperationException or complete the implementation.(ÁõZ8ÊæµÙÄ2
? java:S131¡""Add a default case to this switch.(ŽºÖ<C2BA>8ÍæµÙÄ2
p java:S100Á"NRename this method name to match the regular expression '^[a-z][a-zA-Z0-9]*$'.(ž†‹œÿÿÿÿÿ8ÎæµÙÄ2
p java:S100Ç"NRename this method name to match the regular expression '^[a-z][a-zA-Z0-9]*$'.(ÆŽ“Óûÿÿÿÿ8ÐæµÙÄ2
p java:S100Ñ"NRename this method name to match the regular expression '^[a-z][a-zA-Z0-9]*$'.(Š›¬ìÿÿÿÿÿ8ÐæµÙÄ2
G
java:S10681"*Remove this unused "isAuth" private field.(¢¸‰ê8ÕæµÙÄ2

@ -1,34 +1,33 @@
 š
java:S1192V"xDefine a constant instead of duplicating this literal "请登录:http://www.xfyun.cn/ ä¸è½½aiui体验å<C592>§ï¼<C3AF>" 3 times.(Ƨø­ÿÿÿÿÿ java:S1192L"xDefine a constant instead of duplicating this literal "请登录:http://www.xfyun.cn/ ä¸è½½aiui体验å<C592>§ï¼<C3AF>" 3 times.(Ƨø­ÿÿÿÿÿ8ñÓ€£Æ2
C J
java:S1604M"(Make this anonymous inner class a lambda(Ĭ¢æøÿÿÿÿ java:S1604C"(Make this anonymous inner class a lambda(Ĭ¢æøÿÿÿÿ8òÓ€£Æ2
>
java:S1604]"(Make this anonymous inner class a lambda(ë׉ª
w
java:S1450"aRemove the "mSharedPreferences" field and declare it as a local variable in the relevant methods.(ÖØÂê
Q java:S125"<This block of commented-out lines of code should be removed.(«¶£€
P
java:S1161":Add the "@Override" annotation above this method signature(ßìê¯
_
java:S3252#"DUse static access with "android.content.Context" for "MODE_PRIVATE".(ø°‰¨þÿÿÿÿ
P java:S125$"<This block of commented-out lines of code should be removed.(±¾­
V java:S125,"<This block of commented-out lines of code should be removed.(<28>ÞÕúÿÿÿÿ
V java:S1259"<This block of commented-out lines of code should be removed.(þ ›Íúÿÿÿÿ
P
java:S1117P":Rename "intent" which hides the field declared at line 42.(€ÜúÛ
G
java:S1602U",Remove useless curly braces around statement(ñˆïâøÿÿÿÿ
G
java:S1602Y",Remove useless curly braces around statement(›‡¥îþÿÿÿÿ
P
java:S1117`":Rename "intent" which hides the field declared at line 42.(狉Ó
G
java:S1602e",Remove useless curly braces around statement(ŠªÛ¾ÿÿÿÿÿ
G
java:S1602i",Remove useless curly braces around statement(äωúÿÿÿÿ
Q java:S125y"<This block of commented-out lines of code should be removed.(<28><>¢ß
L
java:S1068"6Remove this unused "mSharedPreferences" private field.(ÖØÂê
E E
java:S1068*"*Remove this unused "intent" private field.(<>Ô¼ùÿÿÿÿ java:S1604S"(Make this anonymous inner class a lambda(ë׉ª8òÓ€£Æ2
~
java:S1450"aRemove the "mSharedPreferences" field and declare it as a local variable in the relevant methods.(ÖØÂê8Ô€£Æ2
W
java:S1161":Add the "@Override" annotation above this method signature(ßìê¯8…Ô€£Æ2
f
java:S3252"DUse static access with "android.content.Context" for "MODE_PRIVATE".(ø°‰¨þÿÿÿÿ8‡Ô€£Æ2
W java:S125"<This block of commented-out lines of code should be removed.(±¾­8‡Ô€£Æ2
] java:S125""<This block of commented-out lines of code should be removed.(<28>ÞÕúÿÿÿÿ8ˆÔ€£Æ2
] java:S125/"<This block of commented-out lines of code should be removed.(þ ›Íúÿÿÿÿ8ˆÔ€£Æ2
W
java:S1117F":Rename "intent" which hides the field declared at line 32.(€ÜúÛ8Ô€£Æ2
N
java:S1602K",Remove useless curly braces around statement(ñˆïâøÿÿÿÿ8Ô€£Æ2
N
java:S1602O",Remove useless curly braces around statement(›‡¥îþÿÿÿÿ8Ô€£Æ2
W
java:S1117V":Rename "intent" which hides the field declared at line 32.(狉Ó8“Ô€£Æ2
N
java:S1602[",Remove useless curly braces around statement(ŠªÛ¾ÿÿÿÿÿ8“Ô€£Æ2
N
java:S1602_",Remove useless curly braces around statement(äωúÿÿÿÿ8”Ô€£Æ2
X java:S125o"<This block of commented-out lines of code should be removed.(<28><>¢ß8•Ô€£Æ2
S
java:S1068"6Remove this unused "mSharedPreferences" private field.(ÖØÂê8Ô€£Æ2
L
java:S1068 "*Remove this unused "intent" private field.(<>Ô¼ùÿÿÿÿ8Ô€£Æ2

@ -1,62 +1,61 @@
v v
java:S2293^"YReplace the type specification in this constructor call with the diamond operator ("<>").(§þ¢¾8½óâšÅ2 java:S2293Z"YReplace the type specification in this constructor call with the diamond operator ("<>").(§þ¢¾8½óâšÅ2
K K
java:S1604Æ"(Make this anonymous inner class a lambda(ƒÎ˜Êùÿÿÿÿ8ÇóâšÅ2 java:S1604Â"(Make this anonymous inner class a lambda(ƒÎ˜Êùÿÿÿÿ8ÇóâšÅ2
K K
java:S1604Â"(Make this anonymous inner class a lambda(¯<>Àžÿÿÿÿÿ8ÉóâšÅ2 java:S1604¾"(Make this anonymous inner class a lambda(¯<>Àžÿÿÿÿÿ8ÉóâšÅ2
K K
java:S1604Ý"(Make this anonymous inner class a lambda(¤±ù™ûÿÿÿÿ8ÌóâšÅ2 java:S1604Ù"(Make this anonymous inner class a lambda(¤±ù™ûÿÿÿÿ8ÌóâšÅ2
K K
java:S1604æ"(Make this anonymous inner class a lambda(ײøöýÿÿÿÿ8ÎóâšÅ2 java:S1604â"(Make this anonymous inner class a lambda(ײøöýÿÿÿÿ8ÎóâšÅ2
K K
java:S1604ï"(Make this anonymous inner class a lambda(Ñ‘‚½üÿÿÿÿ8ÑóâšÅ2 java:S1604ë"(Make this anonymous inner class a lambda(Ñ‘‚½üÿÿÿÿ8ÑóâšÅ2
K K
java:S1604ø"(Make this anonymous inner class a lambda(Î<>Á°üÿÿÿÿ8ÓóâšÅ2 java:S1604ô"(Make this anonymous inner class a lambda(Î<>Á°üÿÿÿÿ8ÓóâšÅ2
K K
java:S1604¯"(Make this anonymous inner class a lambda(œ™úßùÿÿÿÿ8ÔóâšÅ2 java:S1604«"(Make this anonymous inner class a lambda(œ™úßùÿÿÿÿ8ÔóâšÅ2
K K
java:S1604¿"(Make this anonymous inner class a lambda(åâãÍúÿÿÿÿ8ÕóâšÅ2 java:S1604»"(Make this anonymous inner class a lambda(åâãÍúÿÿÿÿ8ÕóâšÅ2
K K
java:S1604æ"(Make this anonymous inner class a lambda(ŒŽ¾›ùÿÿÿÿ8ÖóâšÅ2 java:S1604â"(Make this anonymous inner class a lambda(ŒŽ¾›ùÿÿÿÿ8ÖóâšÅ2
E E
java:S1604Á"(Make this anonymous inner class a lambda(ì¶äZ8×óâšÅ2 java:S1604½"(Make this anonymous inner class a lambda(ì¶äZ8×óâšÅ2
X java:S125*"<This block of commented-out lines of code should be removed.(ƒ„˜§8áÔášÅ2
~ ~
java:S1450}"aRemove the "mFormatToolbarView" field and declare it as a local variable in the relevant methods.(Ÿ¡Åí8û¬ãšÅ2 java:S1450y"aRemove the "mFormatToolbarView" field and declare it as a local variable in the relevant methods.(Ÿ¡Åí8û¬ãšÅ2
 
java:S1450"\Remove the "mSearchButton" field and declare it as a local variable in the relevant methods.(‚ÁôÆùÿÿÿÿ8ý¬ãšÅ2 java:S1450ƒ"\Remove the "mSearchButton" field and declare it as a local variable in the relevant methods.(‚ÁôÆùÿÿÿÿ8ý¬ãšÅ2
 ƒ
java:S1450"aRemove the "mSearchToolbarView" field and declare it as a local variable in the relevant methods.(¥ö“Ðøÿÿÿÿ8<>­ãšÅ2 java:S1450|"aRemove the "mSearchToolbarView" field and declare it as a local variable in the relevant methods.(¥ö“Ðøÿÿÿÿ8<>­ãšÅ2
] ]
java:S1161Õ":Add the "@Override" annotation above this method signature(ÄÇݤûÿÿÿÿ8Ö®ãšÅ2 java:S1161Ñ":Add the "@Override" annotation above this method signature(ÄÇݤûÿÿÿÿ8Ö®ãšÅ2
e e
java:S1126ž"BReplace this if-then-else statement by a single method invocation.(‚å¿¥ûÿÿÿÿ8ɲãšÅ2 java:S1126š"BReplace this if-then-else statement by a single method invocation.(‚å¿¥ûÿÿÿÿ8ɲãšÅ2
W W
java:S2864"4Iterate over the "entrySet" instead of the "keySet".(ΚŸ<C5A1>ûÿÿÿÿ8ü²ãšÅ2 java:S2864²"4Iterate over the "entrySet" instead of the "keySet".(ΚŸ<C5A1>ûÿÿÿÿ8ü²ãšÅ2
p p
java:S3252ñ"MUse static access with "android.text.Spanned" for "SPAN_EXCLUSIVE_EXCLUSIVE".(æ‰ïšþÿÿÿÿ8˜³ãšÅ2 java:S3252í"MUse static access with "android.text.Spanned" for "SPAN_EXCLUSIVE_EXCLUSIVE".(æ‰ïšþÿÿÿÿ8˜³ãšÅ2
p p
java:S3252"MUse static access with "android.text.Spanned" for "SPAN_EXCLUSIVE_EXCLUSIVE".(æ‰ïšþÿÿÿÿ8سãšÅ2 java:S3252<EFBFBD>"MUse static access with "android.text.Spanned" for "SPAN_EXCLUSIVE_EXCLUSIVE".(æ‰ïšþÿÿÿÿ8سãšÅ2
p p
java:S3252¯"MUse static access with "android.text.Spanned" for "SPAN_EXCLUSIVE_EXCLUSIVE".(æ‰ïšþÿÿÿÿ8ó³ãšÅ2 java:S3252«"MUse static access with "android.text.Spanned" for "SPAN_EXCLUSIVE_EXCLUSIVE".(æ‰ïšþÿÿÿÿ8ó³ãšÅ2
p p
java:S3252Í"MUse static access with "android.text.Spanned" for "SPAN_EXCLUSIVE_EXCLUSIVE".(æ‰ïšþÿÿÿÿ8—´ãšÅ2 java:S3252É"MUse static access with "android.text.Spanned" for "SPAN_EXCLUSIVE_EXCLUSIVE".(æ‰ïšþÿÿÿÿ8—´ãšÅ2
n n
java:S3252"PUse static access with "android.view.ViewGroup$LayoutParams" for "WRAP_CONTENT".(œšÌ¾8¦µãšÅ2 java:S3252þ"PUse static access with "android.view.ViewGroup$LayoutParams" for "WRAP_CONTENT".(œšÌ¾8¦µãšÅ2
n n
java:S3252ƒ"PUse static access with "android.view.ViewGroup$LayoutParams" for "WRAP_CONTENT".(ûë‰<C3AB>8¨µãšÅ2 java:S3252ÿ"PUse static access with "android.view.ViewGroup$LayoutParams" for "WRAP_CONTENT".(ûë‰<C3AB>8¨µãšÅ2
s s
java:S3252Ñ"PUse static access with "android.view.ViewGroup$LayoutParams" for "MATCH_PARENT".(„¸ðÂþÿÿÿÿ8ÀµãšÅ2 java:S3252Í"PUse static access with "android.view.ViewGroup$LayoutParams" for "MATCH_PARENT".(„¸ðÂþÿÿÿÿ8ÀµãšÅ2
n n
java:S3252Ò"PUse static access with "android.view.ViewGroup$LayoutParams" for "WRAP_CONTENT".(œšÌ¾8ÁµãšÅ2 java:S3252Î"PUse static access with "android.view.ViewGroup$LayoutParams" for "WRAP_CONTENT".(œšÌ¾8ÁµãšÅ2
p p
java:S3252"MUse static access with "android.text.Spanned" for "SPAN_EXCLUSIVE_EXCLUSIVE".(æ‰ïšþÿÿÿÿ8͵ãšÅ2 java:S3252"MUse static access with "android.text.Spanned" for "SPAN_EXCLUSIVE_EXCLUSIVE".(æ‰ïšþÿÿÿÿ8͵ãšÅ2
P O
java:S1068"2Remove this unused "mSearchResults" private field.(±»Û½8<>¶ãšÅ2 java:S1068~"2Remove this unused "mSearchResults" private field.(±»Û½8<>¶ãšÅ2
Z Y
java:S1068ƒ"7Remove this unused "mCurrentSearchIndex" private field.(©é·Õÿÿÿÿÿ8“¶ãšÅ2 java:S1068"7Remove this unused "mCurrentSearchIndex" private field.(©é·Õÿÿÿÿÿ8“¶ãšÅ2
V V
java:S1068"8Remove this unused "mSearchHighlightSpan" private field.(¹‘»È8•¶ãšÅ2 java:S1068"8Remove this unused "mSearchHighlightSpan" private field.(¹‘»È8•¶ãšÅ2
X X
java:S1068":Remove this unused "SEARCH_HIGHLIGHT_COLOR" private field.(çî‘ò8¤¶ãšÅ2 java:S1068<EFBFBD>":Remove this unused "SEARCH_HIGHLIGHT_COLOR" private field.(çî‘ò8¤¶ãšÅ2

@ -1,184 +1,184 @@
| |
java:S2293ž"YReplace the type specification in this constructor call with the diamond operator ("<>").(ÑÓ<C391>¥üÿÿÿÿ8DzÛÅ2 java:S2293<EFBFBD>"YReplace the type specification in this constructor call with the diamond operator ("<>").(ÑÓ<C391>¥üÿÿÿÿ8DzÛÅ2
| |
java:S2293¬"YReplace the type specification in this constructor call with the diamond operator ("<>").(®ú÷õþÿÿÿÿ8ȲÛÅ2 java:S2293«"YReplace the type specification in this constructor call with the diamond operator ("<>").(®ú÷õþÿÿÿÿ8ȲÛÅ2
| |
java:S2293º"YReplace the type specification in this constructor call with the diamond operator ("<>").(êÝýÂþÿÿÿÿ8ȲÛÅ2 java:S2293¹"YReplace the type specification in this constructor call with the diamond operator ("<>").(êÝýÂþÿÿÿÿ8ȲÛÅ2
w w
java:S2293Ç"YReplace the type specification in this constructor call with the diamond operator ("<>").(À—’¢8ȲÛÅ2 java:S2293Æ"YReplace the type specification in this constructor call with the diamond operator ("<>").(À—’¢8ȲÛÅ2
w w
java:S2293 "YReplace the type specification in this constructor call with the diamond operator ("<>").(艥ð8ɲۂÅ2 java:S2293<EFBFBD> "YReplace the type specification in this constructor call with the diamond operator ("<>").(艥ð8˜é<EFBFBD>£Æ2
w w
java:S2293ã"YReplace the type specification in this constructor call with the diamond operator ("<>").(×¼‰í8ɲۂÅ2 java:S2293à"YReplace the type specification in this constructor call with the diamond operator ("<>").(×¼‰í8šé<EFBFBD>£Æ2
k k
java:S1192¨"HDefine a constant instead of duplicating this literal "[local]" 6 times.(£Ì­Ùýÿÿÿÿ8ʲۂÅ2 java:S1192¥"HDefine a constant instead of duplicating this literal "[local]" 6 times.(£Ì­Ùýÿÿÿÿ8é<EFBFBD>£Æ2
 
java:S1192§"cDefine a constant instead of duplicating this literal "获å<C2B7>上次的ä½<C3A4>ç½®-ç»<C3A7>纬度:" 3 times.(Ì•¬Âþÿÿÿÿ8ʲۂÅ2 java:S1192¤"cDefine a constant instead of duplicating this literal "获å<C2B7>上次的ä½<C3A4>ç½®-ç»<C3A7>纬度:" 3 times.(Ì•¬Âþÿÿÿÿ8œé<EFBFBD>£Æ2
l l
java:S1192©"IDefine a constant instead of duplicating this literal "[/local]" 6 times.(Ÿì¦çûÿÿÿÿ8ʲÛÅ2 java:S1192¦"IDefine a constant instead of duplicating this literal "[/local]" 6 times.(Ÿì¦çûÿÿÿÿ8ʲÛÅ2
R R
java:S1066þ"/Merge this if statement with the enclosing one.(ˆ³“éùÿÿÿÿ8˲ÛÅ2 java:S1066ý"/Merge this if statement with the enclosing one.(ˆ³“éùÿÿÿÿ8˲ÛÅ2
n java:S117Ú"QRename this local variable to match the regular expression '^[a-z][a-zA-Z0-9]*$'.(Ðù¨ú8̲ۂÅ2 n java:S117×"QRename this local variable to match the regular expression '^[a-z][a-zA-Z0-9]*$'.(Ðù¨ú8Ÿé<EFBFBD>£Æ2
s java:S117»"QRename this local variable to match the regular expression '^[a-z][a-zA-Z0-9]*$'.(ãðÐÙüÿÿÿÿ8̲ۂÅ2 s java:S117¸"QRename this local variable to match the regular expression '^[a-z][a-zA-Z0-9]*$'.(ãðÐÙüÿÿÿÿ8 é<EFBFBD>£Æ2
s java:S117Þ"QRename this local variable to match the regular expression '^[a-z][a-zA-Z0-9]*$'.(ÄÀ´Àúÿÿÿÿ8̲ۂÅ2 s java:S117Û"QRename this local variable to match the regular expression '^[a-z][a-zA-Z0-9]*$'.(ÄÀ´Àúÿÿÿÿ8 é<EFBFBD>£Æ2
s java:S117ó"QRename this local variable to match the regular expression '^[a-z][a-zA-Z0-9]*$'.(ÄÀ´Àúÿÿÿÿ8ͲۂÅ2 s java:S117ð"QRename this local variable to match the regular expression '^[a-z][a-zA-Z0-9]*$'.(ÄÀ´Àúÿÿÿÿ8¡é<EFBFBD>£Æ2
n java:S117<EFBFBD>"QRename this local variable to match the regular expression '^[a-z][a-zA-Z0-9]*$'.(÷“ é8ͲۂÅ2 n java:S117Œ"QRename this local variable to match the regular expression '^[a-z][a-zA-Z0-9]*$'.(÷“ é8¡é<EFBFBD>£Æ2
n java:S117"QRename this local variable to match the regular expression '^[a-z][a-zA-Z0-9]*$'.(<28>æ‡Ç8ͲۂÅ2 n java:S117"QRename this local variable to match the regular expression '^[a-z][a-zA-Z0-9]*$'.(<28>æ‡Ç8¡é<EFBFBD>£Æ2
n java:S117å"QRename this local variable to match the regular expression '^[a-z][a-zA-Z0-9]*$'.(£«à´8ͲۂÅ2 n java:S117â"QRename this local variable to match the regular expression '^[a-z][a-zA-Z0-9]*$'.(£«à´8¢é<EFBFBD>£Æ2
s java:S117÷"QRename this local variable to match the regular expression '^[a-z][a-zA-Z0-9]*$'.(¤«“¼ûÿÿÿÿ8ͲۂÅ2 s java:S117ô"QRename this local variable to match the regular expression '^[a-z][a-zA-Z0-9]*$'.(¤«“¼ûÿÿÿÿ8¢é<EFBFBD>£Æ2
s java:S117°"QRename this local variable to match the regular expression '^[a-z][a-zA-Z0-9]*$'.(£Þ½çúÿÿÿÿ8ͲۂÅ2 s java:S117­"QRename this local variable to match the regular expression '^[a-z][a-zA-Z0-9]*$'.(£Þ½çúÿÿÿÿ8£é<EFBFBD>£Æ2
n java:S117¿"QRename this local variable to match the regular expression '^[a-z][a-zA-Z0-9]*$'.(Ý¢ãò8ͲۂÅ2 n java:S117¼"QRename this local variable to match the regular expression '^[a-z][a-zA-Z0-9]*$'.(Ý¢ãò8¤é<EFBFBD>£Æ2
K K
java:S1604Å"(Make this anonymous inner class a lambda(ëëÐõúÿÿÿÿ8ͲÛÅ2 java:S1604Â"(Make this anonymous inner class a lambda(ëëÐõúÿÿÿÿ8¤é<C2A4>£Æ2
F F
java:S1604Ð"(Make this anonymous inner class a lambda(ÄàÒÂ8ͲÛÅ2 java:S1604Í"(Make this anonymous inner class a lambda(ÄàÒÂ8¥é<C2A5>£Æ2
F F
java:S1604Û"(Make this anonymous inner class a lambda(‰‹ãÈ8ͲÛÅ2 java:S1604Ø"(Make this anonymous inner class a lambda(‰‹ãÈ8¥é<C2A5>£Æ2
K K
java:S1604ï"(Make this anonymous inner class a lambda(è¸Ï–üÿÿÿÿ8ͲÛÅ2 java:S1604ì"(Make this anonymous inner class a lambda(è¸Ï–üÿÿÿÿ8¦é<C2A6>£Æ2
F F
java:S1604ú"(Make this anonymous inner class a lambda(°ˆöæ8ͲÛÅ2 java:S1604÷"(Make this anonymous inner class a lambda(°ˆöæ8¦é<C2A6>£Æ2
F F
java:S1604ù"(Make this anonymous inner class a lambda(<><EFBFBD>8ͲÛÅ2 java:S1604ö"(Make this anonymous inner class a lambda(<><EFBFBD>8§é<C2A7>£Æ2
F F
java:S1604<EFBFBD>"(Make this anonymous inner class a lambda(Ùï›î8ͲÛÅ2 java:S1604þ"(Make this anonymous inner class a lambda(Ùï›î8§é<C2A7>£Æ2
K K
java:S1604"(Make this anonymous inner class a lambda(½·ŸÓúÿÿÿÿ8ͲÛÅ2 java:S1604"(Make this anonymous inner class a lambda(½·ŸÓúÿÿÿÿ8§é<C2A7>£Æ2
F F
java:S1604æ"(Make this anonymous inner class a lambda(›‹Ñ’8ͲÛÅ2 java:S1604ã"(Make this anonymous inner class a lambda(›‹Ñ’8¨é<C2A8>£Æ2
F F
java:S1604¬"(Make this anonymous inner class a lambda(þ¡ôš8βÛÅ2 java:S1604©"(Make this anonymous inner class a lambda(þ¡ôš8¨é<C2A8>£Æ2
F F
java:S1604¡ java:S1604ž
"(Make this anonymous inner class a lambda(ά¯”8βۂÅ2 "(Make this anonymous inner class a lambda(ά¯”8©é<EFBFBD>£Æ2
F F
java:S1604× java:S1604Ô
"(Make this anonymous inner class a lambda(¨›Ì÷8βۂÅ2 "(Make this anonymous inner class a lambda(¨›Ì÷8ªé<EFBFBD>£Æ2
F F
java:S1604Ê "(Make this anonymous inner class a lambda(××ß’8βÛÅ2 java:S1604Ç "(Make this anonymous inner class a lambda(××ß’8ªé<C2AA>£Æ2
K K
java:S1604"(Make this anonymous inner class a lambda(ƒ‚Œûüÿÿÿÿ8βÛÅ2 java:S1604"(Make this anonymous inner class a lambda(ƒ‚Œûüÿÿÿÿ8«é<C2AB>£Æ2
F F
java:S1604Á"(Make this anonymous inner class a lambda(°”ì 8βÛÅ2 java:S1604¾"(Make this anonymous inner class a lambda(°”ì 8«é<C2AB>£Æ2
K K
java:S1604Ï"(Make this anonymous inner class a lambda(¦ÎìÔüÿÿÿÿ8βÛÅ2 java:S1604Ì"(Make this anonymous inner class a lambda(¦ÎìÔüÿÿÿÿ8¬é<C2AC>£Æ2
F F
java:S1604±"(Make this anonymous inner class a lambda(›‹Ñ’8βÛÅ2 java:S1604®"(Make this anonymous inner class a lambda(›‹Ñ’8¬é<C2AC>£Æ2
F F
java:S1604ò"(Make this anonymous inner class a lambda(›È¼¡8βÛÅ2 java:S1604ï"(Make this anonymous inner class a lambda(›È¼¡8¬é<C2AC>£Æ2
n n
java:S1301ÿ"KReplace this "switch" statement by "if" statements to increase readability.(×ö³–úÿÿÿÿ8βۂÅ2 java:S1301ü"KReplace this "switch" statement by "if" statements to increase readability.(×ö³–úÿÿÿÿ8­é<EFBFBD>£Æ2
y y
java:S1104"VMake tvModified a static final constant or non-public and provide accessors if needed.(õ‹Ý‚ûÿÿÿÿ8вÛÅ2 java:S1104"VMake tvModified a static final constant or non-public and provide accessors if needed.(õ‹Ý‚ûÿÿÿÿ8вÛÅ2
t t
java:S1104"WMake ivAlertIcon a static final constant or non-public and provide accessors if needed.(íÀ©C8вÛÅ2 java:S1104"WMake ivAlertIcon a static final constant or non-public and provide accessors if needed.(íÀ©C8вÛÅ2
u u
java:S1104"WMake tvAlertDate a static final constant or non-public and provide accessors if needed.(ĭܯ8вÛÅ2 java:S1104"WMake tvAlertDate a static final constant or non-public and provide accessors if needed.(ĭܯ8вÛÅ2
{ {
java:S1104"XMake ibSetBgColor a static final constant or non-public and provide accessors if needed.(ˆâñùþÿÿÿÿ8вÛÅ2 java:S1104"XMake ibSetBgColor a static final constant or non-public and provide accessors if needed.(ˆâñùþÿÿÿÿ8вÛÅ2
 
java:S1104õ"\Make locationListener a static final constant or non-public and provide accessors if needed.(Þ‡•Ñúÿÿÿÿ8вۂÅ2 java:S1104ò"\Make locationListener a static final constant or non-public and provide accessors if needed.(Þ‡•Ñúÿÿÿÿ8°é<EFBFBD>£Æ2
z java:S116ð"XRename this field "PHOTO_REQUEST" to match the regular expression '^[a-z][a-zA-Z0-9]*$'.(àÙŠ¬øÿÿÿÿ´ÛÅ2 z java:S116ï"XRename this field "PHOTO_REQUEST" to match the regular expression '^[a-z][a-zA-Z0-9]*$'.(àÙŠ¬øÿÿÿÿ´ÛÅ2
y java:S116ò"\Rename this field "restore_translate" to match the regular expression '^[a-z][a-zA-Z0-9]*$'.(†¥ÑÖ´ÛÅ2 y java:S116ñ"\Rename this field "restore_translate" to match the regular expression '^[a-z][a-zA-Z0-9]*$'.(†¥ÑÖ´ÛÅ2
y java:S116â"\Rename this field "MAX_OF_RVOKE_TIME" to match the regular expression '^[a-z][a-zA-Z0-9]*$'.(°ÖêÊ8Ö´Û‚Å2 y java:S116ß"\Rename this field "MAX_OF_RVOKE_TIME" to match the regular expression '^[a-z][a-zA-Z0-9]*$'.(°ÖêÊ8µë<EFBFBD>£Æ2
D D
java:S1170ð"!Make this final field static too.(àÙŠ¬øÿÿÿÿ8×´ÛÅ2 java:S1170ï"!Make this final field static too.(àÙŠ¬øÿÿÿÿ8×´ÛÅ2
u u
java:S1450î"WRemove the "mPattern" field and declare it as a local variable in the relevant methods.(§¤øˆ´ÛÅ2 java:S1450í"WRemove the "mPattern" field and declare it as a local variable in the relevant methods.(§¤øˆ´ÛÅ2
~ ~
java:S1450ô"aRemove the "mSharedPreferences" field and declare it as a local variable in the relevant methods.(®”ÎU8ß´ÛÅ2 java:S1450ó"aRemove the "mSharedPreferences" field and declare it as a local variable in the relevant methods.(®”ÎU8ß´ÛÅ2
ƒ ƒ
java:S1149ã"eReplace the synchronized class "Vector" by an unsynchronized one such as "ArrayList" or "LinkedList".(×¼‰í8å´Û‚Å2 java:S1149à"eReplace the synchronized class "Vector" by an unsynchronized one such as "ArrayList" or "LinkedList".(×¼‰í8Àë<EFBFBD>£Æ2
u u
java:S3776"RRefactor this method to reduce its Cognitive Complexity from 21 to the 15 allowed.(Û›ë´øÿÿÿÿ´ÛÅ2 java:S3776ˆ"RRefactor this method to reduce its Cognitive Complexity from 21 to the 15 allowed.(Û›ë´øÿÿÿÿ´ÛÅ2
X X
java:S2209"5Change this instance-reference to a static reference.(¡ô²’øÿÿÿÿ´ÛÅ2 java:S2209"5Change this instance-reference to a static reference.(¡ô²’øÿÿÿÿ´ÛÅ2
g g
java:S3252Î"DUse static access with "android.content.Context" for "MODE_PRIVATE".(ø°‰¨þÿÿÿÿ8ý´Û‚Å2 java:S3252Ë"DUse static access with "android.content.Context" for "MODE_PRIVATE".(ø°‰¨þÿÿÿÿ8Õë<EFBFBD>£Æ2
^ java:S125<18>"<This block of commented-out lines of code should be removed.(¢î„›øÿÿÿÿ8‹µÛ‚Å2 ^ java:S125<18>"<This block of commented-out lines of code should be removed.(¢î„›øÿÿÿÿ8àë<EFBFBD>£Æ2
u u
java:S3776³"RRefactor this method to reduce its Cognitive Complexity from 23 to the 15 allowed.(¾Þ×°þÿÿÿÿ8<EFBFBD>µÛÅ2 java:S3776°"RRefactor this method to reduce its Cognitive Complexity from 23 to the 15 allowed.(¾Þ×°þÿÿÿÿ8äë<EFBFBD>£Æ2
Y java:S125Æ"<This block of commented-out lines of code should be removed.(ØÕÀò8—µÛÅ2 Y java:S125Ã"<This block of commented-out lines of code should be removed.(ØÕÀò8éë<C3A9>£Æ2
p p
java:S3252Ü"MUse static access with "android.text.Spanned" for "SPAN_EXCLUSIVE_EXCLUSIVE".(ˆ†Îúúÿÿÿÿ8™µÛ‚Å2 java:S3252Ù"MUse static access with "android.text.Spanned" for "SPAN_EXCLUSIVE_EXCLUSIVE".(ˆ†Îúúÿÿÿÿ8êë<EFBFBD>£Æ2
p p
java:S3252ñ"MUse static access with "android.text.Spanned" for "SPAN_EXCLUSIVE_EXCLUSIVE".(ˆ†Îúúÿÿÿÿ8šµÛ‚Å2 java:S3252î"MUse static access with "android.text.Spanned" for "SPAN_EXCLUSIVE_EXCLUSIVE".(ˆ†Îúúÿÿÿÿ8ìë<EFBFBD>£Æ2
X X
java:S1161ü":Add the "@Override" annotation above this method signature(þž±¬8œµÛÅ2 java:S1161ù":Add the "@Override" annotation above this method signature(þž±¬8íë<C3AD>£Æ2
j j
java:S3252"MUse static access with "android.text.Spanned" for "SPAN_EXCLUSIVE_EXCLUSIVE".(þà¦T8žµÛ‚Å2 java:S3252Ž"MUse static access with "android.text.Spanned" for "SPAN_EXCLUSIVE_EXCLUSIVE".(þà¦T8ïë<EFBFBD>£Æ2
p java:S100"NRename this method name to match the regular expression '^[a-z][a-zA-Z0-9]*$'.(ßé̵þÿÿÿÿ8±µÛ‚Å2 p java:S100"NRename this method name to match the regular expression '^[a-z][a-zA-Z0-9]*$'.(ßé̵þÿÿÿÿ8üë<EFBFBD>£Æ2
e e
java:S5361œ"HReplace this call to "replaceAll()" by a call to the "replace()" method.(´úív8³µÛÅ2 java:S5361"HReplace this call to "replaceAll()" by a call to the "replace()" method.(´úív8þë<C3BE>£Æ2
L L
java:S2140 ")Use "java.util.Random.nextInt()" instead.(îš‘úúÿÿÿÿ8³µÛÅ2 java:S2140<EFBFBD>")Use "java.util.Random.nextInt()" instead.(îš‘úúÿÿÿÿ8þë<C3BE>£Æ2
k java:S100½"NRename this method name to match the regular expression '^[a-z][a-zA-Z0-9]*$'.(í·¯À8¾µÛ‚Å2 k java:S100º"NRename this method name to match the regular expression '^[a-z][a-zA-Z0-9]*$'.(í·¯À8†ì<EFBFBD>£Æ2
e e
java:S5361À"HReplace this call to "replaceAll()" by a call to the "replace()" method.(´úív8¿µÛÅ2 java:S5361½"HReplace this call to "replaceAll()" by a call to the "replace()" method.(´úív8‡ì<E280A1>£Æ2
L L
java:S2140Å")Use "java.util.Random.nextInt()" instead.(îš‘úúÿÿÿÿ8ÀµÛÅ2 java:S2140Â")Use "java.util.Random.nextInt()" instead.(îš‘úúÿÿÿÿ8‡ì<E280A1>£Æ2
u u
java:S3776"RRefactor this method to reduce its Cognitive Complexity from 26 to the 15 allowed.(ݨÁ±øÿÿÿÿ8ŵۂÅ2 java:S3776ý"RRefactor this method to reduce its Cognitive Complexity from 26 to the 15 allowed.(ݨÁ±øÿÿÿÿ8ì<EFBFBD>£Æ2
^ ^
java:S1874 "@Remove this use of "SOFT_INPUT_ADJUST_RESIZE"; it is deprecated.(ѯ”<C2AF>8ʵÛÅ2 java:S1874<EFBFBD>"@Remove this use of "SOFT_INPUT_ADJUST_RESIZE"; it is deprecated.(ѯ”<C2AF>8<>ì<EFBFBD>£Æ2
c c
java:S1874Ë"@Remove this use of "SOFT_INPUT_ADJUST_RESIZE"; it is deprecated.(Ò£ú¿ÿÿÿÿÿ8̵ÛÅ2 java:S1874È"@Remove this use of "SOFT_INPUT_ADJUST_RESIZE"; it is deprecated.(Ò£ú¿ÿÿÿÿÿ8<>ì<EFBFBD>£Æ2
V V
java:S1874"9Remove this use of "setTextAppearance"; it is deprecated.(½õË(8×µÛÅ2 java:S1874"9Remove this use of "setTextAppearance"; it is deprecated.(½õË(8•ì<E280A2>£Æ2
R R
java:S2864¡"4Iterate over the "entrySet" instead of the "keySet".(­Ô‡ï8صÛÅ2 java:S2864ž"4Iterate over the "entrySet" instead of the "keySet".(­Ô‡ï8—ì<E28094>£Æ2
_ _
java:S1126"AReplace this if-then-else statement by a single return statement.(®ÎÚÉ8ÞµÛÅ2 java:S1126<EFBFBD>"AReplace this if-then-else statement by a single return statement.(®ÎÚÉ8ì<E280BA>£Æ2
? ?
java:S1116Î"Remove this empty statement.(Åñ­õþÿÿÿÿ8ãµÛÅ2 java:S1116Ë"Remove this empty statement.(Åñ­õþÿÿÿÿ8Ÿì<C5B8>£Æ2
W W
java:S1874Ð"9Remove this use of "PreferenceManager"; it is deprecated.(ª¦úÅ8ãµÛÅ2 java:S1874Í"9Remove this use of "PreferenceManager"; it is deprecated.(ª¦úÅ8Ÿì<C5B8>£Æ2
a a
java:S1874Ð"CRemove this use of "getDefaultSharedPreferences"; it is deprecated.(ª¦úÅ8ãµÛÅ2 java:S1874Í"CRemove this use of "getDefaultSharedPreferences"; it is deprecated.(ª¦úÅ8 ì<C2A0>£Æ2
Ÿ Ÿ
java:S1186à"€Add a nested comment explaining why this method is empty, throw an UnsupportedOperationException or complete the implementation.(‹ïØÚ8äµÛ‚Å2 java:S1186Ý"€Add a nested comment explaining why this method is empty, throw an UnsupportedOperationException or complete the implementation.(‹ïØÚ8¡ì<EFBFBD>£Æ2
¤ ¤
java:S1186ä"€Add a nested comment explaining why this method is empty, throw an UnsupportedOperationException or complete the implementation.(Ê¥¾àûÿÿÿÿ8äµÛ‚Å2 java:S1186á"€Add a nested comment explaining why this method is empty, throw an UnsupportedOperationException or complete the implementation.(Ê¥¾àûÿÿÿÿ8¡ì<EFBFBD>£Æ2
\ \
java:S1874· "9Remove this use of "setTextAppearance"; it is deprecated.(ÑëÊäüÿÿÿÿ8ìµÛÅ2 java:S1874´ "9Remove this use of "setTextAppearance"; it is deprecated.(ÑëÊäüÿÿÿÿ8¦ì<C2A6>£Æ2
m m
java:S1874 "JDon't override a deprecated method or explicitly mark it as "@Deprecated".(œƒƒ©ùÿÿÿÿ8ìµÛ‚Å2 java:S1874¿ "JDon't override a deprecated method or explicitly mark it as "@Deprecated".(œƒƒ©ùÿÿÿÿ8§ì<EFBFBD>£Æ2
X X
java:S1874É "5Remove this use of "onBackPressed"; it is deprecated.(<28>Ñàÿÿÿÿÿ8íµÛÅ2 java:S1874Æ "5Remove this use of "onBackPressed"; it is deprecated.(<28>Ñàÿÿÿÿÿ8§ì<C2A7>£Æ2
N N
java:S1874± "0Remove this use of "getColor"; it is deprecated.(è¤ÔÃ8ƒ¶ÛÅ2 java:S1874® "0Remove this use of "getColor"; it is deprecated.(è¤ÔÃ8¹ì<C2B9>£Æ2
k k
java:S3252³ "MUse static access with "android.text.Spanned" for "SPAN_INCLUSIVE_EXCLUSIVE".(ŸÍÃó8ƒ¶Û‚Å2 java:S3252° "MUse static access with "android.text.Spanned" for "SPAN_INCLUSIVE_EXCLUSIVE".(ŸÍÃó8ºì<EFBFBD>£Æ2
[ [
java:S1874Ô "=Remove this use of "EXTRA_SHORTCUT_INTENT"; it is deprecated.(·Ã°Ÿ8Œ¶ÛÅ2 java:S1874Ñ "=Remove this use of "EXTRA_SHORTCUT_INTENT"; it is deprecated.(·Ã°Ÿ8Ãì<C383>£Æ2
Y Y
java:S1874Õ ";Remove this use of "EXTRA_SHORTCUT_NAME"; it is deprecated.(ÒÀ‘ç8Œ¶ÛÅ2 java:S1874Ò ";Remove this use of "EXTRA_SHORTCUT_NAME"; it is deprecated.(ÒÀ‘ç8Œ¶ÛÅ2
b b
java:S1874× "DRemove this use of "EXTRA_SHORTCUT_ICON_RESOURCE"; it is deprecated.(§éǾ8Œ¶ÛÅ2 java:S1874Ô "DRemove this use of "EXTRA_SHORTCUT_ICON_RESOURCE"; it is deprecated.(§éǾ8Äì<C384>£Æ2
o o
java:S3776³"RRefactor this method to reduce its Cognitive Complexity from 16 to the 15 allowed.(©ôå:8¶ÛÅ2 java:S3776°"RRefactor this method to reduce its Cognitive Complexity from 16 to the 15 allowed.(©ôå:8Éì<C389>£Æ2
z z
java:S3252Í"WUse static access with "androidx.core.content.ContextCompat" for "checkSelfPermission".(À÷Ý®øÿÿÿÿ8’¶Û‚Å2 java:S3252Ê"WUse static access with "androidx.core.content.ContextCompat" for "checkSelfPermission".(À÷Ý®øÿÿÿÿ8Ëì<EFBFBD>£Æ2
Y java:S125Ù"<This block of commented-out lines of code should be removed.(¢å¦ð8”¶ÛÅ2 Y java:S125Ö"<This block of commented-out lines of code should be removed.(¢å¦ð8Ìì<C38C>£Æ2
Y java:S125ê"<This block of commented-out lines of code should be removed.(¢å¦ð8•¶ÛÅ2 Y java:S125ç"<This block of commented-out lines of code should be removed.(¢å¦ð8Íì<C38D>£Æ2
Ÿ Ÿ
java:S1186ø"€Add a nested comment explaining why this method is empty, throw an UnsupportedOperationException or complete the implementation.(ÀÄÞ’8•¶Û‚Å2 java:S1186õ"€Add a nested comment explaining why this method is empty, throw an UnsupportedOperationException or complete the implementation.(ÀÄÞ’8Îì<EFBFBD>£Æ2
Ÿ Ÿ
java:S1186ý"€Add a nested comment explaining why this method is empty, throw an UnsupportedOperationException or complete the implementation.(çÅðÙ8•¶Û‚Å2 java:S1186ú"€Add a nested comment explaining why this method is empty, throw an UnsupportedOperationException or complete the implementation.(çÅðÙ8Îì<EFBFBD>£Æ2
h h
java:S1874ø"JDon't override a deprecated method or explicitly mark it as "@Deprecated".(ÀÄÞ’8•¶Û‚Å2 java:S1874õ"JDon't override a deprecated method or explicitly mark it as "@Deprecated".(ÀÄÞ’8Îì<EFBFBD>£Æ2
U U
java:S1874˜"7Remove this use of "getFromLocation"; it is deprecated.(š¦è¨8™¶ÛÅ2 java:S1874"7Remove this use of "getFromLocation"; it is deprecated.(š¦è¨8Ñì<C391>£Æ2
k k
java:S1858š"H"getAddressLine" returns a string, there's no need to call "toString()".(ú³Ô­úÿÿÿÿ8š¶Û‚Å2 java:S1858"H"getAddressLine" returns a string, there's no need to call "toString()".(ú³Ô­úÿÿÿÿ8Òì<EFBFBD>£Æ2
k java:S100¯"NRename this method name to match the regular expression '^[a-z][a-zA-Z0-9]*$'.(úƒ¿é8›¶Û‚Å2 k java:S100¬"NRename this method name to match the regular expression '^[a-z][a-zA-Z0-9]*$'.(úƒ¿é8Óì<EFBFBD>£Æ2
Y java:S125Ù"<This block of commented-out lines of code should be removed.(²ä×ô8 ¶ÛÅ2 Y java:S125Ö"<This block of commented-out lines of code should be removed.(²ä×ô8×ì<C397>£Æ2
9 9
java:S3626û"Remove this redundant jump.(ûÁÝ…8¢¶ÛÅ2 java:S3626ø"Remove this redundant jump.(ûÁÝ…8Ùì<C399>£Æ2
L L
java:S1905ý"/Remove this unnecessary cast to "CharSequence".(þ¶„78£¶ÛÅ2 java:S1905ú"/Remove this unnecessary cast to "CharSequence".(þ¶„78Ûì<C39B>£Æ2
S S
java:S1068ô"6Remove this unused "mSharedPreferences" private field.(®”ÎU8¤¶ÛÅ2 java:S1068ó"6Remove this unused "mSharedPreferences" private field.(®”ÎU8¤¶ÛÅ2
R R
java:S1144"/Remove this unused private "getAddress" method.(⪽¦úÿÿÿÿ8¤¶ÛÅ2 java:S1144<EFBFBD>"/Remove this unused private "getAddress" method.(⪽¦úÿÿÿÿ8Üì<C39C>£Æ2

@ -1,53 +0,0 @@

java:S1192´"mDefine a constant instead of duplicating this literal "startChat failed,please setLLMConfig before!" 3 times.(™ÓÓÝ
l java:S117«"QRename this local variable to match the regular expression '^[a-z][a-zA-Z0-9]*$'.(ƒÿÏõøÿÿÿÿ
C
java:S1604C"(Make this anonymous inner class a lambda(˜<>ã¯þÿÿÿÿ
C
java:S1604["(Make this anonymous inner class a lambda(˜<>ã¯þÿÿÿÿ
D
java:S1604"(Make this anonymous inner class a lambda(˜<>ã¯þÿÿÿÿ
D
java:S1604ž"(Make this anonymous inner class a lambda(˜<>ã¯þÿÿÿÿ
D
java:S1604È"(Make this anonymous inner class a lambda(˜<>ã¯þÿÿÿÿ
K
java:S1604ñ"(Make this anonymous inner class a lambda(˜<>ã¯þÿÿÿÿ8<>¥©ØÄ2
g
java:S1301¦"KReplace this "switch" statement by "if" statements to increase readability.(×ö³–úÿÿÿÿ
{ java:S120"ZRename this package name to match the regular expression '^[a-z_]+(\.[a-z_][a-z0-9_]*)*$'.(ÅÊ«Åùÿÿÿÿ8™ÂàÔÄ2
V
java:S2259Ä"@A "NullPointerException" could be thrown; "in" is nullable here.(ëÚÑk
l java:S116."WRename this field "btn_imgInput" to match the regular expression '^[a-z][a-zA-Z0-9]*$'.(ˆ÷¹Õ
m java:S116."XRename this field "btn_arunStart" to match the regular expression '^[a-z][a-zA-Z0-9]*$'.(ˆ÷¹Õ
h java:S116."SRename this field "btn_stop" to match the regular expression '^[a-z][a-zA-Z0-9]*$'.(ˆ÷¹Õ
t java:S1160"ZRename this field "tv_Notification" to match the regular expression '^[a-z][a-zA-Z0-9]*$'.(ãïÆƒýÿÿÿÿ
l java:S1162"WRename this field "ed_textInput" to match the regular expression '^[a-z][a-zA-Z0-9]*$'.(ÈòéÌ
`
java:S1659."JDeclare "btn_arunStart" and all following declarations on a separate line.(ˆ÷¹Õ
r
java:S1450."\Remove the "btn_arunStart" field and declare it as a local variable in the relevant methods.(ˆ÷¹Õ
q
java:S1450."[Remove the "btn_imgInput" field and declare it as a local variable in the relevant methods.(ˆ÷¹Õ
m
java:S1450."WRemove the "btn_stop" field and declare it as a local variable in the relevant methods.(ˆ÷¹Õ
r
java:S1450c"URemove the "isAuth" field and declare it as a local variable in the relevant methods.(¢¸‰ê8Í¥­ØÄ2

java:S1186U"€Add a nested comment explaining why this method is empty, throw an UnsupportedOperationException or complete the implementation.(ÁõZ
H
java:S1172"+Remove this unused method parameter "text".(±ŠŽ°8̦©ØÄ2
^ java:S125ƒ"<This block of commented-out lines of code should be removed.(‚çíìùÿÿÿÿ8ͦ©ØÄ2
D
java:S1481à"(Remove this unused "ret" local variable.(̬àÇûÿÿÿÿ
8 java:S131ˆ""Add a default case to this switch.(ŽºÖ<C2BA>
R java:S125Ž"<This block of commented-out lines of code should be removed.(™Âæ—
= java:S131¦""Add a default case to this switch.(×ö³–úÿÿÿÿ
Y java:S125ª"<This block of commented-out lines of code should be removed.(Ö Î<C2A0><38>ôÔÄ2
F
java:S2093À"*Change this "try" to a try-with-resources.(¡»¢üùÿÿÿÿ
G
java:S1068c"*Remove this unused "isAuth" private field.(¢¸‰ê8ñ¥­ØÄ2
I
java:S1144Õ"2Remove this unused private "syncStartChat" method.(Êþ­ì

@ -1,87 +1,86 @@
v v
java:S2293\"YReplace the type specification in this constructor call with the diamond operator ("<>").(Ýýî°8£·ˆþÅ2 java:S2293X"YReplace the type specification in this constructor call with the diamond operator ("<>").(Ýýî°8£·ˆþÅ2
j j
java:S1192¸"MDefine a constant instead of duplicating this literal "输出: java:S1192´"MDefine a constant instead of duplicating this literal "输出:
" 3 times.(Ú¥ã8¥·ˆþÅ2 " 3 times.(Ú¥ã8¥·ˆþÅ2
j j
java:S1192Û"LDefine a constant instead of duplicating this literal " }, java:S1192×"LDefine a constant instead of duplicating this literal " },
" 3 times.(¥ÁÊÁ8¥·ˆþÅ2 " 3 times.(¥ÁÊÁ8¥·ˆþÅ2
 
java:S1192Œ"mDefine a constant instead of duplicating this literal "startChat failed,please setLLMConfig before!" 4 times.(™ÓÓÝ8¥·ˆþÅ2 java:S1192ˆ"mDefine a constant instead of duplicating this literal "startChat failed,please setLLMConfig before!" 4 times.(™ÓÓÝ8¥·ˆþÅ2
w w
java:S1192°"TDefine a constant instead of duplicating this literal "SparkChain failed: java:S1192¬"TDefine a constant instead of duplicating this literal "SparkChain failed:
" 3 times.(Τ‡Òÿÿÿÿÿ8¥·ˆþÅ2 " 3 times.(Τ‡Òÿÿÿÿÿ8¥·ˆþÅ2
n n
java:S1192Ø"KDefine a constant instead of duplicating this literal " { java:S1192Ô"KDefine a constant instead of duplicating this literal " {
" 4 times.(Ÿñ¼Ñÿÿÿÿÿ8¥·ˆþÅ2 " 4 times.(Ÿñ¼Ñÿÿÿÿÿ8¥·ˆþÅ2
q q
java:S1192«"NDefine a constant instead of duplicating this literal " java:S1192§"NDefine a constant instead of duplicating this literal "
输入: 输入:
" 3 times.(䩹Šúÿÿÿÿ8¥·ˆþÅ2 " 3 times.(䩹Šúÿÿÿÿ8¥·ˆþÅ2
m java:S117\"QRename this local variable to match the regular expression '^[a-z][a-zA-Z0-9]*$'.(Ýýî°8§·ˆþÅ2 m java:S117X"QRename this local variable to match the regular expression '^[a-z][a-zA-Z0-9]*$'.(Ýýî°8§·ˆþÅ2
r java:S117^"QRename this local variable to match the regular expression '^[a-z][a-zA-Z0-9]*$'.(‰ç»ìøÿÿÿÿ8§·ˆþÅ2 r java:S117Z"QRename this local variable to match the regular expression '^[a-z][a-zA-Z0-9]*$'.(‰ç»ìøÿÿÿÿ8§·ˆþÅ2
n java:S117"QRename this local variable to match the regular expression '^[a-z][a-zA-Z0-9]*$'.(õ£žÛ8§·ˆþÅ2 n java:S117ƒ"QRename this local variable to match the regular expression '^[a-z][a-zA-Z0-9]*$'.(õ£žÛ8§·ˆþÅ2
K K
java:S1604<EFBFBD>"(Make this anonymous inner class a lambda(˜<>ã¯þÿÿÿÿ8§·ˆþÅ2 java:S1604"(Make this anonymous inner class a lambda(˜<>ã¯þÿÿÿÿ8§·ˆþÅ2
K K
java:S1604¥"(Make this anonymous inner class a lambda(˜<>ã¯þÿÿÿÿ8§·ˆþÅ2 java:S1604¡"(Make this anonymous inner class a lambda(˜<>ã¯þÿÿÿÿ8§·ˆþÅ2
K K
java:S1604Â"(Make this anonymous inner class a lambda(˜<>ã¯þÿÿÿÿ8§·ˆþÅ2 java:S1604¾"(Make this anonymous inner class a lambda(˜<>ã¯þÿÿÿÿ8§·ˆþÅ2
K F
java:S1604´"(Make this anonymous inner class a lambda(˜<>ã¯þÿÿÿÿ8§·ˆþÅ2 java:S1604°"(Make this anonymous inner class a lambda(¡óº­8§·ˆþÅ2
K K
java:S1604ö"(Make this anonymous inner class a lambda(˜<>ã¯þÿÿÿÿ8§·ˆþÅ2 java:S1604ò"(Make this anonymous inner class a lambda(˜<>ã¯þÿÿÿÿ8§·ˆþÅ2
K K
java:S1604"(Make this anonymous inner class a lambda(˜<>ã¯þÿÿÿÿ8§·ˆþÅ2 java:S1604"(Make this anonymous inner class a lambda(˜<>ã¯þÿÿÿÿ8§·ˆþÅ2
F F
java:S1604£"(Make this anonymous inner class a lambda(—úÔñ8¨·ˆþÅ2 java:S1604Ÿ"(Make this anonymous inner class a lambda(—úÔñ8¨·ˆþÅ2
K K
java:S1604°"(Make this anonymous inner class a lambda(øŠ­žúÿÿÿÿ8¨·ˆþÅ2 java:S1604¬"(Make this anonymous inner class a lambda(øŠ­žúÿÿÿÿ8¨·ˆþÅ2
K K
java:S1604·"(Make this anonymous inner class a lambda(­«†‡ýÿÿÿÿ8¨·ˆþÅ2 java:S1604³"(Make this anonymous inner class a lambda(­«†‡ýÿÿÿÿ8¨·ˆþÅ2
F F
java:S1604Ù"(Make this anonymous inner class a lambda(ï‰ÂÝ8¨·ˆþÅ2 java:S1604Õ"(Make this anonymous inner class a lambda(ï‰ÂÝ8¨·ˆþÅ2
{ java:S120"ZRename this package name to match the regular expression '^[a-z_]+(\.[a-z_][a-z0-9_]*)*$'.(ÅÊ«Åùÿÿÿÿ8ª·ˆþÅ2 { java:S120"ZRename this package name to match the regular expression '^[a-z_]+(\.[a-z_][a-z0-9_]*)*$'.(ÅÊ«Åùÿÿÿÿ8ª·ˆþÅ2
t java:S116/"XRename this field "btn_startChat" to match the regular expression '^[a-z][a-zA-Z0-9]*$'.(žÿí¬8ä·ˆþÅ2 t java:S116+"XRename this field "btn_startChat" to match the regular expression '^[a-z][a-zA-Z0-9]*$'.(žÿí¬8ä·ˆþÅ2
s java:S116/"WRename this field "btn_stopChat" to match the regular expression '^[a-z][a-zA-Z0-9]*$'.(žÿí¬8ä·ˆþÅ2 s java:S116+"WRename this field "btn_stopChat" to match the regular expression '^[a-z][a-zA-Z0-9]*$'.(žÿí¬8ä·ˆþÅ2
G G
java:S1659/"*Declare "btn_stopChat" on a separate line.(žÿí¬8ì·ˆþÅ2 java:S1659+"*Declare "btn_stopChat" on a separate line.(žÿí¬8ì·ˆþÅ2
r r
java:S1450:"URemove the "isAuth" field and declare it as a local variable in the relevant methods.(ù8ì·ˆþÅ2 java:S14506"URemove the "isAuth" field and declare it as a local variable in the relevant methods.(ù8ì·ˆþÅ2
X java:S125("<This block of commented-out lines of code should be removed.(œùÒö8ï·ˆþÅ2 ] java:S1255"<This block of commented-out lines of code should be removed.(ß—ò²üÿÿÿÿ8¥—þþÅ2
] java:S1259"<This block of commented-out lines of code should be removed.(ß—ò²üÿÿÿÿ8¥—þþÅ2 o java:S100W"NRename this method name to match the regular expression '^[a-z][a-zA-Z0-9]*$'.(ŸÛ®Äûÿÿÿÿ8ô·ˆþÅ2
o java:S100["NRename this method name to match the regular expression '^[a-z][a-zA-Z0-9]*$'.(ŸÛ®Äûÿÿÿÿ8ô·ˆþÅ2 X java:S1259"<This block of commented-out lines of code should be removed.(®²þâ8õ·ˆþÅ2
X java:S125="<This block of commented-out lines of code should be removed.(®²þâ8õ·ˆþÅ2
G G
java:S1197]"*Move the array designators [] to the type.(¤šÐ•8ö·ˆþÅ2 java:S1197Y"*Move the array designators [] to the type.(¤šÐ•8ö·ˆþÅ2
L L
java:S1197^"*Move the array designators [] to the type.(‰ç»ìøÿÿÿÿ8÷·ˆþÅ2 java:S1197Z"*Move the array designators [] to the type.(‰ç»ìøÿÿÿÿ8÷·ˆþÅ2
N N
java:S1172Œ"+Remove this unused method parameter "text".(ªþŸ…øÿÿÿÿ8û·ˆþÅ2 java:S1172ˆ"+Remove this unused method parameter "text".(ªþŸ…øÿÿÿÿ8û·ˆþÅ2
^ java:S125<EFBFBD>"<This block of commented-out lines of code should be removed.(‚çíìùÿÿÿÿ8ü·ˆþÅ2 ^ java:S125Œ"<This block of commented-out lines of code should be removed.(‚çíìùÿÿÿÿ8ü·ˆþÅ2
Y java:S125Õ"<This block of commented-out lines of code should be removed.(½Þõž8¸ˆþÅ2 Y java:S125Ñ"<This block of commented-out lines of code should be removed.(½Þõž8¸ˆþÅ2
^ java:S125å"<This block of commented-out lines of code should be removed.(¡ÚÙžùÿÿÿÿ¸ˆþÅ2 ^ java:S125á"<This block of commented-out lines of code should be removed.(¡ÚÙžùÿÿÿÿ¸ˆþÅ2
^ java:S125ù"<This block of commented-out lines of code should be removed.(Áç–´üÿÿÿÿ¸ˆþÅ2 ^ java:S125õ"<This block of commented-out lines of code should be removed.(Áç–´üÿÿÿÿ¸ˆþÅ2
Y Y
java:S1854";Remove this useless assignment to local variable "results".(Ïê›ð8„¸ˆþÅ2 java:S1854";Remove this useless assignment to local variable "results".(Ïê›ð8„¸ˆþÅ2
J J
java:S1481",Remove this unused "results" local variable.(Ïê›ð8†¸ˆþÅ2 java:S1481",Remove this unused "results" local variable.(Ïê›ð8†¸ˆþÅ2
Y java:S125"<This block of commented-out lines of code should be removed.(æÏŒ¼¸ˆþÅ2 Y java:S125"<This block of commented-out lines of code should be removed.(æÏŒ¼¸ˆþÅ2
^ java:S125¦"<This block of commented-out lines of code should be removed.(¥Ð«ýÿÿÿÿÿ¸ˆþÅ2 ^ java:S125¢"<This block of commented-out lines of code should be removed.(¥Ð«ýÿÿÿÿÿ¸ˆþÅ2
F F
java:S1905Ô"(Remove this unnecessary cast to "float".(Ú¿§×8<>¸ˆþÅ2 java:S1905Ð"(Remove this unnecessary cast to "float".(Ú¿§×8<>¸ˆþÅ2
G G
java:S2140Ü")Use "java.util.Random.nextInt()" instead.(¼“òÕ8¸ˆþÅ2 java:S2140Ø")Use "java.util.Random.nextInt()" instead.(¼“òÕ8¸ˆþÅ2
O O
java:S10683"3Remove this unused "sessionFinished" private field.(üû—8“¸ˆþÅ2 java:S1068/"3Remove this unused "sessionFinished" private field.(üû—8“¸ˆþÅ2
G G
java:S1068:"*Remove this unused "isAuth" private field.(ù8“¸ˆþÅ2 java:S10686"*Remove this unused "isAuth" private field.(ù8“¸ˆþÅ2
O
java:S1144û"1Remove this unused private "getAndroidId" method.(ÏéÔ»8“¸ˆþÅ2
O O
java:S1144ÿ"1Remove this unused private "getAndroidId" method.(ÏéÔ»8“¸ˆþÅ2 java:S1144Ž"2Remove this unused private "startSyncChat" method.(¡îÞ/8“¸ˆþÅ2
P
java:S1144"2Remove this unused private "startSyncChat" method.(†€Ð«8“¸ˆþÅ2
T T
java:S1144Â"6Remove this unused private "startChatWithJson" method.(°‚Ó²8“¸ˆþÅ2 java:S1144¾"6Remove this unused private "startChatWithJson" method.(°‚Ó²8“¸ˆþÅ2
S S
java:S1144<EFBFBD>"5Remove this unused private "startChatWithQxq" method.(º³êÛ8“¸ˆþÅ2 java:S1144ý"5Remove this unused private "startChatWithQxq" method.(º³êÛ8“¸ˆþÅ2

@ -1,37 +1,34 @@
¨ ¯
java:S1192"Define a constant instead of duplicating this literal ",请ç¹å‡»ç½å<E28098>€https://www.xfyun.cn/document/error-codeæŸ¥è¯¢è§£å†³æ¹æ¡ˆ" 4 times.(ñÊ¡€ûÿÿÿÿ java:S1192<EFBFBD>"Define a constant instead of duplicating this literal ",请ç¹å‡»ç½å<E28098>€https://www.xfyun.cn/document/error-codeæŸ¥è¯¢è§£å†³æ¹æ¡ˆ" 4 times.(ñÊ¡€ûÿÿÿÿ8¡Òÿ¢Æ2
a h
java:S1192D"FDefine a constant instead of duplicating this literal "zh_cn" 3 times.(Ó±âüùÿÿÿÿ java:S1192@"FDefine a constant instead of duplicating this literal "zh_cn" 3 times.(Ó±âüùÿÿÿÿ8¢Òÿ¢Æ2
? F
java:S1604¾"(Make this anonymous inner class a lambda(똾 java:S1604º"(Make this anonymous inner class a lambda(똾Â8¢Òÿ¢Æ2
? F
java:S1604Ù"(Make this anonymous inner class a lambda(û<>îà java:S1604Õ"(Make this anonymous inner class a lambda(û<>îà8¢Òÿ¢Æ2
? F
java:S1604è"(Make this anonymous inner class a lambda(˜µÕò java:S1604ä"(Make this anonymous inner class a lambda(˜µÕò8¤Òÿ¢Æ2
g g
java:S2095š"IUse try-with-resources or close this "InputStream" in a "finally" clause.(ÊÕº´8¶¦­×Ã2 java:S2095"IUse try-with-resources or close this "InputStream" in a "finally" clause.(ÊÕº´8ßÒÿ¢Æ2
V java:S125"<This block of commented-out lines of code should be removed.(ÿ”‚…üÿÿÿÿ
Q java:S125"<This block of commented-out lines of code should be removed.(Èù ž
Q java:S125!"<This block of commented-out lines of code should be removed.(É룱
t t
java:S30080"RRename this field "Xparser" to match the regular expression '^[a-z][a-zA-Z0-9]*$'.(«œ<C2AB>ªøÿÿÿÿ8Äã<EFBFBD>Æ2 java:S3008,"RRename this field "Xparser" to match the regular expression '^[a-z][a-zA-Z0-9]*$'.(«œ<C2AB>ªøÿÿÿÿ8àÒÿ¢Æ2
d k
java:S30082"NRename this field "TAG" to match the regular expression '^[a-z][a-zA-Z0-9]*$'.(½ô<C2BD>· java:S3008."NRename this field "TAG" to match the regular expression '^[a-z][a-zA-Z0-9]*$'.(½ô<C2BD>·8àÒÿ¢Æ2
z <EFBFBD>
java:S1149I"_Replace the synchronized class "StringBuffer" by an unsynchronized one such as "StringBuilder".(‹—ÁÉþÿÿÿÿ java:S1149E"_Replace the synchronized class "StringBuffer" by an unsynchronized one such as "StringBuilder".(‹—ÁÉþÿÿÿÿ8åÒÿ¢Æ2
{ 
java:S1149¿"_Replace the synchronized class "StringBuffer" by an unsynchronized one such as "StringBuilder".(ÄÈŒíþÿÿÿÿ java:S1149»"_Replace the synchronized class "StringBuffer" by an unsynchronized one such as "StringBuilder".(ÄÈŒíþÿÿÿÿ8åÒÿ¢Æ2
P W
java:S1161L":Add the "@Override" annotation above this method signature(ßìê¯ java:S1161H":Add the "@Override" annotation above this method signature(ßìê¯8ëÒÿ¢Æ2
_ f
java:S3252^"DUse static access with "android.content.Context" for "MODE_PRIVATE".(”˜‹þýÿÿÿÿ java:S3252Z"DUse static access with "android.content.Context" for "MODE_PRIVATE".(”˜‹þýÿÿÿÿ8ìÒÿ¢Æ2
R java:S125¨"<This block of commented-out lines of code should be removed.(ªéˆë Y java:S125¤"<This block of commented-out lines of code should be removed.(ªéˆë8üÒÿ¢Æ2
J Q
java:S2864À"4Iterate over the "entrySet" instead of the "keySet".(Œêƒ0 java:S2864¼"4Iterate over the "entrySet" instead of the "keySet".(Œêƒ08ÿÒÿ¢Æ2
R java:S125ú"<This block of commented-out lines of code should be removed.(—Ü<E28094>± Y java:S125ö"<This block of commented-out lines of code should be removed.(—Ü<E28094>±8ƒÓÿ¢Æ2
X java:S125"<This block of commented-out lines of code should be removed.(ë<>ïT8Ö¦­×Ã2 X java:S125Ž"<This block of commented-out lines of code should be removed.(ë<>ïT8„Óÿ¢Æ2
M M
java:S10680"+Remove this unused "Xparser" private field.(«œ<C2AB>ªøÿÿÿÿ8üã<C3A3>Æ2 java:S1068,"+Remove this unused "Xparser" private field.(«œ<C2AB>ªøÿÿÿÿ8†Óÿ¢Æ2
E L
java:S1068E"/Remove this unused "selectedNum" private field.(Çüèç java:S1068A"/Remove this unused "selectedNum" private field.(Çüèç8‡Óÿ¢Æ2

@ -127,13 +127,13 @@ java:S1874
"1Remove this use of "getParent"; it is deprecated.(Ú¥öò8»ÇðÌÃ2 "1Remove this use of "getParent"; it is deprecated.(Ú¥öò8»ÇðÌÃ2
o o
java:S3776 "RRefactor this method to reduce its Cognitive Complexity from 18 to the 15 allowed.(ôŒùb8¾ÇðÌÃ2 java:S3776 "RRefactor this method to reduce its Cognitive Complexity from 18 to the 15 allowed.(ôŒùb8¾ÇðÌÃ2
N
java:S3398"0Move this method into "OnListItemClickListener".(‘ðð¡8ÎÇðÌÃ2
R R
java:S3398˜"/Move this method into "BackgroundQueryHandler".(—÷õŽüÿÿÿÿ8ÎÇðÌÃ2 java:S3398˜"/Move this method into "BackgroundQueryHandler".(—÷õŽüÿÿÿÿ8ÎÇðÌÃ2
C
java:S3398¾"%Move this method into "ModeCallback".(ãìîí8ÎÇðÌÃ2
H H
java:S3398¯ "%Move this method into "ModeCallback".(“ðÉçýÿÿÿÿ8ÎÇðÌÃ2 java:S3398¯ "%Move this method into "ModeCallback".(“ðÉçýÿÿÿÿ8ÎÇðÌÃ2
N C
java:S3398"0Move this method into "OnListItemClickListener".(‘ðð¡8ÎÇðÌÃ2 java:S3398¾"%Move this method into "ModeCallback".(ãìîí8ÎÇðÌÃ2
ä ä
java:S6541¯ "ÅA "Brain Method" was detected. Refactor it to reduce at least one of the following metrics: LOC from 118 to 64, Complexity from 21 to 14, Nesting Level from 3 to 2, Number of Variables from 9 to 6.(<28>ñ”Ò8ÓÇðÌÃ2 java:S6541¯ "ÅA "Brain Method" was detected. Refactor it to reduce at least one of the following metrics: LOC from 118 to 64, Complexity from 21 to 14, Nesting Level from 3 to 2, Number of Variables from 9 to 6.(<28>ñ”Ò8ÓÇðÌÃ2

@ -1,35 +1,34 @@
C C
java:S1604]"(Make this anonymous inner class a lambda(©îþþýÿÿÿÿ java:S1604\"(Make this anonymous inner class a lambda(©îþþýÿÿÿÿ
? ?
java:S1604´"(Make this anonymous inner class a lambda(û<>îà java:S1604³"(Make this anonymous inner class a lambda(û<>îà
D D
java:S1604Ë"(Make this anonymous inner class a lambda(Ñõ†³þÿÿÿÿ java:S1604Ê"(Make this anonymous inner class a lambda(Ñõ†³þÿÿÿÿ
f f
java:S1301a"KReplace this "switch" statement by "if" statements to increase readability.(ÿ«¬‹üÿÿÿÿ java:S1301`"KReplace this "switch" statement by "if" statements to increase readability.(ÿ«¬‹üÿÿÿÿ
g g
java:S1301®"KReplace this "switch" statement by "if" statements to increase readability.(¥çåöþÿÿÿÿ java:S1301­"KReplace this "switch" statement by "if" statements to increase readability.(¥çåöþÿÿÿÿ
e e
java:S2095æ"NUse try-with-resources or close this "RandomAccessFile" in a "finally" clause.(ŽÅí« java:S2095å"NUse try-with-resources or close this "RandomAccessFile" in a "finally" clause.(ŽÅí«
Q java:S125"<This block of commented-out lines of code should be removed.(†€·–
d d
java:S3008)"NRename this field "TAG" to match the regular expression '^[a-z][a-zA-Z0-9]*$'.(‰ÛØð java:S3008("NRename this field "TAG" to match the regular expression '^[a-z][a-zA-Z0-9]*$'.(‰ÛØð
P P
java:S1161B":Add the "@Override" annotation above this method signature(ßìê¯ java:S1161A":Add the "@Override" annotation above this method signature(ßìê¯
7 java:S131u""Add a default case to this switch.(ŽºÖ<C2BA> 7 java:S131t""Add a default case to this switch.(ŽºÖ<C2BA>
Q java:S899ƒ";Do something with the "boolean" value returned by "delete".(’ËÑŽ Q java:S899";Do something with the "boolean" value returned by "delete".(’ËÑŽ
e e
java:S4042ƒ"NUse "java.nio.file.Files#delete" here for better messages on error conditions.(’ËÑŽ java:S4042"NUse "java.nio.file.Files#delete" here for better messages on error conditions.(’ËÑŽ
W java:S125<EFBFBD>"<This block of commented-out lines of code should be removed.(¤¤Ã›ýÿÿÿÿ W java:S125Œ"<This block of commented-out lines of code should be removed.(¤¤Ã›ýÿÿÿÿ
i i
java:S3252<EFBFBD>"MUse static access with "android.text.Spanned" for "SPAN_EXCLUSIVE_EXCLUSIVE".(µé½Ìúÿÿÿÿ java:S3252"MUse static access with "android.text.Spanned" for "SPAN_EXCLUSIVE_EXCLUSIVE".(µé½Ìúÿÿÿÿ
2 2
java:S3626Š"Remove this redundant jump.(ûÁÝ… java:S3626"Remove this redundant jump.(ûÁÝ…
Q java:S125¸"<This block of commented-out lines of code should be removed.(Ù¬ÃX Q java:S125·"<This block of commented-out lines of code should be removed.(Ù¬ÃX
Q Q
java:S1854ä"5Remove this useless assignment to local variable "b".(Þ»ºšûÿÿÿÿ java:S1854ã"5Remove this useless assignment to local variable "b".(Þ»ºšûÿÿÿÿ
] java:S899ä"BDo something with the "boolean" value returned by "createNewFile".(Þ»ºšûÿÿÿÿ ] java:S899ã"BDo something with the "boolean" value returned by "createNewFile".(Þ»ºšûÿÿÿÿ
B B
java:S1481ä"&Remove this unused "b" local variable.(Þ»ºšûÿÿÿÿ java:S1481ã"&Remove this unused "b" local variable.(Þ»ºšûÿÿÿÿ
[ [
java:S3398á"?Move this method into the anonymous class declared at line 220.(ãçÕ¼ùÿÿÿÿ java:S3398à"?Move this method into the anonymous class declared at line 219.(ãçÕ¼ùÿÿÿÿ

@ -0,0 +1,5 @@
3
java:S2386"Make this member "protected".(炎<><E7828E>
D
java:S1874(".Remove this use of "<init>"; it is deprecated.(亢け

@ -105,10 +105,6 @@ e
5app/src/main/java/net/micode/notes/ui/NoteEditor.java,0\9\094368de2044c6ab99acf112a7653175dbb3da44 5app/src/main/java/net/micode/notes/ui/NoteEditor.java,0\9\094368de2044c6ab99acf112a7653175dbb3da44
u u
Eapp/src/main/java/net/micode/notes/SparkChain/GetFilePathFromUri.java,2\0\2073d32249b4bff24c42e9d7b04a347d382615a0 Eapp/src/main/java/net/micode/notes/SparkChain/GetFilePathFromUri.java,2\0\2073d32249b4bff24c42e9d7b04a347d382615a0
u
Eapp/src/main/java/net/micode/notes/SparkChain/ImageUnderstanding.java,5\b\5bfd681910e20ec79d2ba041609408f9f03fc71d
z
Japp/src/main/java/net/micode/notes/SparkChain/ImageGenerationActivity.java,0\3\03f5f7fda41d7a48eb5338374219fdf391c75da5
L L
app/libs/arm64-v8a/libmsc.so,a\8\a81417d919004caacc24efc8497d72015eabb6e9 app/libs/arm64-v8a/libmsc.so,a\8\a81417d919004caacc24efc8497d72015eabb6e9
r r
@ -134,4 +130,6 @@ l
u u
Eapp/src/main/java/net/micode/notes/ui/speech/setting/TtsSettings.java,9\6\96c90456ca9bf3852083f123979858f9da1e56cc Eapp/src/main/java/net/micode/notes/ui/speech/setting/TtsSettings.java,9\6\96c90456ca9bf3852083f123979858f9da1e56cc
n n
>app/src/main/java/net/micode/notes/ui/speech/util/FucUtil.java,7\3\731d5e4703d786ab336a747e7680203210a1bb79 >app/src/main/java/net/micode/notes/ui/speech/util/FucUtil.java,7\3\731d5e4703d786ab336a747e7680203210a1bb79
m
=app/src/main/java/net/micode/notes/ui/FoldersListAdapter.java,f\9\f9f49497f95afd327db7a7a512612aa1089003d4

@ -105,10 +105,6 @@ e
5app/src/main/java/net/micode/notes/ui/NoteEditor.java,0\9\094368de2044c6ab99acf112a7653175dbb3da44 5app/src/main/java/net/micode/notes/ui/NoteEditor.java,0\9\094368de2044c6ab99acf112a7653175dbb3da44
u u
Eapp/src/main/java/net/micode/notes/SparkChain/GetFilePathFromUri.java,2\0\2073d32249b4bff24c42e9d7b04a347d382615a0 Eapp/src/main/java/net/micode/notes/SparkChain/GetFilePathFromUri.java,2\0\2073d32249b4bff24c42e9d7b04a347d382615a0
u
Eapp/src/main/java/net/micode/notes/SparkChain/ImageUnderstanding.java,5\b\5bfd681910e20ec79d2ba041609408f9f03fc71d
z
Japp/src/main/java/net/micode/notes/SparkChain/ImageGenerationActivity.java,0\3\03f5f7fda41d7a48eb5338374219fdf391c75da5
L L
app/libs/arm64-v8a/libmsc.so,a\8\a81417d919004caacc24efc8497d72015eabb6e9 app/libs/arm64-v8a/libmsc.so,a\8\a81417d919004caacc24efc8497d72015eabb6e9
r r
@ -134,4 +130,6 @@ l
u u
Eapp/src/main/java/net/micode/notes/ui/speech/setting/TtsSettings.java,9\6\96c90456ca9bf3852083f123979858f9da1e56cc Eapp/src/main/java/net/micode/notes/ui/speech/setting/TtsSettings.java,9\6\96c90456ca9bf3852083f123979858f9da1e56cc
n n
>app/src/main/java/net/micode/notes/ui/speech/util/FucUtil.java,7\3\731d5e4703d786ab336a747e7680203210a1bb79 >app/src/main/java/net/micode/notes/ui/speech/util/FucUtil.java,7\3\731d5e4703d786ab336a747e7680203210a1bb79
m
=app/src/main/java/net/micode/notes/ui/FoldersListAdapter.java,f\9\f9f49497f95afd327db7a7a512612aa1089003d4

File diff suppressed because it is too large Load Diff

@ -1,6 +1,6 @@
<?xml version="1.0" encoding="UTF-8"?> <?xml version="1.0" encoding="UTF-8"?>
<module version="4"> <module version="4">
<component name="SonarLintModuleSettings"> <component name="SonarLintModuleSettings">
<option name="uniqueId" value="1fa51d2c-c1c0-4557-9a65-6a498ef7ed2e" /> <option name="uniqueId" value="0b1c2b24-6c0a-42e3-8f06-2934401b2208" />
</component> </component>
</module> </module>

@ -35,10 +35,6 @@ import com.iflytek.sparkchain.core.SparkChainConfig;
import net.micode.notes.R; import net.micode.notes.R;
import java.util.ArrayList; import java.util.ArrayList;
import java.util.List;
/*
import com.hjq.permissions.OnPermission;
import com.hjq.permissions.XXPermissions;*/
public class IflytexActivity extends AppCompatActivity { public class IflytexActivity extends AppCompatActivity {
@ -271,7 +267,7 @@ public class IflytexActivity extends AppCompatActivity {
llm.stop(); llm.stop();
} }
private void startSyncChat(){ private void startSyncChat(){//调试使用,在此保留
String question = "给我讲个笑话吧。"; String question = "给我讲个笑话吧。";
LLMOutput syncOutput = llm.run(question); LLMOutput syncOutput = llm.run(question);
if(syncOutput.getErrCode() == 0) { if(syncOutput.getErrCode() == 0) {
@ -299,13 +295,13 @@ public class IflytexActivity extends AppCompatActivity {
chatText.append("\n输入:\n " + usrInputText + "\n"); chatText.append("\n输入:\n " + usrInputText + "\n");
token++; token++;
int ret = llm.arun(usrInputText,token); int ret = llm.arun(usrInputText,token);//异步调用
if(ret != 0){ if(ret != 0){
Log.e(TAG,"SparkChain failed:\n" + ret); Log.e(TAG,"SparkChain failed:\n" + ret);
return; return;
} }
runOnUiThread(new Runnable() { runOnUiThread(new Runnable() {//在UI线程中更新UI
@Override @Override
public void run() { public void run() {
inputText.setText(""); inputText.setText("");
@ -464,7 +460,7 @@ public class IflytexActivity extends AppCompatActivity {
if (context == null) { if (context == null) {
return 0; return 0;
} }
final float scale = context.getResources().getDisplayMetrics().density; final float scale = context.getResources().getDisplayMetrics().density;//获取当前屏幕的密度
return (float) (dipValue * scale + 0.5f); return (float) (dipValue * scale + 0.5f);
} }

@ -1,27 +1,17 @@
package net.micode.notes.ui; package net.micode.notes.ui;
import android.Manifest;
import android.app.Activity; import android.app.Activity;
import android.content.DialogInterface;
import android.content.Intent; import android.content.Intent;
import android.content.SharedPreferences; import android.content.SharedPreferences;
import android.net.Uri;
import android.os.Bundle; import android.os.Bundle;
import android.view.View; import android.view.View;
import android.view.Window; import android.view.Window;
import android.widget.TextView; import android.widget.TextView;
import android.widget.Toast; import android.widget.Toast;
import androidx.activity.result.ActivityResultLauncher;
import androidx.activity.result.contract.ActivityResultContracts;
import androidx.appcompat.app.AlertDialog;
import androidx.appcompat.app.AppCompatActivity;
import androidx.appcompat.widget.AppCompatTextView;
import androidx.core.text.HtmlCompat;
import net.micode.notes.R; import net.micode.notes.R;
import net.micode.notes.ui.speech.setting.TtsSettings; import net.micode.notes.ui.speech.setting.TtsSettings;
//import com.iflytek.voicedemo.faceonline.OnlineFaceDemo;
public class IATActivity extends Activity { public class IATActivity extends Activity {

@ -1,6 +1,5 @@
package net.micode.notes.ui; package net.micode.notes.ui;
import android.annotation.SuppressLint;
import android.app.Activity; import android.app.Activity;
import android.app.AlertDialog; import android.app.AlertDialog;
import android.content.DialogInterface; import android.content.DialogInterface;
@ -26,11 +25,8 @@ import com.iflytek.cloud.SpeechRecognizer;
import com.iflytek.cloud.SpeechUtility; import com.iflytek.cloud.SpeechUtility;
import com.iflytek.cloud.ui.RecognizerDialog; import com.iflytek.cloud.ui.RecognizerDialog;
import com.iflytek.cloud.ui.RecognizerDialogListener; import com.iflytek.cloud.ui.RecognizerDialogListener;
//import com.iflytek.speech.setting.IatSettings;
import net.micode.notes.ui.speech.setting.IatSettings; import net.micode.notes.ui.speech.setting.IatSettings;
//import com.iflytek.speech.util.FucUtil;
import net.micode.notes.ui.speech.util.FucUtil; import net.micode.notes.ui.speech.util.FucUtil;
//import com.iflytek.speech.util.JsonParser;
import net.micode.notes.ui.speech.util.JsonParser; import net.micode.notes.ui.speech.util.JsonParser;
import net.micode.notes.ui.speech.util.XmlParser; import net.micode.notes.ui.speech.util.XmlParser;

@ -22,7 +22,6 @@ import android.app.AlarmManager;
import android.app.AlertDialog; import android.app.AlertDialog;
import android.app.PendingIntent; import android.app.PendingIntent;
import android.app.SearchManager; import android.app.SearchManager;
import android.content.ComponentName;
import android.location.Address; import android.location.Address;
import android.location.Geocoder; import android.location.Geocoder;
import android.location.Location; import android.location.Location;
@ -128,9 +127,9 @@ import retrofit2.converter.gson.GsonConverterFactory;
* @Description: 便便 * @Description: 便便
* 便 * 便
* 使便便 * 使便便
* @Author: * @Author: Xinqi Qin
* @CreateDate: * @CreateDate: 2024-12-20 8:44
* @UpdateUser: * @UpdateUser: Liren_Qiu
* @UpdateDate: 2024-01-03 8:44 * @UpdateDate: 2024-01-03 8:44
* @UpdateRemark: * @UpdateRemark:
* @Version: 1.0 * @Version: 1.0
@ -149,7 +148,7 @@ public class NoteEditActivity extends Activity implements OnClickListener,
public ImageView ivAlertIcon; // 提示图标图像视图 public ImageView ivAlertIcon; // 提示图标图像视图
public TextView tvAlertDate; // 显示提醒日期的文本视图 public TextView tvAlertDate; // 显示提醒日期的文本视图
public ImageView ibSetBgColor; // 设置背景颜色的图像视图 public ImageView ibSetBgColor; // 设置背景颜色的图像视图
private TextView tvNum;//qxq:在头部视图holder里声明文本视图用于统计字符编辑器edittext直接借用下面的mNoteeditor private TextView tvNum;// 在头部视图holder里声明文本视图用于统计字符编辑器edittext直接借用下面的mNoteeditor
} }
/** /**
@ -280,16 +279,14 @@ public class NoteEditActivity extends Activity implements OnClickListener,
Toast.makeText(this, "申请权限", Toast.LENGTH_LONG).show(); Toast.makeText(this, "申请权限", Toast.LENGTH_LONG).show();
try { try {
List<String> providers = locationManager.getProviders(true); List<String> providers = locationManager.getProviders(true);
if (providers.contains(LocationManager.NETWORK_PROVIDER)) { if (providers.contains(LocationManager.NETWORK_PROVIDER)) {//如果是Network
//如果是Network
locationProvider = LocationManager.NETWORK_PROVIDER; locationProvider = LocationManager.NETWORK_PROVIDER;
} else if (providers.contains(LocationManager.GPS_PROVIDER)) { } else if (providers.contains(LocationManager.GPS_PROVIDER)) {//如果是GPS
//如果是GPS
locationProvider = LocationManager.GPS_PROVIDER; locationProvider = LocationManager.GPS_PROVIDER;
} }
Location location = locationManager.getLastKnownLocation(locationProvider); Location location = locationManager.getLastKnownLocation(locationProvider);
if (location != null) { if (location != null) {//如果不能正常从LocationProvider中获取位置则复用上次位置
Toast.makeText(this, location.getLongitude() + " " + Toast.makeText(this, location.getLongitude() + " " +
location.getLatitude() + " ", Toast.LENGTH_SHORT).show(); location.getLatitude() + " ", Toast.LENGTH_SHORT).show();
Log.v("TAG", "获取上次的位置-经纬度:" + location.getLongitude() + " " + location.getLatitude()); Log.v("TAG", "获取上次的位置-经纬度:" + location.getLongitude() + " " + location.getLatitude());

@ -36,10 +36,6 @@ import android.view.MenuItem.OnMenuItemClickListener;
import android.view.MotionEvent; import android.view.MotionEvent;
import android.view.LayoutInflater; import android.view.LayoutInflater;
import android.view.View; import android.view.View;
import android.view.View.OnClickListener;
import android.view.ViewGroup.LayoutParams;
import android.view.WindowManager;
//import android.support.v7.widget.AppCompatEditText;
import android.graphics.Color; import android.graphics.Color;
import android.graphics.Typeface; import android.graphics.Typeface;
import android.graphics.drawable.ColorDrawable; import android.graphics.drawable.ColorDrawable;

@ -27,7 +27,6 @@ import com.iflytek.cloud.SpeechEvent;
import com.iflytek.cloud.SpeechSynthesizer; import com.iflytek.cloud.SpeechSynthesizer;
import com.iflytek.cloud.SpeechUtility; import com.iflytek.cloud.SpeechUtility;
import com.iflytek.cloud.SynthesizerListener; import com.iflytek.cloud.SynthesizerListener;
//import com.iflytek.speech.setting.TtsSettings;
import net.micode.notes.ui.speech.setting.TtsSettings; import net.micode.notes.ui.speech.setting.TtsSettings;
import net.micode.notes.R; import net.micode.notes.R;

@ -17,12 +17,12 @@ public class MD5Utils {
try { try {
MessageDigest md5 = MessageDigest.getInstance("MD5"); MessageDigest md5 = MessageDigest.getInstance("MD5");
md5.update(info.getBytes("utf-8"));//设置编码格式 md5.update(info.getBytes("utf-8"));//设置编码格式
byte[] encryption = md5.digest(); byte[] encryption = md5.digest();//加密所需的字节数组
StringBuffer stringBuffer = new StringBuffer(); StringBuffer stringBuffer = new StringBuffer();
for (int i = 0; i < encryption.length; i++) { for (int i = 0; i < encryption.length; i++) {
if (Integer.toHexString(0xff & encryption[i]).length() == 1) { if (Integer.toHexString(0xff & encryption[i]).length() == 1) {//如果为1位前面补0
stringBuffer.append("0").append(Integer.toHexString(0xff & encryption[i])); stringBuffer.append("0").append(Integer.toHexString(0xff & encryption[i]));
} else { } else {//如果为2位直接转换
stringBuffer.append(Integer.toHexString(0xff & encryption[i])); stringBuffer.append(Integer.toHexString(0xff & encryption[i]));
} }
} }

Loading…
Cancel
Save