微信讀書助手迎來史詩級增強

来源:https://www.cnblogs.com/evesama/p/18167231
-Advertisement-
Play Games

大家好,我前夕.最近,我分享了個人開發的微信讀書網頁插件,這個小項目意外收穫了眾多用戶的喜愛. 這讓我意識到技術作品能跨越專業界限,幫助到有需要的人.受此激勵,我決定對插件進行全面重構與優化 ...


背景

20天前, 發佈了一篇文章講述我自己寫的瀏覽器插件, 幫助自己在閱讀微信讀書網頁端的時候解放雙手的故事. 主要核心點就是自動閱讀. 本次發佈做了很多更新, 先睹為快!

Apr-28-2024 22-14-16

當時我就是寫著玩的, 一個非常小眾場景的小眾需求, 卻沒有想到使用的人還挺多的. 期間有2個人讓我印象非常深刻.

這個世界不只有程式員

路人甲

一個類似花開富貴頭像的老哥+了我好友, 說是無法安裝插件. 於是就有了以下對話.

image-20240428204506467

到這我真愣住了. 這是啥意思? 讓我寫個微信讀書app嗎? 於是我就追問

image-20240428204627508

原來他不懂技術啊. 我以為是同行呢. 隨後我就遇到了第二個路人

路人乙

我發佈插件沒幾天就有人到了項目倉庫給我提issue

image-20240428204800924

都會提issue了, 這總是同行了吧?

image-20240428205023429

居然又不是. 我才意識到, 我隨手寫的插件居然能幫助到很多外行. 說實話, 這時候我有點成就感了. 我相信大家一定經歷過這個心理狀態, 就是用自己的技術幫別人解決了很剛需的痛點.

大刀闊斧重構

既然那麼久多需要這款插件, 那我可得好好打磨打磨了.

從龍珠換成高科技的機器人

Before

Apr-28-2024 20-58-05

之前是一顆龍珠, 滑鼠hover會亮一下. 這裡用龍珠沒有任何含義, 單純實在不知道該放什麼.

After

Apr-28-2024 20-59-22

這次我換成了科技感十足的機器人, 更有'助手'的感覺.

枚舉像素替換為百分比調整

Before

image-20240428210036039

對於頁面寬度設置, 枚舉了幾個常用的尺寸. 而這種方式有個弊端, 就是在大顯示器上, 2000px也許是最大值了, 而對於筆記本尺寸2000px則可能出現了滾軸.

After

image-20240428210203099

百分比的設置更適合不同的顯示器設備. 當你設置為百分百時, 任意尺寸的設備都是滿屏的體驗.

適配雙欄

這個就沒有Before了, 因為我開發的時候還沒有這玩意. 前不久官方纔推出的雙欄模式

image-20240428210332769

所謂雙欄, 則是頁面不再以滾動的方式閱讀, 而是和紙質書籍一樣翻頁閱讀. 那麼就不存在自動閱讀的場景了, 只有翻頁. 為此我做了兩件事情.

  • 雙欄模式也支持設置屏占比. 也就是百分比的設置也對雙欄模式生效.
  • 翻頁不只是方向鍵可用, 滾軸、wasd都可使用.

image-20240428210738707

修複海量bug

因個人水平和精力有限, 無法覆蓋所有測試場景. 比如在有些書籍下, 滾軸無法使用等嚴重問題. 這些問題在這次大重構中都得到了充分的驗證與修複. 如果還有什麼問題, 歡迎留言或者聯繫我.

在商店輸入"微信讀書助手"關鍵詞, 能查到一堆差不多logo的

image-20240428221805193

image-20240428221813301

因為這就是微信讀書官方的logo. 本來也沒啥, 但是當各個插件都開始使用這個logo的時候, 就有點真假美猴王的味道了.

image-20240428211714779

我選擇用AI生成了一個類似的logo, 插件名字上也帶上了我自己的標識.

上架更多商店

