ANR的定義 系統(tǒng)通過交互組件和用戶交互進(jìn)行超時(shí)監(jiān)控,主要用來判斷應(yīng)用進(jìn)程是否存在卡死或者響應(yīng)過慢的問題。 導(dǎo)致ANR的原因 應(yīng)用層導(dǎo)致ANR: 函數(shù)阻塞:死循環(huán),主線程IO...
ANR的定義 系統(tǒng)通過交互組件和用戶交互進(jìn)行超時(shí)監(jiān)控,主要用來判斷應(yīng)用進(jìn)程是否存在卡死或者響應(yīng)過慢的問題。 導(dǎo)致ANR的原因 應(yīng)用層導(dǎo)致ANR: 函數(shù)阻塞:死循環(huán),主線程IO...
OpenGL概述 OpenGL(Open Graphics Library)是一個(gè)跨平臺的、語言無關(guān)的應(yīng)用程序編程接口(API),用于開發(fā)生成二維和三維圖像的應(yīng)用程序。這個(gè)A...
H.264編碼詳解 H.264即AVC(Advanced Video Coding),在下文中首先說明H.264編碼的碼流結(jié)構(gòu),然后會進(jìn)一步深入說明H.264編碼的方法和原理...
Kotlin源碼結(jié)構(gòu)分布位置: 協(xié)程源碼結(jié)構(gòu)協(xié)程源碼按道理可以分成兩個(gè)倉庫,一個(gè)是Kotlin倉庫,一個(gè)是Kotlin協(xié)程倉庫。Kotlin倉庫 https://github...
打包打開大概概括為幾步: 通過aapt打包res資源文件,生成R.java,resource.ars和res文件,resources.arsc保存的是一個(gè)資源索引表,可以理解...
熱更新和插件化 插件化的內(nèi)容是原來apk沒有的東西,熱更新是在原來的基礎(chǔ)做改動。 插件化在代碼中有固定的入口,熱更新可能改變?nèi)我馕恢玫拇a。 熱更新的原理 虛擬機(jī)在加載cla...
1.初始化加入依賴:com.squareup.leakcanary:leakcanary-android他初始化是內(nèi)部定義了一個(gè)ContentProvider然后再Conte...
Binder的定義 從機(jī)制和模型角度來說,Binder是一種Android中實(shí)現(xiàn)跨進(jìn)程通信的Binder機(jī)制模型。 從模型的結(jié)果和組成來說,Binder是一種虛擬的物理設(shè)備驅(qū)...
Gilde三大主線 Gilde.with(this).load("url").into(iv_image) 使用來很簡單,但是源碼卻是異常龐大,所以這次只挑一些重點(diǎn)的去看。 ...
SDP結(jié)構(gòu)要先熟悉一下 SDP type=value的格式而且對大小敏感,會話級別是從v=開始的,字段必須是(REQUIRED)有的字段是可選字段 。這樣可以增加錯(cuò)誤檢測能力...
Okhttp的大體流程 通過創(chuàng)建OKhttpClient創(chuàng)建一個(gè)Call,發(fā)起同步或者異步請求。 Dispatcher對創(chuàng)建的RealCall(Call具體實(shí)現(xiàn)類)進(jìn)行統(tǒng)一管...
WebRTC我編譯的97版本的webrtc_android,這里我就以Android視角從視頻采集,渲染,編碼,發(fā)送四個(gè)流程來答題說一下WebRtc的視頻推流過程, 采集 A...
在說Retrofit之前 必須有了解動態(tài)代理,因?yàn)镽etrofit的核心就是動態(tài)代理。 動態(tài)代理 動態(tài)代理就是在運(yùn)行時(shí)動態(tài)創(chuàng)建某個(gè)interface的實(shí)例,通過Proxy.n...
在回聲消除中webrtc的97版本 aec3應(yīng)該是最好的,這里說一下單獨(dú)拿出aec做測試的記錄。 配置開發(fā)環(huán)境使用過FFmpeg和Opnecv的sdk類似,把webrtc的庫...
WebRTC jitterbuff 緩存機(jī)制 webrtc在弱網(wǎng)環(huán)境下或者網(wǎng)絡(luò)不穩(wěn)定的情況會出現(xiàn)網(wǎng)絡(luò)抖動導(dǎo)致數(shù)據(jù)傳輸問題,webrct加入了jitterbuff 進(jìn)行保證網(wǎng)絡(luò)...
下載MNN開源框架 git clone https://github.com/alibaba/MNN.git[https://github.com/alibaba/MNN.g...
在https://central.sonatype.com[https://central.sonatype.com]注冊 賬號 建議用github直接登錄,因?yàn)樵趧?chuàng)建nam...
Gradle中,沒有Assemble任務(wù) 1. 在編譯aar包或者編譯module的時(shí)候,沒有release包,我們一般都是通過assemble進(jìn)行編譯。 如果在Gradle...