騰訊開源垃圾清理軟件檸檬 Lemon

語言: CN / TW / HK

電腦上的管家或者清理軟件大家應該都用過,比如Windows的360、火絨,Mac的CleanMyMac都是不錯的清理軟件。今天我們給大家介紹的是,騰訊的檸檬Lemon清理工具。

Lemon是騰訊針對中國用户習慣打造的一款完全免費的垃圾清理工具,系統性解決macOS設備空間問題。並且,能對上百款軟件提供定製化的清理方案和專業的清理建議,幫助用户輕鬆完成一鍵式的清理。整體設計上清新簡潔,狀態欄小巧好用,是一款Mac設備必備的實用工具。並且,最近Lemon開源了,有興趣的愛好者可以下載源碼並自行擴展相應的功能。

image.png

説到這,我已經迫不及待的想看看大廠的代碼是怎麼寫的了。首先,我們從Lemon的Github託管地址下載項目。下載完成後,使用Xcode打開工程,工程結構如下圖。

image.png

整個工程主要分為以下幾個模塊,大家可以根據這些模塊自行去學習。

  • Lemon:主工程。
  • LemonMonitor:狀態欄。
  • LemonBigOldFile:用於大文件清理。
  • LemonDuplicateFile:用於重複文件清理。
  • LemonPhotoClean:用於相似照片清理。
  • LemonUninstaller:用於應用卸載。
  • LemonPrivacyClean:用於隱私清理。
  • LemonLoginItemManager:用於開機啟動管理。
  • LemonSpaceAnalyse:用於磁盤空間分析。
  • LemonFileMove:用於文件搬家。
  • LemonHardware:用於硬件信息獲取。
  • LemonNetSpeed:用於網絡測速。
  • LemonCleaner:用於實際清理操作。

接下來,我們選擇運行設備為Mac就可以運行項目了,不過在運行的時候出現了下面的錯誤。

Showing All Messages No account for team "8PC4X7QUY9". Add a new account in the Accounts preference pane or verify that your accounts have valid credentials. (in target 'ViewAnimator_Tests')

錯誤的意思是,沒有找到8PC4X7QUY9的憑證,需要使用我們自己的開發者憑證。我們可以複製錯誤碼8PC4X7QUY9,然後在工程 Xcode 工具欄中粘貼錯誤碼替換成自己的開發者賬號信息即可。

image.png 接下來,我們再次運行項目,又報瞭如下一個錯誤。 Embedded binary's bundle identifier is not prefixed with the parent app's bundle identifier

對於這個問題,需要檢查工程TARGETS下的Bundle Identifier是否已設置。如果是SDK的demo工程,Bundle Identifier通常是空白,需要手動填寫,並在下面Signing的team中選擇開發者賬號。否則,填入對應的企業帳號信息。最後,在運行前,還需要我們填寫App的分類,如下圖。

image.png

最後,再次運行項目,就沒有報錯了,運行成功後,項目的主頁面如下圖,和官方發佈的版本基本上是一樣的。

image.png

可以看到,作為一款垃圾清理軟件,Lemon基本上涵蓋了一款清理類軟件必備的功能,比如提供相似照片清理、大文件清理、隱私清理、應用卸載和開機啟動項保護等功能。

同時,作為騰訊為數不多的開源項目,官方在對待開源這事上也非常關注,並在論壇提供了專業的欄目。

image.png

官方表示,檸檬清理作為一個小團隊,能力和精力都有限,出於對國內開發者的信任,團隊決定開源 Lemon,一起把它做得更好。其實,我還是挺佩服開源這個決定的,雖説這樣開發者們就可以大顯神通,幫助檸檬清理做得更好,但是這也給了盜版可乘之機。同時,官方也表示,開源不會影響到用户正常使用,仍然會正常迭代,把獲得授權的代碼整合到軟件中。

參考:

檸檬 Lemon源碼

檸檬 Lemon官網