在一開始我只上架了火狐和谷歌. 谷歌不多說, 標配產品. 而火狐並不是因為有多好用, 而是我這麼多年一直習慣除了開發以外的場景都用火狐. 其他瀏覽器商店, 我壓根就沒考慮.

而普通人, 用chrome的比例其實並不高, 360、edge、safari等, 市占率並不低. 因為普通人並不知道什麼叫瀏覽器相容, 只知道電腦里有啥瀏覽器就用啥. 我的這款產品並不是針對程式員的, 為了幫助到更多的人, 我開始上架360、edge等. 但是不得不說, 審核是真的慢, 不同的廠商有不同的慢法.

火狐瀏覽器

每個版本我都會上架. 但是都0.0.8了, 現在上架的版本中最新版卻是0.0.4

image-20240428212315309

360瀏覽器

審核中, 一個版本也沒能上線

image-20240428212524902

Edge瀏覽器

審核中, 也是一個版本都沒能上線

image-20240428212616345

谷歌瀏覽器

還真別說, 谷歌就是谷歌, 審核的真挺快的.

image-20240428212721652


非常棘手的bug

在之前的版本中存在一個非常複雜的bug, 在極個別情況下, 滾動滾軸時頁面反覆跳躍. 這個bug的根本原因是微信讀書存在一個特殊的場景, 在後續我會專門開篇講述這個bug的前因後果以及為什麼無法修複.

Apr-29-2024 15-01-08

商店地址

倉庫地址: https://github.com/Eve-Sama/weread-web-extension


我是前夕, 專註於前端和成長. 公眾號: 前夕小課堂

image-20240403101717261

轉載需註明出處


您的分享是我們最大的動力!

