原创 RecyclerView使用過程的坑
1、在Adapter的onCreateViewHolder中加載佈局,inflate要傳入父View 2、notifyDataSetChanged時圖片閃爍,adapter.setHasStableIds(true); @Overrid
原创 MVP與MVC的淺解
一直開發以來用的是MVC的架構,這個架構也是從Java開發移植過來的,但是在安卓上使用MVC總是感覺和後臺的MVC有點區別,MVC就是Model(實體類和執行業務的類)、 View (佈局) 、Controll(Activity) ,
原创 Android面試之---講一下你對Activity的瞭解(面試必問的).
這篇文章會涉及到以下幾個內容一 Activity的生命週期二 讓Activity變成一個窗口:Activity屬性設定三 你後臺的Activity被系統 回收怎麼辦:onSaveInstanceState四 調用與被調用:我們的通信使者
原创 關於SingleInstance使用的問題
SingleInstance是activity啓動的一種模式,一般做應用層開發很少用到,我一般用到的app定時提醒會用到這個模式吧。這個模式使用起來有很多坑,假設有activityA,activityB,activityC這三個activ
原创 圖片的三級緩存,強引用,弱引用,軟引用,虛引用
圖片的三級緩存就是網絡緩存、本地緩存、內存緩存,網絡緩存沒什麼說的就是直接加載網絡的圖片,本地緩存就是將網絡的資源緩存在手機磁盤上,內存緩存是臨時緩存需要釋放的不然就oom了。緩存策略:首次加載的時候通過網絡加載,獲取圖片,然後保存到內存
原创 內存泄漏和內存溢出的淺析
內存泄漏指的是指程序在申請內存後,無法釋放已申請的內存空間,一次內存泄漏似乎不會有大的影響,但內存泄漏堆積後的後果就是內存溢出內存溢出是指程序申請內存時,沒有足夠的內存供申請者使用就會造成溢出重點內存泄漏的堆積就會造成內存溢出內存泄漏情況
原创 Activity啓動過程的簡單理解
Activity啓動程序可分爲四種情況 (1)在應用程序中執行startActivity()或startActivityForResult() (2)從桌面點擊啓動 (3)按返回鍵自動啓動上一個界面 (4)
原创 activity fragment fragment 直接相互通信
在fragment調用getActivity,獲取activty的對象,就可以就就可以對activity的控件進行操作 activity調用getFragmentManager可以獲取fragment的對象,這樣就可以向其傳遞數據,一般我
原创 對JNI,NDK的瞭解
NDK是開發JNI的工具集合JNI(java native interfce)java本地接口,用來java與c/c++交互的技術。對java程序員來說JNI開發步驟1、在activity聲明一個native的方法public class
原创 熱修復原理淺析
熱修復的基本思想是把有問題的dex替換掉,這個dex是能在虛擬機運行的文件,我們寫的代碼經過複雜的編譯就轉換成了dex文件,那怎麼才能把dex替換掉了? 虛擬機是從一個叫Element的數組中找到我們的dex,然後運行,那隻要我們把無bu
原创 安卓8.0/7.0/6.0/5.0特性
Android 8.0 允許Activity以畫中畫模式啓動。屬於多屏模式,主要用於視頻播放 重新設計了通知,引入了通知頻道的概念,更好地統一管理通知。 自動填充框架,省去自己重
原创 八大排序算法的思想
1 選擇排序:每一趟從待排序的數據元素中選擇最小(或最大)的一個元素作爲首元素,直到所有元素排完爲止 2 冒泡排序:對相鄰的元素進行兩兩比較,順序相反則進行交換,這樣,每一趟會將最小或最大的元素“浮”到頂端,最終達到完全有序 3
原创 最簡單最直接的將自己的library上傳到jcenter
如果想將自己寫的library上傳到jcenter供大家使用,要經過一下幾步 第一步: 首先要將自己的項目上傳到github上,這裏的項目是指使用了library的項目。具體上傳步驟可以參考https://www.c
原创 常用的設計模式(單例、建造者、觀察者、模板模式、工廠模式)
單例:常用的有兩種寫法,① 餓漢式 線程安全,不過類創建時對象實例就創建好了。② 懶漢式 線程不安全,如果加鎖解決線程安全那就變成同步了,性能受損,可以使用靜態類解決安全問題建造者:開發中經常用到,只不過自己倒不會使用建造者模式開發個
原创 進程通信淺解
進程通信相當於就是自己的app和別的應用通信,有四種方式,正好對應了四大組件Activity,Broadcast,ContentProvider,和Service。利用service通信也叫AIDL. Activity 我們直接用int