iOS開發周報:Swift 項目合并 Android 分支,App Store 開展 “A
2016-04-20 16:03:43 來源:王巍 評論:0 點擊:
Swift 項目合并 Android 分支,App Store 開展 “Apps for Earth” 促銷活動
新聞
- Swift 項目合并 Android 分支:在今年二月,Facebook 的工程師 Brian Gesiak向 Apple 提交了一個 pull request,將 Swift 的標準庫移植到了 Android 上。這樣開發者可以使用 NDK 的方式在 Android 上調用 Swift 編譯的內容。本周 Apple 將這些代碼合并到了 Swift 倉庫中,這意味著我們可以在不久的將來在 Android 上運行 Swift。但是值得指出的是,這并不代表我們現階段可以很好地使用 Swift 來開發 Android 應用,在 SDK 調用和開發模式的匹配上,仍然會有很多工作要做。
- App Store 開展 “Apps for Earth” 促銷活動:很多用戶應該已經注意到了一些 app 的圖標最近都換成了綠色。這些 app 參與了 Apple 與 WWF (世界自然基金會) 合作推出的 “Apps for Earth” 活動,其中包括像是爐石傳說,憤怒的小鳥 2,VSCO,LINE 等知名 app。在活動期間這些 app 的部分收入將捐助給 WWF 以支持它們的環保行動。
- Apple 可能正在策劃推出 App Store 付費排名:國外有消息指出,Apple 可能在考慮將競價排名或者付費關鍵詞搜索加入到 App Store 的搜索體系中。根據現有消息,App Store 的付費排名可能采取和 Google 搜索的關鍵字購買類似,開發商對某個關鍵字進行購買,并讓自己的 app 出現在搜索前列。如果消息屬實,那么這對整個 App Store 生態將產生相當大的影響。
教程
- iOS 關于navigationBar的一些:毛玻璃、透明、動態縮放、動態隱藏:關于 iOS 中的導航欄自定義相關技術,在 iOS 7 改變整體風格以前就是一個熱門話題。而在 iOS 7 加入半透明效果和重新定義了視覺元素之后,導航欄的顯示和動態特效自定義需求則更加復雜。這篇文章對導航欄的常見自定義效果進行了一些整理和示例說明。
- Custom UIViewController transitions in VIPER:ViewController 轉場的 API 在 iOS 7 被引入到 iOS SDK 中,從此開發者可以方便地控制和自定義轉場的效果。如果你對 VIPER 或者其他一些非 MVC 的架構方式有一定了解的話,會知道其實采取這些非 MVC 的方式時,和 CocoaTouch API 進行交互會有一些額外需要注意的事項和技巧。這篇文章就為我們說明了如何在一個 VIPER 架構的項目中使用 ViewController 轉場相關的 API。如果你有意嘗試新的架構方式的話,這可能會對你有所啟發。
- Powerful private methods for debugging in Cycript & LLDB:使用 LLDB 進行 app 調試可以說是廣大 iOS 開發者的日常必備技能了,而相比起來,知道或者熟悉 Cycript 的開發者就會少很多。Cycript是一款能在越獄設備上對運行時進行注入的調試工具,你可以用它來對 app 進行探索。這篇文章為我們介紹了一些調試時很有用,但卻鮮為人知的命令。
開源項目
- EasyPeasy:另一個用來簡化創建布局約束的框架,EasyPeasy 使用了更簡潔和智能的約束描述語法來創建約束,并提供了很多便利的方法和屬性輔助我們以更加直觀的方式用純代碼使用 AutoLayout。如果你不使用 Interface Builder,而是選擇在源代碼中創建視圖和約束的話,這個框架可以幫助你節省很多時間。
- Knuff:一個開源的 OS X app,可以用來設定使用某個推送證書進行推送通知的測試。在以前我們可能經常會使用像是houston這樣的命令行工具進行推送,而 Knuff 則使用 GUI 為我們提供了相同的功能。這在開發過程中進行快速測試時會非常方便。
- TextAttributes:Cocoa 框架中有一些使用起來會令人抓狂的 API,`NSAttributedString` 就是其中之一。想想看要創建一個帶有格式的字符串是多困難吧:尋找 `Range`,指定屬性,創建配置字典等等。Cocoa 這樣設計 API 可以最大限度保證松耦合,確實有其優勢。但是作為 API 的使用者,這樣的接口使用起來并不是特別方便,而且并不太適合 Swift 的強類型約束。TextAttributes 框架將這些松耦合的接口進行了重新封裝,使其類型更加安全,也使得原有的 API 更易用一些。
- Peek:一個可以在開發時截取當前界面,并且對界面里的視圖進行檢測和查看的框架,你可以把它理解為可以運行在 iOS 上的Reveal。通過集成 Peek,你可以快速確認界面布局是否滿足設計師的需求,也可以在運行時確認某個 view 的狀態是否和預想一樣。
- FBMemoryProfiler:Facebook 出品的一個實時監測內存使用的庫。相比于 Xcode 自帶的 Instruments,這個框架提供了更友好的信息,包括當前沒有釋放的對象以及 retain cycle 的詳細信息等。這個工具是高度模塊化的,你可以選擇自己感興趣的部分使用,比如要是你只想要檢測 retain cycle 的話,可以只需要使用 Facebook 同時公布的這個項目:FBRetainCycleDetector。
感謝徐川對本文的審校。
給InfoQ中文站投稿或者參與內容翻譯工作,請郵件至editors@cn.infoq.com。也歡迎大家通過新浪微博(@InfoQ,@丁曉昀),微信(微信號:InfoQChina)關注我們。
相關熱詞搜索:iOS weekly swift app for earth 架構 & 設計 語言 & 開發 iOS 移動開發技術周報 Mac 移動開發 移動 操作系統
上一篇:物聯網技術周報第39期: Particle和亞馬遜云服務打造無后臺化物聯網
下一篇:Android開發周報:Android N將引入3D Touch功能、官方MVP架構解析
分享到:
收藏
