開發者應該如何面對iOS 7?

標題用問號結束,是因為幾乎每天都聽到有不同的解法。下面來作個整理,比較一下看到現在apple官方、開發商、開發者對於iOS7出現做的各種應對。



apple對於iOS 7的說明,在iphone 5 的64bit架構出來後又更新了一次,不管是開發者還是UI/UX/UED,都可以找到需要看的文件

對於一個開發者基本要看的是 Xcode 5 release noteiOS 7 diff,雖然我看完了,但很多地方看不懂,還在重看當中。

根據三個月前的iOS 7 beta1,首先看到的是UI大改,所以首先需要解決的問題是客製化UI在iOS 7上面會亂掉的問題,只要是Xcode 4 build出來在iOS 6上面跑得好好的UI,基本上在iOS7上面都不會有什麼問題,大部分的app可以用這招先檔一陣子。但是同一份code在Xcode 5上面build出來以後,看到的大多是慘不忍睹,像是navigation歪掉,tableView Cell改變。我的建議是,先用Xcode4 把iOS7上面有問題的地方修好,出個iOS7的版本,先稱一陣,這段時間趕快用Xcode 5 把有問題的地方都修一修。這樣是為了怕未來上傳 app的時候需要支援120x120的icon,但是120x120的icon一定要Xcode5才能加,等到我們所有上架的app都必須用Xcode5以上才能上架,到時候再解已經來不及了。

在同一個app內針對iOS 7有什麼問題的地方作微幅修正,這是最簡單的作法,也是最省錢的作法,相信大部分台廠老闆都會選擇這招!比較有心的團隊會在iOS 7還在beta版的時候就開始修改,我待的團隊在iOS 7 beta 5的時候開始投入,解了10多個UI上的問題,全部都是客製化UI才跑來的問題XD。接案公司或者app製造機,一定都是等客戶靠北以後才會改。

我在上個月一篇放棄iOS6 直攻iOS7? 裡寫說我看到的其他人作法,有很多是盡早使用扁平化設計,這樣等轉換到iOS 7時,使用者在使用app跟離開app後看到的是一致性的設計語言,這也提高了app在手機內的存活率。先在iOS 6的app裡面作防範,這並沒有解決app在iOS 7會跑版的問題,所以、大概有這幾種選擇!

incredible solution for support iOS 567

  • 我們最先遇到的問題就是view的原點從status bar下面變成最左上角了,根據這篇使用 Interface Builder 設計 iOS7 Layout 並與 iOS6/iOS5 相容,我們看出來可以用autolayout來輕鬆解決原點跑掉的問題,但是仔細看看這篇文章就會發現只是作一個簡單的View就這麼麻煩了,像是大變動的tableView跟datePicker要怎麼辦!
  • 所以我比較喜歡這種,作兩隻app,然後順便加新功能!當然舊app也要正常運作,iOS 5 6作一支,iOS6 7以上用另外一支,最著名的例子當然就是Reeder 2,我猜他們在iOS 7 beta 之前就已經投入開發了,看到iOS7以後毅然捨棄support iOS 5。不過這招會牽扯到商業策略的問題,不是開發者可以單獨決定的,除非原本的app在iOS 7上面bug實在是多到爆炸,否則正常公司是不會使用的。

來自官方的幫助

apple不是笨蛋,也知道開發者都很懶惰,不可能使用者18號升級,開發者就馬上提交新版本,所以幫了兩個忙。

一是可以下載舊版app以往當我們的裝置是iOS 5但是app最低支援版本是iOS 6的時候,點 了下載 AppStore會說不可以下載。現在只要app之前有支援iOS 5的版本,就會讓你下載該app支援iOS 5的最後一個版本。相關文章可以看這裡這裡

圖來自pcmag

第二是加速app審核速度,這兩天在討論版裡面,都可以看到很多開發者朋友體驗到尊爵不凡的review速度,兩天一天甚至15小時一小時通過review的都有




沒有留言: