我自己寫的蘋果應用程序終於上架了,朋友們多多支持啊!
(2012年12月,由於蘋果開發賬號已經過期了,產品下架了)
XQViewer
用iPhone或iPad掃描該二維碼可直接安裝XQViewer應用。
一款中國象棋棋譜瀏覽程序,當前只支持PGN格式文件的播放,系統內置了2012和2011年全國象棋甲級聯賽的棋譜文件,以后再陸續更新更多的棋譜文件。
版本V1.0功能說明:
1)識別PGN格式的棋譜,當前還不支持注釋
2)點擊棋盤右下部分,下一步
3)點擊棋盤左下部分,前一步
4)點擊棋盤右上部分,最后一步
5)點擊棋盤左上部分,第一步
6)在棋盤正上方顯示當前一個回合的棋譜
程序雖小,但從2011年7月開始接觸iOS編程,一路上全是新的問題,或是問人或是從網上查找解決方案,用GTD的思想分解出了如下的細小的步驟不斷執行才能將此小程序發布:
- 在Windows里裝VMWare虛擬MAC操作系統,安裝xcode開發工具,忍受了慢速和不穩定的折磨
- 學習iPhone上界面開發指南,原來iPhone上各種元素都有嚴格的規范,不是隨便設計的
- 從蘋果商店里查找類似的軟件,看看別人寫的軟件的界面和功能,思考自己的軟件原型
- 在xcode里配置SVN
- 學習xcode集成開發環境的功能,學習快捷鍵
- 解決TableView翻頁時崩潰的問題
- 申請蘋果開發者賬號
- 設計軟件原型,在后面的真機試用后,再不斷地修改和調整,特別是導航、圖片和按鈕的放置等設計
- 寫出一大堆的需求了,分出了V1的最小需求集合,其它放在V2和以后實現,不然永遠發布不了
- 解析PGN格式的棋譜,要把中文縱列方式的棋譜轉換為坐標方式的格式,象的移動、兵的前中后的復雜情況解析起來都需要仔細的處理
- 把文件從資源包中解開放到Document文件夾中
- 學習動畫編程,這個程序里只用了簡單的動畫,把一個圖片從一個位置搬到別外一個位置
- 學習UIImageView的編程
- 學習NSZombieEnabled技巧,都是內存管理惹的禍
- 試驗在xcode中開發靜態庫的辦法,但在最后的發布時還是遇到了問題,最后還是用了一個xcode工程的辦法來制作的安裝包
- 學習手勢編程,這里只用了簡單的tap手勢,但還是對原有的文本框中的事件造成了干擾,解決這個問題也費了一番功夫
- 解決內存泄漏的問題,之前還是用的xcode3.2.5,還沒有ARC,內存管理還是相當的麻煩
- 從xcode3升級到xcode4之后,功能發生巨大變化,花了不少時間學習。其中遇到過Universal程序顯示不出來主窗口的問題
- 學習loadView和viewDidLoad的區別
- 編寫FEN代碼初始化盤面的代碼
- 學習TableView的編程,里面顯示所有賽事的列表
- 學習iOS里的init方法編寫注意事項
- 學習xcode里的單元測試的辦法
- 從Windows上收集一堆PGN高手對戰的棋譜
- 解決導航欄的頂端的Back顯示不出來的問題
- 委托他人制作軟件的圖標、棋盤和棋子的圖片
- 問有軟件發布經驗的朋友,提前准備軟件發布要注意的事項
- 在真機上測試,看看操作起來的方便程度,運行時有電話打進來時有沒有問題
- 用sszip解壓縮一堆PGN文件到Document目錄中
- 解析PGN里的評注,還未寫好,在V1版本里暫時沒有加上此功能。
- 加上launch Image
- 查了查adMob的資料,最后鎖定用iAD
- 學習iAD的編程技術,一開始加上廣告還是需要費上幾天功夫的
- 看在線購買的編程指南,准備在V2里實現
- 棋子的位置並沒有准確地落在交叉點上,還是需要微調的
- 發布前用真機對功能進行大量的點擊測試
- 提交到蘋果商店,在打包程序時,開發證書就折騰2天,review的過程至少要1周多,打回來后修改再提交,再等待,前前后后又1個月