【预发布】桌面上的信息面板

这不是一篇传统的产品介绍,而是从开发角度去和用户讲述。我会讲很多细节上的考量,很絮叨,也会回避许多专业名词,用最通俗的语言去传达其中的思考。

这是 一个新想法,开始流水账……(33/n) 这篇内容的最终产品,还没成型,只是预发布。

TL;DR

我是老鼠,请我喝咖啡吧,就酱! 老鼠爱发电

这是啥

正如标题,这是一个数据面板,用来显示各种信息。放在桌面上,而这里的桌面有两重含义——办公桌(电脑桌)的桌面,和电脑桌面。

但这样讲一点都不直观,上截图(很粗糙):

数据面板

背景是定时更换的随机图片,第一个白色背景的是时钟,蓝色的是我在 B 站的粉丝数,红色的是我在 B 站的未读消息数,下面两个黄色的是 Slowly 的信息,第一个是寄送中的邮件,第二个是已经寄达但尚未阅读的数量。

这些显示信息的小挂件(小工具,小组件,随便叫什么吧)还在制作中,后面会有各种常见的,实用的……不过都得慢慢来。

桌面上

我有一些旧设备,啊啊,很老了,这几年一直买不起新的,所以……咖啡……你懂的

一代的 Kindle PaperWhite,然后用来显示各种信息,摆在桌面上。像这样:

其中没有新通知的就不显示,所以看起来东西很少,其实包括这个论坛在内的一些通知都被我整合进去了。所以我在这个论坛的响应速度也比较快。

但是有点问题,我的路由器是晚上定时重启的,然后 Kindle 断网后会提示连接网络,每天得确认一次,甚至确认后可能还连不上。

然后我还有一个 iPad(可能是 1s?我也闹不清楚),屏幕挺大的,颜色挺好的,能用,但是也没多少软件支持了,然后也卡,不过用它显示信息的话,显然比 Kindle 好看。

我老妈有个小平板,用的不多,她的时钟坏了,看时间稍微有点不方便(不过有手环)买个说得过去的时钟怎么也得好几十,有点小贵。

我的电脑用的是壁纸引擎(Wallpaper Engine),这玩意儿可以把网页设置为桌面,我自然会把它的功能发挥一下,然后就成了这样(这是以前的,新工具还没应用上):

桌面分区,随机壁纸,时间,日期,待办列表……是不是和上面的有点类似的味道

反正我就把这些需求融合到了一起,得出了现在的结果,目前用 iPad 摆在桌面上显示,感觉还不错。

也想要

目前还真没法拿出来给大家用,所以只能做预发布。

主要问题是发布的形式和数据格式都没确定好,次要问题是我的需求不等于你们的需求,这里面还有许多适配的问题。

不过,如果你很感兴趣,觉得自己需要,可以支持一下小老鼠, 老鼠爱发电,这样他可能咕咕咕的快一点。

替代品

那个什么什么和你这个很像啊!

嗯,非常推荐去试试这个 【自荐】iTab,一个让你不受广告干扰的个性化卡片式起始页插件

这又不是什么竞争关系,定位上细微的差别就会导致很多考量上的不同。而且我可以很确定,让我打磨一年,我这个作品也达不到 iTab 的功能和精细度。

东西不如人,要价比人高。小老鼠明确的自我定位。

聊天呀

会有什么呢

  • 时钟(多种样式)
  • 日历,也会有几种
  • 倒数日,虽然我自己真没啥用
  • 时光进度,这东西我一年写一个,不出意外也会加上
  • 天气预报,这个我有用,但是搞起来有点麻烦,大概率会弄
  • 各种我能想到的,还觉得有趣的东西
  • 用户建议的,我又能做的出来的

啥时候发布

不好说,有些问题挺挠头的,我简单讲讲。

