小程序自動(dòng)化SDK(miniprogram-automator)為開發(fā)者提供了一套通過外部腳本操控小程序的方案,從而實(shí)現(xiàn)小程序自動(dòng)化測(cè)試的目的。通過該SDK,可以控制小程序跳...
小程序自動(dòng)化SDK(miniprogram-automator)為開發(fā)者提供了一套通過外部腳本操控小程序的方案,從而實(shí)現(xiàn)小程序自動(dòng)化測(cè)試的目的。通過該SDK,可以控制小程序跳...
引言 AsyncTask,相信大家已經(jīng)很熟悉了。它的內(nèi)部封裝了Thread和Handler,這讓我們可以將一些耗時(shí)操作放到AsyncTask,并且能將結(jié)果及時(shí)更新到UI上。A...
引言 OkHttp作為優(yōu)秀的網(wǎng)絡(luò)請(qǐng)求框架,已經(jīng)得到了廣大Android開發(fā)者的認(rèn)可。對(duì)于它的使用方法,大家也是非常的熟悉。例如同步同步請(qǐng)求、異步請(qǐng)求等,都可以使用很簡(jiǎn)潔的邏輯...
一個(gè)例子 在 Android 中用到數(shù)據(jù)庫(kù)時(shí),就一定會(huì)和 SQLiteDatabase 打交道,我們經(jīng)常會(huì)為 SQLiteDatabase 創(chuàng)建一個(gè)管理類。例如下面就是一個(gè) ...
一、引言 在平時(shí)的開發(fā)過程中,當(dāng)用到滑動(dòng)布局時(shí),我們用的比較多的是ListView或ScrollView,但對(duì)于RecyclerView的使用卻比較少,也就是在需要用到水平滑...
一、引言 ListView組件,相信讀者已經(jīng)是非常熟悉了,所以本文就不再講述如何使用ListView了,而是從源碼的角度出發(fā),去探尋ListView背后的繪制過程與緩存機(jī)制。...
1、讀寫字節(jié)碼 Javassist 是一個(gè)能處理 Java字節(jié)碼 的類庫(kù),Java字節(jié)碼存儲(chǔ)在class文件中,每一個(gè)class文件都包含了一個(gè)Java類或一個(gè)接口類。 在J...
一、引言 公司最近在大力推崇使用React Native(以下簡(jiǎn)稱RN)來開發(fā)業(yè)務(wù)組件,來代替原生業(yè)務(wù)組件,以達(dá)到快速迭代、方便熱修復(fù)等目的。雖然RN擁有比混合H5開發(fā)更好的...
一、引言 React Native,簡(jiǎn)稱RN,是FaceBook推出的一款跨平臺(tái)的代碼框架,其主要是為了解決Android和iOS兩端代碼邏輯不統(tǒng)一的痛點(diǎn),可實(shí)現(xiàn)一套代碼邏輯...
一、引言 上一篇文章中,我們講到了View的事件分發(fā) 機(jī)制,明白了點(diǎn)擊事件是如何從根View一步步地傳遞到目標(biāo)View的。 而在日常開發(fā)中,使用一些復(fù)雜的View嵌套時(shí),經(jīng)常...
1、Iterator迭代器 我們?cè)谄匠=?jīng)常會(huì)使用到foreach,for關(guān)鍵字,其實(shí)他們的內(nèi)部原理使用的都是Iterator迭代器的原理。但是在使用的時(shí)候需要注意的是,如果在...
圖文并茂,學(xué)習(xí)到了
【源碼解析】View的事件分發(fā)一、引言 View的事件分發(fā)一直都是塊難啃的骨頭,每次都是在遇到問題時(shí)才在網(wǎng)上找一下事件分發(fā)的流程,而每次看的時(shí)候當(dāng)時(shí)都以為懂了,但是過了一段時(shí)間卻又忘了。如此反復(fù),對(duì)Vie...
一、引言 View的事件分發(fā)一直都是塊難啃的骨頭,每次都是在遇到問題時(shí)才在網(wǎng)上找一下事件分發(fā)的流程,而每次看的時(shí)候當(dāng)時(shí)都以為懂了,但是過了一段時(shí)間卻又忘了。如此反復(fù),對(duì)Vie...
1、前言 我們都知道將圖片保存到本地的操作,但是如何將本地的圖片保存到相冊(cè)。有幾種不同的方法,下面分別講述這幾種方法。 2、調(diào)用系統(tǒng)方法 上面兩種方法是調(diào)用了系統(tǒng)的方法,將圖...
一、引言 ContentProvider作為Android的四大組件之一,其主要的作用是通過Binder向其他組件或者其他應(yīng)用提供數(shù)據(jù)。它的底層實(shí)現(xiàn)方式也是Binder,但是...
一、前言 現(xiàn)在Android開發(fā)最常用的IDE就是Android Studio了。在Android Studio中使用了Gradle構(gòu)建功能,這使得模塊之間的管理、依賴都非常...
一、前言 上一篇文章中我們講到了Android Plugin中的apply方法中最為重要的三個(gè)回調(diào)方法,分別是configureProject、configureExtens...
一、前言 上一篇文章中我們講到了Android Plugin中的apply方法中的回調(diào)方法configureExtension,詳見Android Plugin源碼與Grad...
Activity的啟動(dòng)模式中我們用的最多的是Standard標(biāo)準(zhǔn)模式,其實(shí)Activity一共有四種啟動(dòng)模式。我們將從Android源碼中介紹Activity的四種啟動(dòng)模式,...
一、TaskAffinity TaskAffinity翻譯過來就是“任務(wù)相關(guān)性”,它表示了一個(gè)Activity所需要的任務(wù)棧的名字。在平時(shí)的開發(fā)中,我們一般很少使用到Task...