Flutter 竟能實現 macOS 神器 Alfred 的部分功能,併成功上架 Apple Store?

語言: CN / TW / HK

🎉🎉🎉 為慶祝 iSearchBar 上架,以及感謝各位讀者朋友的支持,給各位掘友準備了一波福利:20 個 iSearchBarPro 版本兑換碼。領取方式在文章末尾。iSearchBar 下載>>

自從使用 macOS 系統以來,Alfred 基本是每台 Mac 電腦必裝的應用。至於 Alfred 在蘋果電腦上的知名度,應該是無人不知無人不曉吧?

相信很多人和我一樣,最開始用 Alfred 的時候,會搜很多網上的教程,配置了很多 workflow。那種感覺怎麼説呢?就好比給自己的小破車裝了一個賽車發動機一樣。每調出一次 Alfred 的界面,心裏就會暗喜又提高了多少效率,節省了多少時間。

但是,當最初那股子新鮮勁兒過去以後,慢慢發現雖然每天都會用到 Alfred,但幾乎用不了幾次 workflow,甚至有時候,都想不起來配置有哪些 workflow 了,那種感覺怎麼説呢?就好比自己的賽車開在限速 40 的馬路上一樣。每調出一次 Alfred 的界面,心裏就會琢磨剛剛我切換系統深色模式,為什麼沒用 workflow 呢?下次一定要用了啊!又浪費了幾秒的時間。

一、想法

現在我每天使用 Alfred 的場景,幾乎就只剩下 Web Search 這一個功能了。其他 99% 的功能,我幾乎都用不上,或者壓根沒想起來用(無奈攤手.jpg)。

Alfred 設置界面

打開 Alfred 豐富的功能設置界面,總覺得自己這是在浪費這麼好的東西。久而久之這種感覺竟然給我造成了一絲心理負擔,那種感覺怎麼説呢?就好比我揹着一包可以修火箭的工具,但每次打開包的時候,就只是為了拿出一把螺絲刀而已。然後就會想,為什麼要背這麼一大包呢?

於是我就想找一找,有沒有一個軟件僅包含 Web Search 的功能呢?但是搜了一圈下來,並沒有發現合適的軟件。可能是由於這個功能太小眾了吧?很多軟件都把這個功能當作一個附加項來做,而且似乎也不怎麼用心。所以我就萌生了自己開發一個的想法。

基於之前使用 Swift 開發【EyeSaver】的不愉快體驗(寫了個 macOS App :《護眼提醒(EyeSaver)》),以及我嘗試用 Flutter 開發桌面端 App 的試水經歷(《Flutter 很強,僅 2 天就寫了個桌面端 App》)。我決定還是使用 Flutter 來進行開發。

之前用 Flutter 開發桌面端只是一次可行性的調研,很多細節問題沒有去考慮,有點囫圇吞棗的感覺。但這次可是要開發一個完整可用的項目了,最開始心裏還是有點忐忑的,也不知道能不能行。甚至中途遇到幾個比較麻煩的問題的時候,我就在想要不要還是用回 Swift 原生開發呢?不過好在最後都找到解決的辦法了。

二、iSearchBar 終於上架

最終,經過 2 周多的開發,以及 5 個多月反覆的測試和調整,我終於將這款應用發佈了出來,現在已經上架 Apple Store 了。

準備上架資料的過程,感覺比寫代碼難多了,現在還欠着好幾個文檔沒寫呢,只有慢慢寫咯!

iSearchBar 的 Apple Store 的截圖

iSearchBar 的核心功能和 Alfred 的 Web Search 功能一樣。同時我也根據自己的使用習慣增加了一些小的功能。比如:

  1. 允許設置彈出窗口位置,固定屏幕中間,還是跟隨鼠標。

我個人比較喜歡跟隨鼠標的窗口,因為視覺不用因為窗口的切換而切換。

  1. 可以導出 & 導入搜索規則,方便備份和分享(後面應該會直接支持 iCloud 備份,以及在線規則導入)。

