建議去瞅瞅hotspot對reference和art實(shí)現(xiàn)的差異
談?wù)?LeakCanary 原理 --標(biāo)準(zhǔn)答案內(nèi)存泄漏傳統(tǒng)意義上的內(nèi)存泄漏是至忘記手動(dòng)釋放內(nèi)存,導(dǎo)致未釋放的內(nèi)存不可使用的現(xiàn)象。 jvm 的內(nèi)存泄漏jvm的內(nèi)存泄漏指的是我們本不再需要的內(nèi)存,躲過了垃圾回收的現(xiàn)象。and...
建議去瞅瞅hotspot對reference和art實(shí)現(xiàn)的差異
談?wù)?LeakCanary 原理 --標(biāo)準(zhǔn)答案內(nèi)存泄漏傳統(tǒng)意義上的內(nèi)存泄漏是至忘記手動(dòng)釋放內(nèi)存,導(dǎo)致未釋放的內(nèi)存不可使用的現(xiàn)象。 jvm 的內(nèi)存泄漏jvm的內(nèi)存泄漏指的是我們本不再需要的內(nèi)存,躲過了垃圾回收的現(xiàn)象。and...
電容屏可實(shí)現(xiàn)對人體電流的感應(yīng)定位到具體觸摸位置,(巴拉巴拉硬件驅(qū)動(dòng)巴啦啦),進(jìn)入代碼,
ss進(jìn)程啟動(dòng)會(huì)啟動(dòng)ims,而ims會(huì)創(chuàng)建epoll監(jiān)聽非阻塞pipe并創(chuàng)建irt idt,android所有的設(shè)備操作都會(huì)在/dev/input目錄產(chǎn)生節(jié)點(diǎn),外部設(shè)備的插拔也會(huì)導(dǎo)致節(jié)點(diǎn)的刪除增加,linux提供INotify提供監(jiān)聽文件的變化并寫入到inotifyFd描述符對應(yīng)對象中,利用epoll監(jiān)聽inotifyFd可實(shí)現(xiàn)沒輸入則休眠,有輸入則立刻監(jiān)聽對應(yīng)信息并生成對應(yīng)對象發(fā)送給idt內(nèi)的隊(duì)列并喚醒(idt無數(shù)據(jù)時(shí)則休眠),當(dāng)idt隊(duì)列內(nèi)有數(shù)據(jù)時(shí)(這部分和Handler機(jī)制幾乎一致),則通過socket溝通ams并通過binder分發(fā)給應(yīng)用,剩下的就是binder InputEventReceiver等分發(fā)一直到activity
那天有人問我,Android 的事件到底是怎么來的?本文主要針對的是 我們認(rèn)為的事件分發(fā) 之前的流程,也就是說事件是怎么來的?一路又是怎么走下去的? 那為什么要研究事件的來龍去脈呢?其實(shí)我寫本文之前是知道事件是以下的這種走向傳...
這2個(gè)小時(shí)有點(diǎn)浪費(fèi)了
花了兩個(gè)小時(shí)寫的自定義Toast該自定義Toast 可以指定Toast 背景色,文本大小,文本顏色,是否在文本左側(cè)顯示logo,logo大小以及l(fā)ogo在文本左側(cè)多遠(yuǎn) 廢話不多說上代碼 貼代碼 packag...
@瘋狂的哈丘 通俗易懂就是重入鎖調(diào)用tryLock如果是同一線程的話還是會(huì)返回true,不可重入的話就可以利用這個(gè)特性輕易判斷出線程是否在運(yùn)行狀態(tài),如果不是運(yùn)行狀態(tài)獲得鎖直接可以停止,如果調(diào)用shutdownNow的話簡單地說就是直接interupt強(qiáng)硬打斷線程獲得鎖狀態(tài)
深入分析java線程池的實(shí)現(xiàn)原理簡書 占小狼[http://www.itdecent.cn/users/90ab66c248e6/latest_articles] 轉(zhuǎn)載請注明原創(chuàng)出處,謝謝! 2019/...
stub還是什么其他的并沒有太大意義,aidl也不過就是個(gè)標(biāo)準(zhǔn)而已,我只需要在client server隨便找個(gè)類繼承Binder實(shí)現(xiàn)onTransact,客戶端直接操作iBinder,直接用transact和onTransact利用Parcel通信就行了。。。拿aidl面試,和問String str=new String("abc")問一個(gè)人有沒有了解過jvm運(yùn)行時(shí)內(nèi)存一樣。。R大早就批評過了
Android面試一天一題(Day 36:AIDL)上一章節(jié),我們講到了Android中的Binder機(jī)制,一個(gè)Android開發(fā)天天用到,但又不明就理的神密存在。這一節(jié)接著Binder這個(gè)話題,講一講AIDL,讓大家對Bin...
通俗易懂,不過作者好像也有點(diǎn)兒吃力。哈哈哈哈
ActivityManagerService啟動(dòng)過程(基于android 8.0)下邊這個(gè)圖是7.0 的 1.看得出AMS 實(shí)現(xiàn)了看門狗(Watchdog.Monitor)以及電量監(jiān)控(BatteryStatsImpl.BatteryCallback) 接...
這種方案不行了,已經(jīng)被打上@hide了
Activity插件化原理第一種方案:Hook Instrumentation溫馨提示:閱讀本文需要15-20分鐘(一大波代碼)公眾號(hào):顧林海(每天更新優(yōu)質(zhì)文章) 今天,我們來解決一個(gè)問題: Activity插件化原理第一種方案:Hook Instru...
vm是不持有view的,這封裝不是很符合mvvm模式的思想
Android 全新MVVM框架搭建閑話不多少,還是老套路,處理一個(gè)登陸的業(yè)務(wù)。詳細(xì)的介紹MVVM我就不多說了,網(wǎng)上一大把,畢竟吹水還是我的弱項(xiàng)。主要實(shí)現(xiàn)的功能有兩個(gè)輸入框,一個(gè)登陸按鈕,兩個(gè)TextView顯...