原创 Activity的生命週期--讀書筆記

Activity作爲四大組件之首,也是我們最常用的,使用最爲頻繁的組件.在正常情況下,除了Dialog,Toast以及Window之外,我們能見到的界面也就是Activity. 正常情況下的Activity的生命週期 ①

原创 註解(淺談Dagger,ButterKnife,Roboguide)

花了將近一個星期的時間,把這三個框架都試着用了一下,至於是否實用,我覺得這是仁者見仁,智者見智的事,如果你的技術不夠牛掰,那麼我建議你用一下ButterKinife就可以了,至於其他兩個,用起來確實有些麻煩,並且,可能都不知道它

原创 Android的消息機制

Android 的消息機制主要指的是Handler的運行機制,Hander的運行需要底層的MessageQueue和Looper的支撐.MessageQueue只是一個消息的存儲單元,它不能去處理消息,而Looper就填補了這個

原创 Activity的生命週期(2)

異常情況下Activity的生命週期的分析 上次我們說到Activity的生命週期,那些都是一般情況下,會出現的,但是總有一些特殊的情況出現,那麼此時Activity的生命週期又是怎麼樣的呢? 情況一: 資源相關的系統配置發生改變

原创 解決音頻,視頻的方案

最近在研究音頻,視頻的解決方案,查了不少的資料,頁看了不少的博客,挑挑揀揀,只覺得有這麼幾種方案還可以考慮:Vitamio , ijkPlay , CrossWark 以及騰訊X5.下面我們來比較一下,這幾種的方案的優缺點.

原创 Monkey之初識--環境配置

自動化測試是什麼?自動化測試是指軟件測試的自動化,軟件測試就是在預設條件下運行系統或應用程序,評估運行結果,預先條件應包括正常條件和異常條件。自動化測試是把以人爲驅動的測試行爲轉化爲機器執行的一種過程. Android開發中最

原创 Moneky之命令參數

上一篇文章我們介紹了Monkey,並且說了Monkey的環境配置,現在這篇博客,我們就研究一下Monkey到底怎麼用的… 首先我們要知道我們要測試的包名是什麼? 如何獲取包名? 一般我們測試的都是第三方包,所以我們可以通過

原创 Android的線程與線程池

線程在andriod中是一個很重要的概念,從用途上來說主要分爲主線程和子線程,其中主線程又稱爲UI線程,在主線程中是不能操作耗時工作的,由於andriod的特性在UI線程中操作耗時工作會導致ANR(application not

原创 Monkey之Log分析

上一篇我們提到了如何使用Monkey測試,但是,測試完畢之後,我們又該如何分析呢?我們怎樣才知道我們的程序是否存在問題呢?這一篇就讓我們試着分析一下Monkey打印的Log 吧! 什麼時候會出現Log文件? 一般在如下幾種情況

原创 java設計模式之單例

java中單例模式是一種常見的設計模式,單例模式的寫法有好幾種,這裏主要介紹三種:懶漢式單例、餓漢式單例、登記式單例 單例模式有以下特點:   1、單例類只能有一個實例。   2、單例類必須自己創建自己的唯一實例。   3、單例

原创 多線程3

線程組:(ThreadGroup) 把多個線程組合到一起,可以對一批線程進行分類管理,java允許程序直接對線程組進行控制。 默認情況下線程屬於main的線程組,通過getThreadGroup().getName(

原创 仿微信點擊回覆,輸入框定位到列表的底部

最近設計提了這麼一個需求,就是要仿微信的朋友圈,點擊回覆的時候,輸入框要定位到當前item的底部,爲了這麼一個小小的功能,把姐姐我折騰了三天,真的是用盡了辦法,最後發現,其實真的不是很難,功能實現之後,我的第一反應就是要寫一篇博客,希望

原创 多線程2

synchronized使用 同步代碼塊:synchronized放在對象前面,限制一段代碼的執行。鎖可以是任意對象,但多個線程用的必須是同一把鎖。 synchronized(鎖對象){ 需要同

原创 git的基本教程

項目開發的時候,往往不是一個人都能搞得定所有的代碼,而是需要一個團隊,大家的協作.此時,一個好的代碼管理工具就顯得尤爲的重要.git 和svn同樣都是代碼管理工具,他們的區別在哪裏?優缺點又在哪裏呢? svn是集中式的版本控制工具

原创 一個女程序員的年終總結

以前的時候從來未曾想過自己真的會做一個程序員,也從來沒有想過做程序員會是一種怎樣的體驗.或許在別人的眼中,女人敲代碼就像女人搬磚一樣….. 外面的世界很精彩,也很殘酷…. 當實習結束離開讀書的那個小城市,懷揣着對大城市的嚮往,以爲自己