Category Archives: Code

Google I/O 2017 Android 相關 Session 摘要 – 上集

部門內總是習慣大家分著看東西,再互相分享,這是我們團隊內保持快速移動的有效方法之一,今年我們也針對 Google I/O 2017 上百部影片中的 Android 相關議題做了分享,算一算這是我們第四年分享懶人包了呢 :P

Posted in Android | Leave a comment

Google I/O 2017 Android 相關 Session 摘要 – 下集

部門內總是習慣大家分著看東西,再互相分享,這是我們團隊內保持快速移動的有效方法之一,今年我們也針對 Google I/O 2017 上百部影片中的 Android 相關議題做了分享,算一算這是我們第四年分享懶人包了呢 :P

Posted in Android | Leave a comment

The Issue About Using MPChangeRepeatModeCommand

Apple’s MediaPlayer framework has two APIs in iOS 10 to let you control your player’s repeat mode (to repeat a song, or a list, and so on) and shuffle mode (sequential or shuffle play) with CarPlay. They are MPChangeRepeatModeCommand and … Continue reading

Posted in Code, iOS | 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

KKBOX 的 WWDC 2016 讀書會影片

KKBOX 今年也舉辦了 WWDC 影片的讀書會,我們挑選了一些我們比較有興趣的主題,在公司內分享。您可以從下方找到我們的讀書會錄影,以及每場讀書會對應的 WWDC 官方影片。

Posted in Code, iOS, Mac | Tagged , , , | 2 Comments

KKBOX for UWP (10.0.22.0)

<KKBOX for UWP 新體驗新方向> 介紹 KKBOX 在 Windows 10 新版本的功能介紹,不知道大家是否已經安裝且享受它了呢? 團隊持續努力開發與修正新的版本,今天要介紹 10.0.22.0 版本的相關內容。 新增播放定時器功能 設定自動關閉音樂的時間,讓您聽著最愛的音樂入睡,不用擔心過度耗電的問題!Desktop/Mobile 均支援。   新增在我的音樂庫內搜尋歌曲 相信您聽過很多讓您回味無窮的歌曲,但是不小心忘記放在我的音樂庫裡面的哪一個歌單了?沒有問題,新增了讓您可搜尋我的音樂庫,歌曲不再忘記在哪裡。   Desktop 新增整頁模式或是分割模式顯示的按鈕 根據用戶的回饋: 希望在 Desktop 模式可以保持跟 Mobile 一樣的體驗。新增了讓您在Desktop 自行決定享受體驗的方式。 分割模式 整頁模式 維持瀏覽記錄 過去只要您切換不同的 tabs (ex: 我的音樂庫,綫上精選,電臺…) 目前瀏覽的記錄就消失,無法使用返回鍵看到剛才的瀏覽的內容,造成使用上很不便利。該版本修正它,讓您可以悠遊的瀏覽與返回想要的內容。   調整線上搜尋的主頁 過去進入線上搜尋只會顯示熱門關鍵字,無法有效地幫助您找到想要的歌曲。因此,調整爲預設顯示適合您的搜尋內容。 … Continue reading

Posted in Windows | Tagged , , | Leave a comment

KKBOX for UWP 新體驗新方向

很榮幸向大家介紹 KKBOX 針對 Windows 10 所精心打造的新版本:KKBOX for UWP。 Universal Windows Platform (UWP) 是 Microsoft 針對 Windows 10 開始所推出的新型開發架構 ,目的是讓所有運作 Windows 10 的設備,例如:Mobile,Desktop,Xbox,HoloLens,Windows 10 IoT,…等都能執行該架構所開發出來的 Apps。這樣有利於延展 App 的使用設備範圍,並創造更多的收益。 KKBOX .NET Team 累積一年的 Windows Store/Windows Phone 的 Apps 開發經驗後,再次以短時間與所有部門的全力協助合作下重新打造了適合於 Windows 10 的 … Continue reading

Posted in Windows | Tagged , , | 1 Comment

100 Days of Google Dev 上集

Google I/O 2015 已經結束蠻久了,但是隨著 Google I/O 2015 落幕而開始的 100 Days of Google Dev 卻才剛結束 2 天,去年在 YouTube 上大概在 2、3 週內就將 I/O Bytes 的影片全數釋出了,今年改為 1 天 1 部影片,弄得人家心癢癢的不太舒服。 參考連結:Google I/O 2015 – 100 Days of Google Dev 無論如何,我們部門內的成員平時就有在追 YouTube 上的 Google … Continue reading

Posted in Android | Tagged , | 3 Comments