【android開發】小說閱讀器

來源:互聯網
上載者:User

新人開發理念

1 activity 是每個功能頁面的入口

2 動畫效果需要配合資源檔中,動畫的定義

3 檔案的讀取是有許可權控制的

4 布局應該盡量簡單,這樣才能讓程式跑的飛快

前記

重新開始一個新的apk項目,之前的“公用單車”沒搞完又放棄了,希望這個項目不會繼續無疾而終。把自己做這個項目的過程用部落格記錄下來,也算是對自己的一個督促。

規劃

1 先做一個基礎demo

2 完善功能

3 重構

第一日

之前找了一個coolreader 的源碼,感覺聽靠譜的,今天先參考下。

對此源碼有興趣的童鞋,可以到網上搜尋下,還挺好找的。地址我就不提供了。

1 關於builder

 

查看項目屬性時候發現的,突然想起,android的編譯器是挺好玩的,最近公司的項目在做個android 套殼的功能:繞過系統的檢測,利用已經安裝的apk調用沒安裝的apk。

原理說穿了,也聽簡單,就是利用java 的反射機制。但是遇到一個問題,被調用的apk,包名並不一致,一般開發android 的人都知道,開發的時候編譯,如果R 檔案不在對應的包名路徑當中,是會報錯的,那這個編譯報錯,其實就是android pre compiler 檢查出來的。

另外開發的時候從workspace中匯入存在的android 工程,是會報錯的,這個也是android pre compiler 犯傻,好象是個bug,解決方案就是把workspace 定義到別的位置去。

2 關於intent

從文檔看到,intent 是對動作的描述,用來啟動activity,service,或單純用來通訊。而且還能在androidManifest 中利用intent-filter 進行處理。

從construct 看出,能傳遞action,context 和 對應的class,用於後續的startActivity 或者 bindService

3 關於androidManifest

這個檔案相當重要,如果要調用activity,需要在此檔案中註冊,而且檔案本身是加密過的,雖然解密方法已經到處都是。

重要內容:apkPackageName, apkVersionName, apkVersionCode(商店之流用於檢測應用版本號碼)

4 關於io

android 的io 還是很方便的,利用File.listFiles() 就可以擷取所有的檔案。

而且HttpClient 還特地整合到android 中去,非常方便使用。

5 listAdapter

這個東西很好用,直接可以綁定需要List,可以方便做列表管理,和mfc 的dataAdapter 很類似,也有對應的文章管理內容

6 showDialog

showDialog(int),這個定義還是挺好用的,但是必須得明確,需要配合new AlertDialog.Builder(this).create();注意new Builder(this)的時候,context 傳進去的應該是當前activity(extends from context),而不是this.getApplicationContext(),因為getApp….. 返回的是applicationContext,這個context 是全域唯一的,但是並不支援後續showDialog 的需求,說到這個,activityContext 則是當前activity 的context,因為activity 可以銷毀,重建,所以context 應該也會被銷毀,重建。

那麼關於這個context 在何時使用,則要看調用的對象是長周期還是短周期,另外還要看對應的activity 的生命週期,否則會跑著跑著程式掛掉,甚至記憶體流失。

相關文章

聯繫我們

該頁面正文內容均來源於網絡整理,並不代表阿里雲官方的觀點,該頁面所提到的產品和服務也與阿里云無關,如果該頁面內容對您造成了困擾,歡迎寫郵件給我們,收到郵件我們將在5個工作日內處理。

如果您發現本社區中有涉嫌抄襲的內容,歡迎發送郵件至: info-contact@alibabacloud.com 進行舉報並提供相關證據,工作人員會在 5 個工作天內聯絡您,一經查實,本站將立刻刪除涉嫌侵權內容。

A Free Trial That Lets You Build Big!

Start building with 50+ products and up to 12 months usage for Elastic Compute Service

  • Sales Support

    1 on 1 presale consultation

  • After-Sales Support

    24/7 Technical Support 6 Free Tickets per Quarter Faster Response

  • Alibaba Cloud offers highly flexible support services tailored to meet your exact needs.