回想兩年前開始做這個給美國寶寶使用的App,從無到有開始打造,因為關鍵的功能尚不知如何實作,於是邊學習邊開發。主要的用途就是讓寶寶自己開影片來看,因為影片檔案很多且很大,需要有個後台來存放,使用者必須從網路下載影片回來App,此外還有進階使用功能,便是應用內購買來下載更多影片。

回想當初製作時功能流程的複雜程度,App使用起來功能簡單又基本(使用者角度),然而開發起來就覺得實在好複雜(工程師角度),每個細節都要處理恰到好處,於是要花許多時間來測試與除錯。
像是下載影片、儲存影片、播放影片、加入我的最愛、應用內購買、限時播放與循環播放、播放清單、推薦親友、獎勵兌換、家長閘等等。不列出來我都忘記,列出來讓我又想起更多細節,乍看之下就只是個影片播放App,其中的奧秘都呈現在斷斷續續一年以來的開發過程之中。
可能因為自己還沒有小孩(快有了:P~),所以開發這個給寶寶使用的App,說實在的並沒有讓我很興奮,常會卡在某些功能流程上。
像是超大影片(例如100MB)要下載,就不能先全部載到記憶體,再轉存到硬碟,而是要每下載一小部分就從記憶體轉存到硬碟,以免超過App所能乘載的記憶體量而崩潰。
還有當時想要背景下載,但實際上只作前景下載,而且一次只能下載一個影片,所以使用者要開著螢幕乾等影片下載完畢,後來有加上背景下載(10分鐘內)。
此外,應用內購買必須模擬真實購買情況,好在Apple有區分開發環境(Development)與產品環境(Production),讓我可以無限次數購買,只是測試帳號購買產品後,沒有辦法回復到還沒購買的狀況,所以要不斷更改產品ID,或是增加測試帳號,來購買同一個商品。
我想這些學習理應感到很有成就感,只是我會想能不能沿用到未來的專案,當然多少都會對未來專案有助益,也希望開發過程中能有空閒來記錄下我的學習歷程,好讓未來的我或其他學子,能快速上手!
最近同事需要匯出開發文件,我在寶寶App也因應客戶需求,以Apple Doc的格式釋出,多虧一年半前我有記錄下來,直接貼連結給同事參考,節省不少學習時間。
最後的感想是,學海無涯,自己對新的事物也總是抱著好奇的心去認識與學習,然而時間有限之下,我必須選擇對我意義最多且價值最大的題目來實現。
HappyMan・迴響