Kujou Yuko的文章

End of 2022

0 条评论 日常 原创 Kujou Yuko

转眼间,名为 2022 的列车即将驶入终点站,这也意味着我的本科生涯已经过去了一大半了。


End of 2021

2 条评论 日常 原创 Kujou Yuko

本来以为上了大学后都将是平平常常的,但仔细想想今年还是发生了很多事情呢。


关于 Android 12 的 vendor freeze,我的理解是这样的

1 条评论 Android 原创 Kujou Yuko
  1. 这个特性高通是从 SMx350 及以后的平台才开始实施,已经和秋大确认过SMx150(SMx250 仍存疑)及之前的平台不会实施(也就是说,老机子不要想太多)。之所以说 SMx150 及之前的不会有,是因为此特性高通是在对 SDM845+ 的 Android 12 tag(LA.UM 10/QSSI 12.0)中才加入的,目前绝大多数厂商已经不再对其维护 Android 12,无缘该特性。
  2. 这个的意思是,odm、vendor 分区的绝大多数 blobs 和内核出厂后基本保持不变(因为芯片厂给的 BSP 代码不会有太大的更新),后续更新将采取只更新 system 分区的内容来升级 Android 版本。
  3. 这应该算是一件好事(至少在我看来),使得厂家能够减轻升级 Android 版本时的压力,第三方 ROM 维护者在适配第三方系统时变得更为简单。
  4. 理论上其他厂商也会遵从此策略(毕竟这是 Google 所提倡的)。

个人观点,如有错误或补充欢迎在评论区交流。

附:vendor freeze 的样例


超星学习通刷章节学习次数

0 条评论 日常 转载 Kujou Yuko

随便打开课程某一章节学习页面,按下 F12 并在弹出的开发者工具中选择 Console 选项卡,然后在控制台中粘贴下面的脚本并执行:

var timeout = 35; // 设定刷新的时间间隔,单位为秒
var current = location.href; // 获取当前的 URL

if (timeout > 0)  {
    setTimeout('reload()', 1000 * timeout); // 时间间隔大于 0,timeout 秒之后执行 reload 函数
} else {
    location.replace(current); // 时间间隔不大于 0,仅刷新一次
}

function reload() {
    setTimeout('reload()', 1000 * timeout); // timeout 秒后执行 reload 函数,实现无限循环刷新

    /*
     * 下面两行代码的格式化后的内容为:
     * <frameset cols='*'>
     *   <frame src='当前地址栏的 URL' />
     * </frameset>
     */
    var fr4me = '<frameset cols=\'*\'>\n<frame src=\'' + current + '\' />';
    fr4me += '</frameset>';

    with (document) {
        write(fr4me); // 引用 document 对象,调用 write 方法写入框架,打开新窗口
        void(close()); // 关闭上面的窗口
    };
}

注:刷新时间尽量设置在 30 ~ 60 秒,否则有可能不计算学习次数。

转载自知乎回答:超新星,学习通访问次数怎么刷才有用?,本文已对回答中的脚本做了格式化处理。


记录一下几个常见的排序算法(纯手写)

0 条评论 算法 原创 Kujou Yuko

虽然使用 STL 函数来进行排序会更方便,但还是想记录一下。