要展示信息,就要获取信息。想展示 B 站粉丝数,就得去跟 B 站问:“内个,@稻米鼠 的粉丝数是多少啊?”B 站回答:“你谁啊?我凭啥告诉你啊!”

这就需要一个身份的认证,当然,你会觉得查询粉丝数这种非敏感数据不应该需要验证身份,但是像未读消息数肯定是得认证的。这个问题很麻烦,虽然专业上讲把 cookies 复制过去就行了,但对小白用户多少有点门槛。

但上面的还不是大问题,前端还有一个很烦人的跨域问题。简单说就是一个网页只能拿到同域名的数据(这个描述很不严谨,但是小白可以先这样理解)。显然我这个网页不会和 B 站同域名,B 站说:“你跟我都不是一个单位的,凭啥要我们数据啊?!”这就很令人尴尬。

但是大家知道,有啥事儿自己办不了,可以找一些二道贩子代办,效率高,效果好。这事儿咱也可以整个二道贩子(代理服务),所以我自己搭建了一个,讲真的没啥技术含量,但让不熟悉的小白安装确实有点……毕竟得三四句命令呢。

然后目前无论是网页中小工具还是这个二道贩子,都是用的 json 文件书写配置,算不上小白友好,虽然我就打算这么滴了。不过我就是容易考虑过度,导致工具的可配置性很高(下面讲),所以我现在一边开发一边写文档,我自己都得看着文档配置,要不然我记不住都有哪些可配置的项目。

等我把这些细节都考虑好了,大概就可以发布了。

你提供个服务算了呗

“搭建二道贩子那么麻烦,你为小白考虑一下,直接提供一个服务,岂不美滋滋?”

  • 服务器,贵
  • 被攻击,烦

但这还不是主要的。如果保障足够的灵活度,就有非常大被滥用的风险。

还有一些 API 是有请求次数限制的,如果大家都用同一个,就是共用一个额度,那就很难受了。

比如某天气服务给每个人的免费额度是 1000次/天,如果自己用,那么从早晨 6 点到晚上 10 点,一分钟查询一次,一共是 960 次。基本上可以看作是实时更新了,如果 1.5 分钟更新一次,那就可以 24 小时都自动更新。可以说这个额度提供的非常厚道了。但如果大家共用的话……就算一小时更新一次,也只能供 40 个人使用,就……

当然,解决的方法是有的,但终究,服务在自己手上是最稳定和踏实的。

配置和灵活度

JSON 倒也不难写,讨厌的是这东西不支持注释,并且格式要求非常严格。有点烦人啊!不过前期并没有考虑更简单的设置方式,不是做不到,而是我更想把我有限的精力放在制作更多小工具上。

而因为灵活度高,使得配置起来显得更加复杂。我讲一下开始展示的那张效果图的配置你就懂了。

全是组件

自动更换的随机背景图片其实也是个小组件,只不过被设置了 beBackground 属性。换一个方法表达,你可以把任何组件设置为背景。

“那可以用这个方法把粉丝数全屏显示”,你很聪明,不过不用那么麻烦,如果给组件设置上 canBeFullscreen 属性,那么在点击它的时候就会全屏显示,而再次点击则恢复。

如果你只是想一直显示粉丝数,也可以直接显示这个组件,这样更节省性能。我就在开发期间很多天都只显示随机图片组件,很意外的,偶尔看一眼带来了许多好心情。

样式可选,可设定

组件的背景卡片有多种样式可以选择,也可以自己设定背景、背景模糊程度、边框、圆角。而且可以全局设定,也可以单个指定。效果展示中的几个背景色就是这样的。

位置自由

组件定位用的是 Grid 方法,就是画上网格,然后通过说明元素上下左右所对应的网格来定位。网格大小可以自己设定(影响定位的精细度)。

然后可以重叠,按照配置的先后顺序,后面的组件可以覆盖前面的组件,比如可以用一个随机图片组件作为另一个组件的背景(将两个组件设置为完全重合的位置)。也可以利用这种方法实现分区,类似我前面展示的桌面。还可以用这种方法给组件添加标题……总之很多玩法。

