933
iPhone_iPad_Mac_手機_平板_蘋果apple
MAML教程
#前言#
這是可能是我在MIUI論壇的最後一次發帖,我會把所有“對MIUI主題的看法”和“有關MAML的內容”全部寫出來。
#我與MAML的前世今生#
一切都源於熱愛,一切都止於無奈。
因為熱愛MIUI的主題,所以有了我的處女帖:https://www.miui.com/forum.php?mod=viewthread&tid=1275049&extra=
因為無奈MIUI的文檔,所以有了我的教程貼:https://www.miui.com/forum.php?mod=viewthread&tid=1331308&extra=
因為熱愛,所以一直一直做著自己喜歡的事。發MIUI主題帖,發自己對MIUI的一些看法,反饋BUG,提建議..一切都是那麼的自然,不為什麼,隻因熱愛。
2014年年底,當時已是大四的我,回想我整個大學學到了什麼,做了什麼,有什麼值得留戀,有什麼不甘心..很多很多事情。然而想到MIUI的主題製作,最讓人貓爪撓心的就是MAML文檔了。因為自己體會過,所以才知道有過痛苦。於是,當時我就有了整理整個MIUI論壇有關MAML的文檔的項目。現在早已不記得自己花了多少個通宵多少個小時去逛論壇,整理官方糟糕的wiki文檔,編輯文稿,測試每一個腳本語法..總之,在2015年的第一天,我最終上線了全新的MAML教程:https://www.miui.com/forum.php?mod=viewthread&tid=2196783&extra= 當然,它是不完美的。仍舊有很多TODO的項目需要去完善,同時也需要花費更多的時間和精力去維護它。
2015年可謂是百家ROM爭奇鬥豔的一年,各家的UI設計趨同,在設計上早已拉不開什麼差距。而我對MIUI下一個版本進化的方向產生了疑慮,同樣也對MIUI主題市場設計上的模仿抄襲之風深感厭惡,每一個主題除了換皮膚就是換配色,缺少一種活力。而這種活力有該源自何處呢?MAML腳本,百變框架的初衷就是讓MIUI主題更有活力。通過MAML腳本的編寫可以設計出更多有意思的動畫效果。因此,我對MAML在動效設計中作用產生了好奇,也試著去寫一些有意思的腳本。測試了好幾個有意思的腳本:https://www.miui.com/forum.php?mod=viewthread&tid=2568094&extra= 再後來就有了動畫設計的教程:https://www.miui.com/forum.php?mod=viewthread&tid=2567880&extra= 集百家之貼於一處,希望的就是給後來者一個更快捷的學習途徑。
然而,一切終止於MIUI 7的發布會上“所謂的"MUSE主題編輯器:https://www.miui.com/forum.php?mod=viewthread&tid=2785406&extra= 我隻能用失望來形容我當時的心情。信誓旦旦的承諾成為一紙白書,遠比耍猴營銷帶給我們這幫設計製作者的痛還要痛。然而,我依然熱愛著MIUI。
(有心者可以去看我過去發的帖子,裏麵會有很多可能對你有用的內容。)
#MAML 教程【最終番】#
那麼,我是怎麼深入學習MAML的呢?答案是:閱讀源碼。
由於內容涉及對MIUI的反編譯,而觸及有關法律問題,因此我隻能介紹我的工作流(有心者自行借鑒)
我的工作流:
jadx 反編譯(PC端) -> 分析miui.maml目錄下的*.java源碼 (PC端,利用Beyond Compare做對比分析,前後兩個版本的修改)
我的工作利器:
SublimeText_2.0.2 (其他任何文本編輯器都行啦)
jadx:
附件: jadx-0.6.0.rar(3.5 MB, 307次下載)
BC:
附件: Beyond Compare.rar(6.7 MB, 61次下載)
別,和我說你不會裝軟件的事,最煩你們這些人
我的工作相關文件夾:
附件: maml文檔.rar(4.7 MB, 253次下載)
其中,
framework2_repo是係統中提取出來框架包(均為jar);
miui.mamlXX是反編譯後的保存的文件夾(相關源碼);
miui.maml_miui6_final是MIUI 6最後一個開發版本的源碼;
參數org.xml是前人有關maml標簽的解釋,不過大多數都不適用了,可以學習下;
參數描述.xml同上
參數依賴.xml是我整合了上者和源碼的一些內容寫的標簽繼承關係,幾乎包含目前的所有標簽,可以參考;
最後,
先學點java,不然源碼很難讀懂。(我看完所有源碼,花了個把星期,都看哭我了( ▼-▼ ))
我的學習參考:
少求助,多教程,多看碼。膽大心細,多測試,幾遍下來問題自然就解決了,還積累了經驗呢。
附件: 多多測試.rar(6 MB, 273次下載)
幾個測試項目,每次寫點腳本代碼就測試一下看行不行,東西比較雜亂但該有的都有,僅用作測試學習使用勒。
有時候官方主題裏麵藏有寶藏,都是值得學習的模板。(如果你能全看懂裏麵的代碼,恭喜你,你已經成大神了,沒錯,你可以思考設計屬於你自己的主題了,隨心所欲!)
以上是教程【最終番】的所有內容,我的底褲。當然,還有我都熱愛和堅持。
#建議#
給小白的,不要用盜版。為什麼?兩點:首先,如果你盜用那些經過設計師花了很長時間和精力做出的作品,我會鄙視你,再說你也不缺這幾塊錢。其次,如果你盜用那些不良所謂的設計師盜用其他作者主題混搭出來的主題,我還是會鄙視你,因為我鄙視的是你的審美,再說你也不缺這幾個錢,自己買來自己混搭屬於自己的style嘛。
給設計師的,不要相信”授人以漁“的大道理,如今市場化的MIUI主題,需要的是更多的是”魚“而不是”漁夫“,何況你已經是漁夫了不是。我們花了那麼多的時間和精力,總要有人為我們的付出買單不是麼。
給那些想成為漁夫的人,不要羨慕漁夫手裏那些魚,因為那條魚並不適合你的口味,你可能喜歡的是三文魚,他可能喜歡沙丁魚勒。不要去盜用別人的作品作為自己的,但你可以借鑒別人的作品,學習其精髓(雖然大多數的都很糙,但總有一些是好的,提高審美很重要,很重要,很重要!),想想,如果自己學成,想設計什麼樣的還不做成什麼樣的,多牛多厲害啊。隻要你熱愛,堅持總會有回報。哦,對了。還有一件很重要的事,在這裏,並不是你生活的全部,你身邊還有很多的事等著你去做,你可以去陪很多多年未見的朋友喝喝茶,你可以多出去跑跑步,你可以多去和身邊的同學朋友愛人家人聊聊天。不要整天呆在電腦麵前,這裏不是你的全部,但這裏永遠屬於你的一部分。
--------------------------------------------------------------------------------
#華麗的止步線#
時間總是過得太快,你來不及回想過去,它卻奔向了未來。此刻,看看電腦右下角的時間,2015年11月8日。我記得注冊論壇賬號那會還是2011年11月11日的晚上呢。已經整整四年了。
MIUI在成長,我也會改變,唯一不變的是初心。
願好,再見!
此內容僅回複可見
2015.10.8 晚八點整
最後更新:2017-08-13 23:41:58