你是否厭倦了這種寫法? 亦或是這樣的代碼? 那么今天,我將帶你實(shí)現(xiàn)不一樣的渠道、rom差異。 廢話不多,先看效果~ 我們這里隨便舉個(gè)例子,不同平臺(tái)打印不同的log,可以看到,...
你是否厭倦了這種寫法? 亦或是這樣的代碼? 那么今天,我將帶你實(shí)現(xiàn)不一樣的渠道、rom差異。 廢話不多,先看效果~ 我們這里隨便舉個(gè)例子,不同平臺(tái)打印不同的log,可以看到,...
原來今天才是周六~那就今天水 自定義view怎么實(shí)現(xiàn),我今天不想多說,畢竟也不是給新人看的。 那么今天直接講一些實(shí)現(xiàn)自定義view的小技巧吧。 本期舉例的自定義view只是拋...
今天周六~水一天。 之前的路由篇[http://www.itdecent.cn/p/ce659c9c703a]我們大概講了一個(gè)簡(jiǎn)單的模塊化路由的實(shí)現(xiàn)思路,但是用起來比較麻煩...
我們的app開發(fā)時(shí),都會(huì)有一個(gè)splash頁(yè)面,用于提升用戶體驗(yàn)。 原因是android app在啟動(dòng)時(shí),由于application初始化等原因會(huì)有一個(gè)短暫的延遲,導(dǎo)致點(diǎn)擊l...
如果有本方案不適用的業(yè)務(wù)場(chǎng)景,請(qǐng)留言指出~筆者將視情況擴(kuò)展或給出解決思路~
手把手教你搭建android模塊化項(xiàng)目框架(九)小試牛刀——優(yōu)雅的登錄方案你是否厭倦了這種寫法? 亦或是這種寫法? 那么今天,我將給你一個(gè)優(yōu)雅的登錄實(shí)現(xiàn)方案~ 說到登錄,我們不得不聊到一個(gè)設(shè)計(jì)模式——狀態(tài)模式,顧名思義,他是專門用來處理不同狀態(tài)的不...
你是否厭倦了這種寫法? 亦或是這種寫法? 那么今天,我將給你一個(gè)優(yōu)雅的登錄實(shí)現(xiàn)方案~ 說到登錄,我們不得不聊到一個(gè)設(shè)計(jì)模式——狀態(tài)模式,顧名思義,他是專門用來處理不同狀態(tài)的不...
經(jīng)過幾期的基礎(chǔ)封裝,我們的模塊化項(xiàng)目基本已經(jīng)達(dá)到了可用的狀態(tài),那么今天就來試試開發(fā)一個(gè)帶搜索的列表頁(yè)面開發(fā)吧~ 好吧,我承認(rèn)偷懶了,中間漏掉了mvvm、paging的基礎(chǔ)封裝...
在andriod項(xiàng)目開發(fā)過程中,我們時(shí)常有這樣的需求,例如:動(dòng)態(tài)切換域名,動(dòng)態(tài)切換abtest,動(dòng)態(tài)切換服務(wù)器配置項(xiàng)等,但是開發(fā)過程中總是讓服務(wù)器配合修改或者每次都修改代碼后...
在androidx.lifecycle:lifecycle-common:2.6.1中,lifecycleScope.launchWhenResumed 標(biāo)記了Depreca...
上期我們聊到room,本期就來簡(jiǎn)單說一下room的用法。常規(guī)room我們不聊怎么用了,跟著官方文檔一步一步使用即可。 傳送門[https://developer.androi...
本來想連room一起封裝好的,但是臨時(shí)有事,就先發(fā)個(gè)mmkv,下期我們研究room廢話不多,先看效果 要達(dá)到這樣的封裝效果,我們先簡(jiǎn)單了解一個(gè)類,ReadWritePrope...
廢話不多說,先看效果 android6.0以上需要?jiǎng)討B(tài)請(qǐng)求權(quán)限,這里不多廢話了,想達(dá)到一個(gè)簡(jiǎn)單高效的權(quán)限使用方式,就跟我一步一步去封裝。之前比較好用的權(quán)限庫(kù)是rxPermis...
前面我們說到,目前網(wǎng)絡(luò)框架選擇基本都為retrofit,目前算是最好用的android網(wǎng)絡(luò)框架之一了。今天我們來封裝一下retorit,讓他更加好用。 以下代碼使用的life...
前兩節(jié)我們了解了android框架搭建的基礎(chǔ),這期我們來補(bǔ)充之前留下的坑:模塊間通訊。模塊間由于互相隔離,導(dǎo)致我們不能直接調(diào)用到其他模塊間的方法、activity及fragm...
模塊化的目的: 保證項(xiàng)目的可維護(hù)性。 加快編譯速度,提升開發(fā)效率。 有一定的復(fù)用性,新項(xiàng)目可復(fù)用模塊,節(jié)省開發(fā)資源。 android項(xiàng)目目前已經(jīng)成熟了很多,官方也在尋找合適的...
本系列旨在幫助android新人搭建屬于自己的項(xiàng)目框架。由于篇幅較長(zhǎng),本人時(shí)間有限,因此更新系列可能周期較長(zhǎng)。本篇搭建框架適用于中大型項(xiàng)目。 經(jīng)典框架選取 總模式:mvvm-...
在維護(hù)老項(xiàng)目中,由于項(xiàng)目使用了rxjava,但是新代碼又大多數(shù)使用Kotlin而不想使用rxjava時(shí),尤其是使用flow想做線程同步時(shí)可以將rxjava轉(zhuǎn)換為flow進(jìn)行使...
最近突發(fā)奇想編譯一下ffmpeg最新版本,使用以前的腳本竟然失敗了,想在網(wǎng)上找個(gè)現(xiàn)成的用用,居然也沒有,折騰半天所以寫個(gè)文章記錄一下。環(huán)境 :ubuntu 21.10,ndk...
使用paging3開發(fā)時(shí),官方demo只有包含LinearLayout的部分代碼,當(dāng)我們需要配合GridLayoutManager(spanCount=2)時(shí),發(fā)現(xiàn)foote...
如何解決Can not perform this action after onSaveInstanceState 先分析問題發(fā)生原因 通過分析源碼我們找到,當(dāng)activit...