Ethan Huang's blog

iOS 12 相關技術新知

iOS 12 的新消息自從 WWD18 以後已經很多了。以下是 iOS 12 正式發表之際的資訊:

另外還有一些 apps 的更新:

fastlane.ci 停止開發

4 月提到的 fastlane.ci 現在已停止開發。😅

說明:

As we were building fastlane.ci we realized that it wasn’t going to cover all the requirements we wanted to support. We are currently in the process of re-evaluating our approach and are actively working on a better solution, subscribe here to be the first one to be notified about any upcoming launches.

還在等待的朋友可以去找別的解決方案了。

iOS 12 普及率預測與觀察

請見10/9 的更新


今年 WWDC 發表 iOS 12 beta 版以後,由於效能優化的評價良好,基於口碑效應,我就跟人家說這可能會是有史以來升級最快的一版。

不過不能只是說說而已,「最快」要怎麼衡量呢?

我的操作型定義是:

從 iOS 7 開始算起,用 Mixpanel Trends 的數據,觀察過去幾年每一版 iOS 正式版開放下載到市占率超過前一版所花的天數。

以下表格是我根據數據整理出來的:

Version Release 25% Cross 50% 75% Final % Source
iOS 12 2018/9/17 6️⃣ +10 4️⃣ +17 4️⃣ +19 ? ? 📈
iOS 11 2017/9/19 5️⃣ +7 5️⃣ +20 5️⃣ +26 4️⃣ +90 🥉 90.81% 📈
iOS 10 2016/9/13 4️⃣ +4 🥉 +16 🥉 +18 🥉 +89 🥈 91.27% 📈
iOS 9 2015/9/16 🥈 +3 🥈 +8 🥈 +11 🥈 +68 5️⃣ 86.36% 📈
iOS 8 2014/9/17 🥈 +3 6️⃣ +27 6️⃣ +32 5️⃣ +146 4️⃣ 90.50% 📈
iOS 7 2013/9/18 🥇 +1 🥇 +3 🥇 +3 🥇 +33 🥇 95.06% 📈

Cross 欄是該版正式開放直到與前一版黃金交叉所花的天數。Final % 欄是該版本的下一版正式開放前夕的市占率。Source 欄要注意的是 Mixpanel 網址所帶日期參數為相對數字。


表格剛出來就打臉自己了😅。看到 iOS 7 這種輝煌的成績,未來除非是 UI 風格大改版,應該是難以突破了啦🤪。

第二名的 iOS 9 也相當驚人,那一版的助力應該是大幅縮小升級所需的容量(在那個 16 GB 為基本款的年代),加上續航力大幅提升🔋,最為有感。

影響使用者升級的因素很多,其中一個是口碑*。iOS 12 的口碑就是跑起來明顯順很多,連比較舊的機種也變快了。衝著這一點,許多使用者應該是迫不及待升級才是。

如果這點成立的話,那我猜 iOS 12 跨過 11 的黃金交叉應該不會輸給 iOS 9 的 8 天太多才是

本文寫在 iOS 12 正式開放下載當天。待續…


* 另一個可能是出了新的 emoji 🤣

在 Xcode 10 模擬器上跑 Xcode 9 build 的 app

如果還不急著切換到 Xcode 10,可以使用這個技巧來測試 Xcode 9 build 出來的 app,跑在 iPhone XS Max / XR 模擬器的情況:

  1. 用 Xcode 9 選一個模擬器為目標來 build
  2. 在 Products/OOO.app 上按右鍵、Show in Finder
  3. 打開 Xcode 10 的 Simulator app,Hardware 選 XS Max 或 XR
  4. 從 Finder 裡把 OOO.app 拖拉到上述的 Simulator 視窗裡(會安裝)
  5. 點開 app 來觀察狀況

以上方法來自這篇文章的 Wait, What Did You Say? 那一段。

發表會後搶先版:iPhone XS Max 與 XR 開發注意事項

2018 蘋果秋季發表會在 9/13 結束了。iOS 開發工作要注意什麼?

  • 新裝置的官方的教學影片系列
  • 更新版的 HIG
  • iOS 12 GM 已開放下載
  • Xcode 10 GM 已開放下載,可以升級到 Swift 4.2 了
  • 可以用 iOS 12 SDK 上傳至 App Store 了
  • 如果要上傳新版,原來是 iPhone X 的 5.8 吋的可選截圖已增加 6.5 吋,如果上傳 6.5 吋會自動產出 5.8 吋版本
  • Build 自己的 app 試跑 iPhone XS Max 跟 XR 看 UI 是否正常。例如這種同時有橫版、home indicator、瀏海的排版。參考
  • 這兩款的螢幕不同但是 pt 相同,設計時可視為同一種尺寸。XR 要 10 月才開賣。基本上支援好 XS Max 就可以了
  • iOS 11 SDK 有支援上述兩款新機的解析度,所以如果你的 app 是用 Auto Layout 而不是寫死來支援 iPhone X 的話,還不需要急著重新上傳 App Store。來源
  • iPhone XS 螢幕解析度跟 iPhone X 一樣
  • 各種螢幕解析度的差別可以參考這篇
  • 如果你是第一次載 Xcode 10 來用,然後發現 app build 不過,請注意 Xcode 10 預設用 New Build System。如果要改回舊的請去 File/Workspace or Project Settings 改成 Legacy。詳情請見 Xcode release notes