老柯修机铺

通讯行老师傅的手机软件笔记——每款 App 装过、用过,才敢写下来

Lottie 動畫庫值不值付錢?一筆算透的帳本

Lottie 是 Airbnb 推出的跨平台動畫庫,本帳本從三類使用者的角度拆解:什麼情況下它的時間節省值得付費,什麼情況下純用免費資源就夠。

Lottie 是什麼,為什麼它從誕生起就沒停過

Lottie 這個名字對獨立開發者和設計師來說一點都不陌生。它是 Airbnb 在二〇一七年推出的一套跨平台動畫播放方案——設計師在 Adobe After Effects 裡做好的動畫,通過一個叫 Bodymovin 的外掛導出成 JSON 格式,開發者只要在自己的專案裡加一行依賴、丟進那個 JSON,動畫就能在 Android、iOS、Web、React Native 等平台上完整播放出來。不用從零寫幾百行自訂動畫代碼,也不用擔心設計稿做出來跟最終實現不對齊。想了解完整的 API 對接方式可以參考 Lottie文檔。

這個定位很重要:Lottie 不是一款 App,也不是一套收費軟體,它的核心是一套免費開源的 SDK。但圍繞它的生態,有付費層的空間——LottieFiles 平台的 Pro 訂閱、設計師的定製動畫、企業級的技術支援。這些層面才是我們這本帳要算的對象。

安裝

Lottie 在 Android 上的安裝分兩種場景:普通使用者想玩裡面的動畫範例,或是開發者要把它接進自己的專案。前者比較簡單——Lottie下載官方推出的 Android APK(最新版本 6.6.8,安裝包約 15.78M),允許安裝未知來源後就能打開,裡面內建了幾百個範例動畫供你把玩和預覽。後者是真正的主力,只要在 build.gradle 加一行 implementation "com.airbnb.android:lottie:6.6.8",Gradle 會自動拉取依賴,之後在佈局裡放一個 LottieAnimationView,調用 setAnimation("xxx.json") 就能播放。iOS 端支援 Swift Package Manager、CocoaPods、Carthage 三種方式,Web 端則是 npm install 或直接引入 CDN。

第一次啟動 Android APK 版本時會要求儲存權限,這是因為它需要從本機或網路加載 JSON 檔案,權限拒絕後部分功能會顯得安靜。另外要注意的一點:舊版本(5.x 之前)的 Lottie 對 Bodymovin 導出的某些 AE 特性支援不完整,升級到 6.x 之後支援矩陣大幅擴充,但如果你的專案裡還在用老版本,升級前最好先跑一遍所有動畫預覽,確認沒有因為 API 變動導致渲染異常。

Bodymovin 導出面板

帳本第一頁:免費版給什麼,付費版多什麼

先把價格拆開。Lottie SDK 本身是 MIT 協議開源的,你可以免費商用、免費修改、免費重新發佈,沒有任何金錢門檻。真正有付費空間的是它的配套生態:

LottieFiles 平台提供免費版和 Pro 版兩種訂閱。免費版可以上傳動畫、調用 CDN 預覽、每天有限額的 API 請求;Pro 版則解鎖了 Motion Tokens 動態綁定、狀態機 API、高頻 API 調用、以及商業專案的授權證明——這些功能在你做企業級互動動畫時才會真正用到。

開發者的時間成本才是這本帳的核心。假設你不用 Lottie,要在 Android 上實現一個帶路徑動畫、顏色漸變、修剪路徑的載入動畫,寫自訂 View + 計算關鍵幀 + 處理各解析度適配,通常要花一到兩天。而用 Lottie,設計師給你 JSON,你加三行程式碼就搞定。時間省了,這省的時間值不值錢,取決於你是誰。

帳本第二頁:三類人各自該怎麼算

第一類:偶爾用的獨立開發者或業餘愛好者。 你一年做個兩三個小專案,每個專案裡頂多兩三個動畫。這種情況下完全不用付錢——去 LottieFiles 免費區挑現成的 JSON,或者自己裝 Bodymovin 導幾個簡單動畫,免費額度綽綽有餘。你省下的那幾小時代碼時間,換來的不過是幾百行自訂動畫的體驗,沒必要為此花年費。

第二類:主力使用的產品經理或全棧開發者。 你每個月要在三到五個專案裡接入動畫,而且開始需要做一些互動邏輯——按鈕懸停變態、載入進度條跟資料綁定、多段動畫切換。這時候免費版的 LottieFiles API 額度可能開始吃緊,Motion Tokens 和狀態機這些功能也開始讓你的互動動畫變得更乾淨。Pro 版的年費攤到每個月,對比你每個月省下的至少二十小時手寫動畫代碼的時間,這筆賬基本是正的。

第三類:重度使用的設計工作室或企業團隊。 你有專門的設計師做動畫,開發團隊跨 Android、iOS、Web、React Native 四個平台同步交付,而且客戶方要求動畫在所有平台上表現完全一致。Lottie 這時候已經不是一個工具選擇的問題,而是一個工程效率的底層設施。付錢買的不只是 Pro 訂閱,還有設計師和開發者之間那條不用再反覆對齊的溝通管道——"設計一次,到處渲染"這句話在多人協作的場景下價值被放大了好幾倍。

帳本第三頁:不付這筆錢還有什麼路可以走

如果你看完上面還是覺得不值,有幾條替代路徑。第一條是純用 Android 原生動畫框架——AnimatorSet + ObjectAnimator,完全免費,但你要自己扛跨平台一致性和複雜動畫的開發成本。第二條是用 Flare 或 Rive 這類 Lottie 的競爭對手,它們也有類似的 JSON 導出流程,但在 Lottie 生態已經這麼成熟的今天切換過去,等於把設計師的 Bodymovin 技能和開發者熟悉的 SDK 一起換掉,轉換成本不可忽視。第三條是把動畫砍成最基本的幾種,完全不用任何第三方庫,這對簡單專案可行,但對需要品質感的產品來說,砍掉的就是和競爭者拉開差距的那部分。

帳本最後一頁:分檔結論

算到這裡結論其實很清晰。偶爾用的就免費到底,去 LottieFiles 撿現成素材,裝個 Bodymovin 自己導幾個簡單動畫,一分錢不用花也能出不錯的效果。主力使用的可以考慮 Pro 訂閱,但建議先累計使用一兩個月,確認 Motion Tokens 或狀態機真的是你需要的功能再付——別為了「可能會用到」的功能提前交年費。重度團隊不用糾結,Lottie 在你們的技術棧裡已經是標配,付錢換效率是必然選擇。

總之,這本帳的關鍵不在 Lottie 本身收不收錢——它不收。而在於你把它省掉的那部分時間,用來做別的事情能不能產生更高的價值。如果你寫自訂動畫代碼的時薪比 LottieFiles Pro 的月費高,那這筆錢就值得花。

LottieFiles 首頁

本文为个人基于网络公开资料整理编写,非官方内容,仅供学习交流参考;软件版权归原作者所有,请支持正版;使用过程中遇到问题请查阅官方渠道,本文不承担任何责任。

同类文章