雖然 Alred 也可以備份,但是好像只能將所有功能的全部設置一起備份,不能單獨導入導出 Web Search 規則。

  1. 允許將多個鏈接編成一個搜索組直達組

我自己經常會有這樣的場景: - 每天早上開始上班的時候,我會同時打開好幾個網頁,查看工作內容。這時我就可以給這些鏈接創建一個組,通過 iSearchBar 一鍵打開。

  • 搜索開發問題的時候,我喜歡到特定的幾個網站去搜,搜索結果會比直接用 gogole 搜的針對性更強一點。所以我會將掘金、CSDN、Stack Overflow 等網站創建一個組,通過 iSearchBar 一次性搜索這幾個網站。

  • 購物的時候,我會同時搜索好幾個購物網站來貨比三家,比如淘寶,京東,蘇寧等,也可以組成一個組。

諸如此類此類,需要同時訪問或搜索多個網頁的時候,都可以用上這個功能。

2.png

  1. 允許保留輸入框中未完成搜索的內容。

之前使用 Alfred,如果正在輸入時被其他窗口中斷,那麼輸入的文字就會被清除。儘管頻率不高,但一旦遇到了還是會讓人苦惱,尤其輸入了較多文字的時候。在 iSearhBar 中,如果你輸入內容後沒有進行搜索,你可以通過打開該設置,來允許保留這些容。

  1. 允許一直保持窗口顯示狀態

在 Alfred 輸入時,窗口一旦失焦,就會立刻消失。這就沒有辦法連續的去其他窗口複製內容。

  1. 豐富的自定義樣式功能,以及全方位的深色模式支持。

千人千面,我幾乎將所有 UI 上參數都製作成了設置項,你可以根據自己的喜好來打造你的界面。如果還不能滿足你自定義 UI 的要求,也可以聯繫我添加你需要的設置。

PS:深色模式還在完善。

3.png

  1. 搜索歷史,以及使用統計(v1.0.3更新內容)

這個屬於可以不用,但不能沒有的功能。

v1.0.3 功能更新.jpg

三、開發計劃:

  • [ ] 允許分別設置深色和淺色模式下的主題
  • [ ] 主題允許單獨導入&導出
  • [ ] 增加主題列表,允許保存多個主題
  • [x] 搜索歷史記錄以及每週使用統計(v1.0.3快完成了)
  • [ ] iCloud 備份
  • [ ] 從瀏覽器書籤導入規則
  • [ ] 導入規則時支持提前預覽

如果你有功能上好的建議,或者發現了 bug,歡迎通過郵箱 [email protected] 或者微信反饋給我。根據反饋內容的價值,我也可能會提供一些的小禮品或補償。

四、小小心意

iSearchBar 只是一個非常小眾的 App,但因為它是我開發的第一個商業化的應用(之前的作品要麼免費,要麼開源了),所以我希望能持續的去維護它。也會積極聽取用户們優秀的建議來讓 iSearchBar 變得更加好用。也希望它可以幫你提高哪怕一點點的效率。

最後,新品上架初期,可能還有諸多不完善的地方,歡迎各位掘友的友好的建議!也為各位支持 iSearchBar 的掘友送上一些小小的福利。

下載軟件:

福利領取:

福利 1:免費領取 Pro 版兑碼碼 - 方式一:免費領取價值 12 元的 Pro 版兑換碼,領取鏈接 >>(限量 20 個,先到先得) - 方式二:凡是在 2023 年 1 月 1 日之前讚賞過我公眾號的讀者朋友(金額不限),讚賞截圖和郵箱地址在微信私聊發我,也可以領取一個 Pro 版本的兑換碼(每人限領一次)。

福利 2:限時 5 折購買優惠: - 沒有領取到 Pro 版兑換碼的朋友,也可以在 23 年 2 月 28 日前,以 5 折優惠的價格購買 Pro 版。

特別鳴謝

非常感謝 @痕跡 大佬以及他創建的 leanflutter 組織,他維護的一系列關於 desktop 的插件,大大提高了 Flutter 開發桌面端的效率。

關注引導-2023-百萬用户.jpg