状态可视

如果你看的仔细,会发现那几个显示未读消息的组件背景是透明的。当来消息时,它们会切换为指定状态/背景来突出显示。

状态也可以以角标、圆点等形式显示,并且可以以进度条形式显示。

几个为什么

为啥一直显示

Kindle 做的通知中心是无消息不显示的,而这次的通知是无消息也一直在那里显示 0 的。

这样可以不加描述,只靠背景颜色和位置来说明这是什么,这样更简洁,文字更大。

而且,这个工具的定位是摆在桌面上展示,而不是频繁交互,所以,远远的扫一眼,可以快速获取信息是一个优先思考的点,目前的设计应该是可以满足这个需求的。同样是这个原因,工具的交互量会尽可能降低,也没有动画效果。同理,可视化配置也不太想加入,毕竟我的 iPad 反应那么慢,在上面可视化配置远没我我自己书写 JSON 来的畅快。

能加入xxxx的粉丝数/未读消息数显示吗

能也不能。能是指在技术上基本都做的到。

但是,很多网站并没有很好的 API,这可能需要比较复杂的适配。即便有 API,可能在身份认证上需要复杂的计算(比如爱发电),可能获得的数据需要进一步处理才能使用(比如本论坛),这样就必须进行特别的适配,而无法用通用方法来解决。

所以,看需求人数,看制作难度,要综合考虑


就先写这么多,回头可能再补充一些,饿了,溜了……

正式发布会另外发帖,因为会有大量配置说明。

来这里为老鼠的开发加速哦—— 老鼠爱发电

2 个赞

加入了本论坛和爱发电的数据。明天再打磨一下流程,加入通知推送功能,基本就可以替代掉我的 Kindle 了。

取代了 Kindle,但考虑了一下没加消息推送功能。毕竟这次主要业务逻辑都在前端,也就是多个设备打开同一页面的话可能产生重复推送,虽然大概也不会有打开重复页面的需求,配置都是针对设备的。不过对于推送目前也没很强烈的需要,就先这样,后面再看吧。

下面要弄的是时间和日期部分的组件。

1 个赞

我的pw 升级到最新版了. 发现无法关闭屏保啊.

青春版,咪咕版啥的直接弃疗吧

其他的在搜索里输入 ~ds 并搜索,然后屏保就关了,想恢复只能重启

亚马逊原版, 但是~ds无效

那就不懂了,Kindle 在这方面其实挺鸡肋的,浏览器太弱了,cpu 和刷新速度也就是勉强能用。

iPad 的问题则是亮度没法自动调节,我开自动好像也没啥效果,晚上有点亮

没法自动调节???我这个可以啊,而且挺智能。你会不会是正好放在某个光源下面太亮了之类的

以下是我浏览器的首页,供参考,可以点链接打开本地文件或链接。
下方的网页链接是excel数据生成的。

提个建议:
是不是可以考虑多做些链接,你点一下链接,本地电脑上就可以打开文件了或实现特定功能了。

各种都测试了,不是完全不能,是非常不灵敏,大概就只有重新点亮屏幕并且较大亮度差两个条件同时存在才有效。可能是因为老设备。

所有组件都支持自由链接,即点击组件触发对应链接。当然也可以在组件中显示多个链接。后续会有对 RSS 的支持,这样就可以轻松实现各种热门新闻之类的功能了。

不过得慢慢来,前期是设定各种规则,很多地方得反复推敲,很麻烦,还看不到多少成果。后期增加组件数量倒是比较容易的。

然后,这个虽然完全可以作为浏览器首页使用,但是侧重方向是几乎无交互的场景,所以比如搜索框之类的功能就不打算做。链接虽然支持,但主要是为了更好的组织这些小工具。

可能是因为设备太老了

做发布准备,今天在写文档,嗷~