-Advertisement-
Play Games
更多相關文章
  • 1.什麼是sysdate 在Oracle中sysdate是一個函數,可直接調用sysdate,返回運行資料庫的操作系統的當前日期時間。註意:返回的日期時間值的格式取決於NLS_DATE_FORMAT參數的值。 sysdate的單位是天。 2.sysdate用法舉例 2.1sysdate sysdat ...
  • 經常有小伙伴和我咨詢大數據怎麼學,我覺得有必要寫一下關於大數據開發的具體方向,下次就不用苦哈哈的打字回覆了。直接回覆文章。 1.大數據崗位劃分 我們通常說的大數據開發主要分為三大方向: 1.1數據平臺開發工程師 主要從事後端開發,結合Hadoop,flink,spark等做二次開發,基於底層框架開發 ...
  • SeaTunnel提供了一種運行Zeta引擎(cluster-mode)的方法,可以讓Kubernetes在本地運行Zeta引擎,實現更高效的應用程式部署和管理。在本文中,我們將探索SeaTunnel k8s運行zeta引擎(cluster-mode模式)的更多信息,瞭解如何更好地利用Zeta引擎的 ...
  • 隨著大數據技術的快速發展,很多企業開始將Flink引入到生產環境中,以滿足日益複雜的數據處理需求。而作為一款企業級的數據調度平臺,Apache DolphinScheduler也跟上了時代步伐,推出了對Flink任務類型的支持。 Flink是一個開源的分散式流處理框架,具有高吞吐量、低延遲和準確性等 ...
  • 記錄一個HTML頁面關於高分屏的踩到的坑。 所謂高分屏,就是在同樣大小的屏幕面積上顯示更多的像素點,這樣可以呈現更好的可視效果的屏幕。例如,我的筆記本是15.6寸,理論上它的屏幕解析度應該是1920 x 1080像素,但實際上我的筆記本屏幕解析度確實2560 x 1440像素,也就是俗稱的2K屏。這 ...
  • 主題搗鼓日記 sakura版本(YYDS) 主要框架都沒怎麼動,功能挺完整的。但是如果要DIY,我建議還是得自己把代碼捋一遍,不然從哪改起都不知道,註釋有點用但不全。 搗鼓了兩天兩夜,還是有很多細節沒改好,main.js翻了四五遍,看評論區發現諸多細節還要改CSS文件,太難了。。前端都忘得差不多了, ...
  • 一、介紹 Promise,譯為承諾,是非同步編程的一種解決方案,比傳統的解決方案(回調函數)更加合理和更加強大 在以往我們如果處理多層非同步操作,我們往往會像下麵那樣編寫我們的代碼 doSomething(function(result) { doSomethingElse(result, functi ...
  • 寫在前面 tips:點贊 + 收藏 = 學會! 本文包含radash中數組相關的所有方法說明 + 使用示例 + 思維導圖查看 這邊會整理出一份數組相關方法的使用大綱(不含源碼解析),方便大家查閱使用; 作者會按照大類進行整理分享,本次也會同步給出Array所有方法的思維導圖; 所有方法整理完畢後,作 ...
一周排行
    -Advertisement-
    Play Games
  • .Net8.0 Blazor Hybird 桌面端 (WPF/Winform) 實測可以完整運行在 win7sp1/win10/win11. 如果用其他工具打包,還可以運行在mac/linux下, 傳送門BlazorHybrid 發佈為無依賴包方式 安裝 WebView2Runtime 1.57 M ...
  • 目錄前言PostgreSql安裝測試額外Nuget安裝Person.cs模擬運行Navicate連postgresql解決方案Garnet為什麼要選擇Garnet而不是RedisRedis不再開源Windows版的Redis是由微軟維護的Windows Redis版本老舊,後續可能不再更新Garne ...
  • C#TMS系統代碼-聯表報表學習 領導被裁了之後很快就有人上任了,幾乎是無縫銜接,很難讓我不想到這早就決定好了。我的職責沒有任何變化。感受下來這個系統封裝程度很高,我只要會調用方法就行。這個系統交付之後不會有太多問題,更多應該是做小需求,有大的開發任務應該也是第二期的事,嗯?怎麼感覺我變成運維了?而 ...
  • 我在隨筆《EAV模型(實體-屬性-值)的設計和低代碼的處理方案(1)》中介紹了一些基本的EAV模型設計知識和基於Winform場景下低代碼(或者說無代碼)的一些實現思路,在本篇隨筆中,我們來分析一下這種針對通用業務,且只需定義就能構建業務模塊存儲和界面的解決方案,其中的數據查詢處理的操作。 ...
  • 對某個遠程伺服器啟用和設置NTP服務(Windows系統) 打開註冊表 HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Services\W32Time\TimeProviders\NtpServer 將 Enabled 的值設置為 1,這將啟用NTP伺服器功 ...
  • title: Django信號與擴展:深入理解與實踐 date: 2024/5/15 22:40:52 updated: 2024/5/15 22:40:52 categories: 後端開發 tags: Django 信號 松耦合 觀察者 擴展 安全 性能 第一部分:Django信號基礎 Djan ...
  • 使用xadmin2遇到的問題&解決 環境配置: 使用的模塊版本: 關聯的包 Django 3.2.15 mysqlclient 2.2.4 xadmin 2.0.1 django-crispy-forms >= 1.6.0 django-import-export >= 0.5.1 django-r ...
  • 今天我打算整點兒不一樣的內容,通過之前學習的TransformerMap和LazyMap鏈,想搞點不一樣的,所以我關註了另外一條鏈DefaultedMap鏈,主要調用鏈為: 調用鏈詳細描述: ObjectInputStream.readObject() DefaultedMap.readObject ...
  • 後端應用級開發者該如何擁抱 AI GC?就是在這樣的一個大的浪潮下,我們的傳統的應用級開發者。我們該如何選擇職業或者是如何去快速轉型,跟上這樣的一個行業的一個浪潮? 0 AI金字塔模型 越往上它的整個難度就是職業機會也好,或者說是整個的這個運作也好,它的難度會越大,然後越往下機會就會越多,所以這是一 ...
  • @Autowired是Spring框架提供的註解,@Resource是Java EE 5規範提供的註解。 @Autowired預設按照類型自動裝配,而@Resource預設按照名稱自動裝配。 @Autowired支持@Qualifier註解來指定裝配哪一個具有相同類型的bean,而@Resourc... ...