13 報

Share this post

開發者週報 #73 Happy New Year, Happy M1 Owner!

www.ethanhuang13.com

開發者週報 #73 Happy New Year, Happy M1 Owner!

Apple/iOS 開發者的一週大小事 2020/12/28-2021/01/03

13
Jan 3, 2021
1
Share this post

開發者週報 #73 Happy New Year, Happy M1 Owner!

www.ethanhuang13.com

13的話

親愛的讀者,新年快樂!

我在 1/1 一早拿到了 MacBook Air M1,立即就開始各種測試。截至本期編輯時間只有三天,能做的分析十分有限(有一部分時間是在拿它玩遊戲🥳,咦),也沒辦法跟同事的 MacBook Pro 做比較、跑公司的專案。甚至也來不及錄 weak self podcast(本週沒有節目)。

但我還是寫了一些觀察。因為想法太多,很難整理成篇章,所以用連續推文,想到或發現了什麼就繼續補充。

(看前一期 · 回首頁)


💻13 的 MacBook Air M1 8GB 觀察

這系列推文(太長了,我只放其中一點點。請自己點開)在討論安裝 iOS app、記憶體壓力。很多人關心的問題是 8GB 的電腦夠用嗎?我現在能確定地說,如果開了一堆 iOS app,肯定夠用😂

Twitter avatar for @ethanhuang13
13 @ethanhuang13
13 的 MacBook Air M1 8GB 體驗 #連續推文 M1 的效能跟續航力我們已經知道很多了。我更有興趣知道的是到底是怎樣安裝與執行 iOS app 的? 寫這則推文的時候我正在用 Mac 上的 Uber Eats 點餐。其實它是 iOS app,用 iMazing 接 iOS 裝置以後可以下載 IPA 檔,點兩下就可以安裝到 Mac 上使用。
Image
Image
5:56 AM ∙ Jan 3, 2021
37Likes6Retweets
Twitter avatar for @ethanhuang13
13 @ethanhuang13
Apple 讓 iOS 開發者自行選擇要不要讓 app 上架到 Mac App Store。 iMazing 做的事情是「讓那些沒有上架到 MAS 的 iOS app 也可以下載」。我本來以為它有什麼神奇的魔法。但看起來它只是把 iOS 用的 IPA 檔抓下來而已。 而這些 IPA 點兩下就可以安裝。安裝完就跟其他 Mac app 一樣放在應用程式資料夾
Image
Image
5:56 AM ∙ Jan 3, 2021
Twitter avatar for @ethanhuang13
13 @ethanhuang13
這些 app 甚至可以使用 IAP!也就是說,雖然開發者跟 App Store 不讓它們出現在 Mac App Store,實際上你只要搞得到安裝檔,它們完全就是可以運作的。StoreKit 也會認這些 app。 這讓我不禁納悶身為 iOS 開發者,對自己 app 跑在什麼地方還能掌握多少...😂
5:56 AM ∙ Jan 3, 2021
Twitter avatar for @ethanhuang13
13 @ethanhuang13
從現在開始,開發 iOS app 時一定要想到 Mac。我也預期未來 Mac 使用者會期待 iOS apps 可以跑在 Apple Silicon Mac 上。趁早學習與規劃 iOS 與 Mac 共通的技術、UX 越好。
5:56 AM ∙ Jan 3, 2021
Twitter avatar for @ethanhuang13
13 @ethanhuang13
接下來我觀察的是 Mac 怎麼管理這麼多同時執行的 apps? 記憶體壓力測試:開了幾十個 app,打開過 Xcode 跟遊戲又關掉。記憶體沒有用完。 交換檔有 5 GB 耶,是沒錯,但是以我現在的操作來說,前景(我在寫推文)一點也不卡,切換到任何一個背景的 app 也都是瞬間,但有的 iOS app 會重新啟動
Image
Image
Image
5:56 AM ∙ Jan 3, 2021
Twitter avatar for @ethanhuang13
13 @ethanhuang13
我 #猜測 記憶體不足時,被暫停的 app 可以丟進 SSD 上的交換檔。以這咖 SSD 的速度來說,在你切到那個 app 的瞬間再讀出來,並且讓 CPU GPU 重新針對它執行或繪製,應該是來得及 所以能做到這樣的切換體驗。使用者會覺得在做的每件事都很順,例如打字跟捲動的反應很即時
5:56 AM ∙ Jan 3, 2021

