Tag Archives: Xcode

KKBOX 的 WWDC 2017 讀書會影片

又到了歡樂的 WWDC 讀書會時間,今年我們挑選了12個主題來研讀。相信大家也跟我們一樣,每年到這個時候總會很『開心』的學習 Apple 發佈的新技術 \O/ Swift and Foundation Xcode Debug Xcode IDE UIKit UIKit-Drag and Drop WatchOS (watchOS, webView) Notifications, Layout SiriKit, Core Spotlight Security (Networking, Apple pay, Device check) Performance, Testing Audio, AirPlay 2 Core Image Swift and … Continue reading

Posted in Code, iOS, KKBOX, Uncategorized | Tagged , , , , , | Leave a comment

使用 Slather 產生 iOS/Mac 專案的單元測試覆蓋率報告

在 Xcode 6 以及之前的版本中,如果你使用蘋果內建在 Xcode 當中的 OCUnit/XCUnit 等測試框架撰寫單元測試的話,Xcode 會在測試的過程中產生 gcc 格式的覆蓋率(coverage)報告,叫做 gcda (意思是 gcov data file)檔案;如果我們想將產生測試覆蓋率的流程整合到 Jenkins 等持續整合系統中,我們可以用 gonvr 等工具,將測試報告轉換成 XML 或 HTML 格式,這將我們就可以在系統中,看到每個 build 的覆蓋圖表,以及覆蓋率變化的趨勢。 但是在 Xcode 7 之後,蘋果將 gcc 的工具換成 llvm 的工具,這種幾年前的方案便變得不敷使用。在 Xcode 7 中,雖然我們可以指定要求產生 gcc 格式的覆蓋率檔案,似乎可以與我們過去的工作流程相容,但是產生出來的結果非常不準確;而蘋果的立場大概是,反正 Xcode … Continue reading

Posted in Code, iOS, Mac | Tagged , , , , , | Leave a comment

Your Delegation Methods Might Not Be Called In Swift 3

One of the most obvious changes in Swift 3 is its naming convention. Apple also renamed lots of methods when releasing Xcode 8. To make new Swift APIs to be compatible with existing Objective-C APIs, Swift compiler converts Swift 3 … Continue reading

Posted in Code, iOS, Mac | Tagged , , , , , | Leave a comment

Upgrade to Xcode 8

Xcode 8 was out along with iOS 10, watchOS 3, tvOS 10 and macOS 10.12 Sierra last month. We spent a couple of days to upgrade our development environment and build machines of our continuous integration system to Xcode 8, … Continue reading

Posted in Code, iOS, Mac | Tagged , , , , | Leave a comment