/p/aedict/
這個是個日語輸入法
初步學習:-1個月
1.去電驢上下壹份mars的視頻。先淺淺的了解下android應用開發、整體架構和思路。mars的視頻做的挺不錯。
2.在eclipse中導入api demos。在手機/模擬器上運行apidemos,裏面的實例非常棒。可以把例子中涉及到項目的地方標註下,然後著重看看這部分的代碼.
逐漸深入:-3個月
1.有選擇的閱讀android api中的Dev Guide部分。
2.閱讀android中的resources部分。
上面的文章比較多,也不需要全部閱讀。只是在做過初步工作後,有選擇性的著重看壹些相關內容。相關內容應該不僅僅包括項目直接相關的,還包括壹些平臺基礎知識。這些東西應如何選擇是在初步學習階段中應該明確的。
3.有空上上android相關比較好的社區,看看高手總結。如eoe、bus之類的。
準備階段:-3個月
閱讀開源的項目。
樓下有的朋友也提了壹些建議。我覺得都挺好的,到了這個時候就該開始閱讀源碼進行學習了。
這裏的關鍵在於慢慢扣源碼,先找容易看到的類。看著註釋慢慢理解,碰到不熟悉的類就查android的api。
閱讀是個長期的過程,然後必須要產生壹些成果:
a.與輸入法相關的關鍵接口有哪些?關鍵類有哪些,職責是什麽?
b.輸入法的架構是怎樣的?組件之間如何交互?
c.數據從哪裏來?如何進行組織?
3.開發階段:
叠代開發。從最小的原型開始做起。
最小原型包括:最基本的輸入法功能,輸入字母,確定輸入,顯示字典,選擇完成輸入。最基礎的測試數據。
在完善輸入法基本功能上叠代開發。包括聯想輸入,更智能的分詞,以及符號和手寫識別等。還有ui美化等等。
既然妳這邊有學c的同學,那麽在壹些關鍵瓶頸方面。也可以使用NDK做後續優化。