另一串推文。大家對 Apple Silicon 的質疑多半放在「它能跑之前某個 Mac 軟體嗎?」,很少討論到「它能跑某個 iOS 軟體嗎?」你從這個角度來看的話,M1 Mac 多出了對 iOS apps 的相容,同時又用 Rosetta 2 向下支援 x86 apps,其實是目前相容性最好的 Mac。

Twitter avatar for @ethanhuang13
13 @ethanhuang13
Apple 要讓 iOS app 跑在 Mac 上做了兩件事,其一是 UIKit 可以跑在 macOS,也就是 Project Catalyst,讓開發者自己移植。其二是讓 iOS app 原生 ARM 軟體跑在 Apple Silicon Mac 上。兩者有一個共通點就是要實作 iOS API 在 Mac 上的行為。
2:35 PM ∙ Jan 1, 2021

至於有哪些 iOS app 適用於 Mac,以及未來 iPad 的尷尬定位,我覺得這個題目用 podcast 比較好講,所以再等等吧~

Twitter avatar for @ethanhuang13
13 @ethanhuang13
雖然這些從 iOS 來的 app 在 Mac 上 UX 會有很多問題,但「有總比沒有好」還是讓 M1 真香啊。 我在 M1 的 MBA 上下載了一堆 iOS app,比舊款 Mac 多出了好多功能。很多都是沒有 Mac 版的啊。嗯,我大概真的能「擺脫」iPad 了。
2:38 PM ∙ Jan 1, 2021

我還有拿來玩幾款 Steam 遊戲:

  • Hades,順跑,可以無線連接 PS4 手把

  • Disco Elysium,GPU 呈現吃滿的狀態,溫熱,但可以順利地玩

  • Carto,之前就全破了,所以只是開起來確認一下沒問題

這些遊戲都很不錯,而且 Steam 正在冬季特價。至於 Apple Arcade 上的遊戲我反而懶得測試了,肯定沒問題。

順便給大家看一下我的歷代 Apple 筆電,可以發現 M1 是其中面積、體積、重量都最小的,效能跟續航卻是相反。這就是科技進步啊!

Twitter avatar for @ethanhuang13
13 @ethanhuang13
13 生平買過的 Apple 筆電: ↖️ iBook G4 Mid 2005 末代小白 ⬆️ MacBook Air 13″ Mid 2012 整修品很好用、我的 iOS 開發起點 ↗️ MacBook Pro 13″ Mid 2014 日文鍵盤 ↙️ MacBook Pro 15″ 2016 蝶式鍵盤初代 ↘️(MacBook Pro 16″ 2019 同場加映公司配備) ⬇️ MacBook Air M1 13″ 2020 👈 現在在這 ❤️
Image
8:14 AM ∙ Jan 2, 2021

👨‍💻SwiftUI Router

滿酷的,重點是實作也很簡單。

Twitter avatar for @1amageek
nori 村本章憲 @1amageek
SwiftUIでRouterを作ってみた。
Image
4:28 AM ∙ Dec 28, 2020
80Likes6Retweets

🖼IGListKit 誕生故事

一大半是 UICollectionView 踩坑經驗,另一半是開源的過程。

Twitter avatar for @_ryannystrom
Ryan Nystrom @_ryannystrom
It makes me smile every time I notice IGListKit at work in Instagram. We put a lot of work into making and improving it. Proud to see it holding up 4 years later. 🧵 with some memories on how it was built:
4:39 PM ∙ Dec 30, 2020
589Likes109Retweets

另外有趣的點是,本來要叫做 IGStoryKit,被上層拒絕。(解釋:那個時候 IG 還沒有 Story)

Twitter avatar for @_ryannystrom
Ryan Nystrom @_ryannystrom
Fun fact: the library was originally called “IGStoryKit” but my director hated that so we renamed it. Glad we did, guess what launched 6 months later? 🤪
4:39 PM ∙ Dec 30, 2020

🌟Taio 開發 iOS 踩坑分享(續)

之前報導過的技術分享文章,這兩週又多了 Files 與 Code Editor 兩個章節,後者尤其稀有。目前钟颖的步調是每週一篇,所以有空的朋友請自行上去確認,或 follow 他的 Twitter @cyanapps。


以上就是本期的內容。如果對你有幫助的話,請買顆蘋果🍎給我!歡迎轉寄或推薦給同事或開發者朋友。有問題或回饋請直接回覆,或到我的 Twitter 留言。

Share this post

開發者週報 #73 Happy New Year, Happy M1 Owner!

www.ethanhuang13.com
Comments
TopNewCommunity

No posts

Ready for more?

© 2023 ethanhuang13
Privacy ∙ Terms ∙ Collection notice
Start WritingGet the app
Substack is the home for great writing