一妓雾、幾種依賴方式 Compile 默認(rèn)的依賴方式炬灭,任何情況下都會(huì)依賴询兴。 Provided 只提供編譯時(shí)依賴,打包時(shí)不會(huì)添加進(jìn)去。 Apk 只在打包Apk包時(shí)依賴,這個(gè)應(yīng)該是比...
![240](https://cdn2.jianshu.io/assets/default_avatar/9-cceda3cf5072bcdd77e8ca4f21c40998.jpg?imageMogr2/auto-orient/strip|imageView2/1/w/240/h/240)
一妓雾、幾種依賴方式 Compile 默認(rèn)的依賴方式炬灭,任何情況下都會(huì)依賴询兴。 Provided 只提供編譯時(shí)依賴,打包時(shí)不會(huì)添加進(jìn)去。 Apk 只在打包Apk包時(shí)依賴,這個(gè)應(yīng)該是比...
目錄 廢話 正題 搜索關(guān)鍵方法 初始化原理 上下文賦值流程 一些問題 0.前言 LeakCanary 不多做介紹了,用過的都知道是來干嘛的盛险,不多比比。https://squa...
??LiveData是一個(gè)可被觀察的數(shù)據(jù)持有者類勋又。與常規(guī)的Observable不同苦掘,LiveData能意識(shí)到應(yīng)用程序組件的生命周期變化,這意味著它能遵守Activity楔壤、Fr...
1.問題 公司app有banner 展示鹤啡,后臺(tái)同學(xué)有反應(yīng)banner 埋點(diǎn)數(shù)據(jù)上報(bào)次數(shù)異常多,多達(dá)億級(jí)別蹲嚣,差點(diǎn)把kafaka 多給干爆了??递瑰。 banner是在Fragment...
在 Java 程序中,我們擁有多種新建對(duì)象的方式隙畜。除了最為常見的 new 語句之外抖部,我們還可以通過反射機(jī)制、Object.clone 方法议惰、反序列化以及 Unsafe.all...
前言 自定義View原理是Android開發(fā)者必須了解的基礎(chǔ)俯萎; 在了解自定義View之前,你需要有一定的知識(shí)儲(chǔ)備倍试; 本文將全面解析關(guān)于自定義View中的所有知識(shí)基礎(chǔ)讯屈。 Car...
glide已經(jīng)是異步加載了吧蛋哭,有什么方法優(yōu)化recyclerview嗎
Android圖片加載框架——Glide(Glide v4)前言 android中圖片加載框架有很多县习,所有框架最終達(dá)到的目都是在Android平臺(tái)上以極度簡(jiǎn)單的方式加載和展示圖片,如果我們每個(gè)都拿來學(xué)習(xí)和使用的話,這樣會(huì)極大的浪費(fèi)我們...
類似于AOP,思路確實(shí)不錯(cuò)躁愿。但是有一些感覺還是必須要在基類中處理的叛本,比如TAG的獲取,一般都會(huì)在基類中取文件名彤钟;Context也是直接獲取的来候。在子類中打印日志,或者使用上下文統(tǒng)一并且方便(當(dāng)然這些看似“必須的”都是和Activity無關(guān)的逸雹,有關(guān)的當(dāng)然都可以移到ActivityLifecycleCallbacks中去):
mActivity = this;
mContext = this;
TAG = this.getClass().getSimpleName();
BaseActivity是頂層封裝营搅,就像java里的io類一樣,BaseActvity根本不可能只存在一個(gè)梆砸,稍微有點(diǎn)java基礎(chǔ)的設(shè)計(jì)base類都會(huì)采用裝飾者模式转质,封裝是要抽出共同點(diǎn),而不是寫一個(gè)極其龐大且臃腫的base類帖世,基本高明的流程是這樣的休蟹,base抽象通用接口,各司其職的baseActivity繼承上層base或抽象接口給下層base
問一下為什么要加鎖呀日矫?
Android退出應(yīng)用程序方法總結(jié)在Android開發(fā)中赂弓,我們運(yùn)行了應(yīng)用程序后,都需要退出應(yīng)用的哪轿,那么該如何退出應(yīng)用盈魁,又都有哪些實(shí)現(xiàn)方式呢?今天就為大家整理分享一些退出應(yīng)用程序的方法窃诉,一起來看看吧备埃! 更新內(nèi)容...
問一下為什么要加鎖呢?增加和移出都是在activity生命周期里褐奴,都是在主線程的呀按脚?
Android Activity 全局管理 終極解決方案Android Activity 全局管理 終極解決方案 管理Activity的好處 在Android 開發(fā)中 Activity 的管理 對(duì)于一個(gè)App是至關(guān)重要的,管理所有...
一、背景 隨著項(xiàng)目逐漸擴(kuò)展脖旱,業(yè)務(wù)功能越來越多堪遂,代碼量越來越多,開發(fā)人員數(shù)量也越來越多萌庆。此過程中溶褪,你是否有過以下煩惱? 項(xiàng)目模塊多且復(fù)雜践险,編譯一次要5分鐘甚至10分鐘猿妈?太慢不能...
前言 最近好幾個(gè)朋友問我吹菱,多Url怎么處理,這里我們就說說這個(gè)彭则。 【Android架構(gòu)】基于MVP模式的Retrofit2+RXjava封裝(一)[https://www.j...
這叫無德初始化??
以后清單文件里各種providers
無侵入式獲取全局Context當(dāng)我們?cè)谑褂玫谌綆祺⑺ⅲ蛘咦约悍庋b庫,如果需要需要用到Context時(shí)俯抖,一般做法就是將初始化方法暴露給調(diào)用方输瓜,讓調(diào)用方在初始化類庫時(shí),傳入Context芬萍。 解決方案 其實(shí)無侵...
前言 談起MVC尤揣,MVP和MVVM這三個(gè)最耳熟能詳?shù)腁ndroid框架,相信大家對(duì)它們都不陌生柬祠,但在實(shí)際的情況下芹缔,我們很難去界定和定義MVC、MVP和MVVM瓶盛,從本質(zhì)上來講他...
為了解決“A類的一個(gè)方法aaa的改變?cè)斐梢梅椒╝aa的所有類的聯(lián)動(dòng)”,所以增加了一個(gè)中間層轧房,只需要修改provider(描述了aaa的參數(shù))拌阴,而不需要修改所有聯(lián)動(dòng),看上去高大上奶镶,其實(shí)在Android開發(fā)中缺少這樣的場(chǎng)景使用迟赃;
而文中提到的5行代碼使用aaa,則完全是一個(gè)工廠就能解決的問題厂镇;
總之纤壁,在android里這么搞,除了逼格高捺信,沒看出來什么收益
簡(jiǎn)單粗暴的Dagger2使用介紹安卓基礎(chǔ)開發(fā)庫酌媒,讓開發(fā)簡(jiǎn)單點(diǎn)。Demo地址:https://github.com/LJYcoder/MvpDagger 學(xué)習(xí)/參考地址:https://www.jianshu...