Category Archives: Code

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

100 Days of Google Dev 中集

承 100 Days of Google Dev 上集,這一篇收錄了我們所撰寫的第 34~66 部影片中文摘要,希望透過簡單的文字描述能讓軟體業的 PM/RD 們,從 Google 在 2015 所釋出的技術中,激發一些能夠應用在自己產品中的新創意。 100 Days of Google Dev 上集 100 Days of Google Dev 下集

Posted in Android | Tagged , | Leave a comment

100 Days of Google Dev 下集

此篇收錄 100 Days of Google Dev 中的第 67~100 部影片摘要 100 Days of Google Dev 上集 100 Days of Google Dev 中集

Posted in Android | Tagged , | 2 Comments

KKBOX 的 WWDC 2015 讀書會影片

KKBOX 在七月到八月之間,在內部舉辦了一連串的 WWDC 影片讀書會,我們大概挑選了大概其中一半的影片,由公司內的成員各自認領範圍報告。 除了觀看影片摘要報告之外,更重要的是,我們就 WWDC 提到的重要技術,也嘗試先寫一些 prototype 確認─畢竟就我們過去的經驗,很多蘋果在 WWDC 時釋出的 SDK 不見得與最後釋出時相同,也提早了解目前蘋果所提供開發環境會有哪些問題。 讀書會錄影如下:

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

使用 Sketch Plug-In 改善工作流程

KKBOX 在六月推出的手機版本加入了主題面板功能,到目前為止,我們已經與 BOSE、nanoblock 等合作夥伴一同推出了專屬 KKBOX 主題面板,打造不一樣的 KKBOX 使用體驗。接下來我們還會繼續推出更多的主題面板。 因為這個功能剛推出,我們將力氣花在產品功能的創意發想、視覺設計、規格與檔案格式的制定上,開始進入營運之後回顧時發現—我們產生佈景主題的流程不怎麼有效率。 KKBOX 的主題面板 KKBOX 的佈景主題是一包包含文字定義檔案與圖片素材的集合,一開始由 iOS 與 Android 開發部門決定了主題面板包的格式與 App 中的實作,所以最早幾個主題面板的產生流程是,我們的設計師先做好切圖,再分別把 iOS 與 Android 的切圖機交給 iOS 與 Android App 開發部門手工打包—過程中有許多的手動操作,可能會打錯字或什麼的—完成後再上傳到 server side 開放下載。 產品上線的時候這麼做沒問題,進入營運還這麼做,一定會耗費大量人力,身為工程師必定覺得難以忍受:工程師的工作就是在跟機器打交道,機器的目的就是讓人從重複的勞動中解放,身為工程師自然會想要用機器完成重複的工作。 一群工程師與產品經理於是聚在一起看看有什麼方法。我們要不要做一個 Document-based 的 Desktop App 呢?讓這個 App 預留了可以拖入圖片的 … Continue reading

Posted in Mac | Tagged , , | 2 Comments

WWDC 2015

今年 WWDC 在 6 月 8 日至 12 日舉辦,KKBOX 共有 5 位工程師與一位 PM 參加。 WWDC 分成 sessions 與 labs 兩個部分,在 Moscone West 這個可以容納五千人的會議廳中,sessions 在二、三樓舉辦,一樓則是報到區、用餐區以及好幾個 lab 區塊,sessions 就是你可以在蘋果網站上。而這幾年發展下來,如果你去了 WWDC 現場,你應該要把重點放在 labs 而不是 sessions。

Posted in Events, iOS, Mac | Tagged , , , | 1 Comment

KKBOX iOS 開發過程中使用的 Jenkins 環境

先跟大家說明:目前架上版本的 KKBOX iOS 版本(6.2.50)有一些問題,在背景播放離線歌曲一兩首歌之後會暫停播放,如果你遇到這個問題,請先試試看關閉「歌曲淡入淡出」功能。另外,其實我們在發現問題的時候,也已經第一時間解決,但大家也知道…一套 iOS App 從修正完畢,到送到用戶手中,中間有一個很麻煩的關卡…。 KKBOX 在 2011 年左右在 iOS 版本的開發流程中導入 Jenkins,目前 iOS 開發部門負責大約七個主要產品,每個專案都透過 Jenkins 自動編譯每日發行版本,以及定時自動執行單元測試。隨著專案發展,一開始建置的環境已經沒有辦法因應現在的需求,所以我們最近大幅調整了 Jenkins 環境的架構。 建置 CI 系統的主機要能夠滿足兩個需求:速度快與容量大。 我們希望在每次改動程式碼之後,CI 主機都可以快速編譯出新版本,確認現在的程式碼沒有編譯問題,也可以讓測試人員隨時都可以拿到最新的版本,所以主機的編譯速度要快。 另一方面,編譯出愈多的版本,也就等於是要 archive 更多的檔案,這樣當測試版本出現問題時,我們也可以直接去 Jenkins 找到當初版本的 debug symbol 確認問題—畢竟有些 crash 不見得可以被 HockeyApp 上收集到做過 symbolicate 過的 crash … Continue reading

Posted in iOS | Tagged , , , | 7 Comments