原创 android 添加按電源鍵結束通話

            首先我們發現現在我們所用的android智能手機大部分都有當你在打電話時按power鍵來掛斷電話,一般都是在設置中。 我主要是在原生源碼中添加這一功能,主要用於學習。。。。先看一張圖:   看到那個按

原创 Android 自定義圓形進度條帶圖片旋轉

由於需求需要做一個圓形進度條並且中間填充的是圓形圖片並且能有旋轉,找了一下沒找到合適的,所以自己擼一個。 主要思路是兩個控件組合起來。 一個自定義畫的圓,另一個自定義一個圓形的imageview。 先看一下主佈局: <Relative

原创 Android Shape屬性大全

在Android開發中我們爲了美觀很多UI設計都需要一些背景圖片,爲了能減少資源圖片,減小apk的大小,以及更好的適配(當然.9圖片也可以很好的適配),Android爲我們提供了shape可以定義一定規則的形狀,如矩形(rectangle

原创 android源碼settings中顯示所有正在運行進程流程分析

下面我要分享一下這幾天看源碼中獲得正在運行進程的簡單流程: 也就是圖中所看到的 首先我們看到的是settings下的application(應用程序)下的manageApplication(管理應用程序)下的頁面,那麼要了解其流程,我

原创 Android 自定義SeekBar(滑塊跟隨進度條移動)

項目中有個播放音頻需要進度條並且播放時間跟隨進度條移動如下 下面看一下怎麼自定義這個控件,首先我們繼承 AppCompatSeekBar,然後在進度條上畫一個帶圓角的框,在裏面再畫進度時間 直接上代碼: /** * 帶進度的seek

原创 android多模塊解偶

在項目中我們隨着功能越做越多,工程會越來越大,隨之而來的我們會將某一功能單獨提取出來作爲一個模塊,但是我們有希望這個模塊是獨立的,不要和其他模塊相互引用,每個模塊的代碼不要引入在其他模塊。 爲了解偶我們想到接口的方式,每個模塊提供一套接口

原创 android 應用內浮標(非WindowManager全局懸浮)

app在應用內的浮標我們第一個會想到WindowManager去添加一個view,但是WindowManager是有缺陷的比如現在系統高版本需要權限,並且不是app的而是全局的一個浮標,也就是說如果你的app退到後臺如果你對這個浮標不做處

原创 Android 華爲手機音頻設置播放倍速mMediaPlayer.getPlaybackParams().setSpeed(speed)無效果

前期項目中做音頻播放過程中有設置播放倍速,正常的情況我們設置MediaPlayer參數就能實現,但是當在華爲手機上設置時候第一次mMediaPlayer.getPlaybackParams().setSpeed(speed)不僅沒效果而且

原创 Android 自定義通知欄適配

之前做音樂播放器的需求中有要通知欄部分,發現不同手機顯示的系統通知欄千奇百怪不統一,需要適配。分析發現目前大部分手機通知欄不是白色就是深色,因此經過考慮定義兩種不同的佈局,根據不同通知欄背景顏色來創建不同的RemoteViews。我們可以

原创 Activity onDestory延時10秒執行

前期做音樂播放器有個需求是桌面有一個浮標裏面有音樂封面,如果音樂在播放的時候封面圖片要旋轉,後面有發現只要我的浮標在並且圖片旋轉會導致activity的onDestory方法延時10秒回調。 百思不得其解,最後還是發現因爲使用Anima

原创 android定時關機

(記住一定要在源碼下編譯生成apk,也就是放在源碼的package/app下編譯!!!) 先看一下簡單的圖形界面吧,比較簡單的實現定時關機!!!(我的上傳資源中有整個工程:注:設定的關機時間是24小時制的) 當然我們是在eclipse下

原创 android長按返回鍵彈出關機框

今天剛好在PhoneWindowManager.java下看,當看到長按Home鍵的功能時,突然想到是不是可以長按back鍵來彈出關機框。。。。 有想法就試試唄。。。。。當然想法是根據長按home鍵來的,那麼我們應該可以模仿長按Home鍵

原创 android修改桌面底端快捷圖片爲Settings

好吧,我還是先上兩張張圖吧(前一張是沒修改的圖,後一張是修改過的圖)。。。。 本來在settings圖片的地方是瀏覽器的,現在我們要做的就將之改爲settings(當然你也可以添加另外的圖標實現功能): 我們在源代碼中找到Launche

原创 android自動屏幕旋轉流程分析

在android設置(Settings)中我們可以看到顯示(display)下有一個自動屏幕旋轉的checkbox, 如果我們勾選checkbox的話當你手機屏幕就會根據重量自動旋轉,那麼我們就分析一下這個過程: 在Display_se

原创 android usb大體流程解析

我分析這個流程也是從這張圖來分析: 首先kernel層是由kernel_imx/drivers/power/下的bq27x00_battery.c和power_supply_core.c以及power_supply_sysfs.c三個文件