原创 Recylerview notifyDataSetChanged 界面圖片一閃

Recylerview的item,當數據改變時,我們會調用 notifyDataSetChanged,這個時候列表會刷新,圖片會一閃,爲了使 url 沒變的 ImageView 不重新加載,我們可以用 setHasStableId

原创 Android-禁用系統字體縮放

設計師辛辛苦苦做出設計稿,開發人員辛辛苦苦把UI調好了,但是在Android用戶修改系統的默認字體大小,原先的設計很容易失效,變得非常難看,考慮你的用戶人羣,又不想因爲用戶變更默認字體大小導致app的樣式走樣,我們可以這麼做: 1

原创 Android編譯libjpeg-turbo so高效壓縮圖片

https://www.jianshu.com/p/8ebe0ddd21f7 https://www.jianshu.com/p/f305fb008ab6 一 . 圖片的基本知識 圖像是由像素組成的,而像素實際上是帶着座標的位置和

原创 java反射實例化調用

一般當我們無法直接拿到 目標對象,或者方法的時候,可以通過反射來實現調用 setAccessible public void setAccessible(boolean flag) throws SecurityException

原创 androidstudio library Module 依賴aar 在主app中提示找不到

在lib module 的 build.gradle 中添加路徑 repositories { jcenter() flatDir { // dirs 'libs', "../woMaiPush/li

原创 OPPO 設備報錯 android.content.res.AssetManager.finalize() timed out after 120 seconds

這是從後臺看到的一個錯誤日誌,在一些OPPO 機型會報錯 ,如 R9 等。 可以看到出錯的設備基本是OPPO 的一些設備,推測應該是極光的SDK在部分OPPO設備導致,在極光論壇搜索該錯誤能找到很多帖子。 那麼這類問題是怎麼出

原创 Android.mk、 Application.mk 、CMakeLists.txt

Android.mk LOCAL_PATH := $(call my-dir) include $(CLEAR_VARS) LOCAL_ARM_MODE := arm LOCAL_MODULE := vc LOCAL_

原创 Android基於DexClassLoader實現熱修復

本文簡單介紹 熱修復的一種實現,插件化原理也可以參考。 Android系統中的類加載器 Android系統屏蔽了ClassLoader的findClass加載方法,那麼它自己的類加載時通過什麼樣的方式實現的呢? Andro

原创 Android通知欄微技巧,8.0系統中通知欄的適配及應用圖標的適配

Android通知欄Notification適配 【Android-】android 8.0 通知欄Notification適配、自定義鈴聲及其channel介紹 android 8.0 通知欄適配 Android應用圖標微技巧,

原创 高性能屏幕適配解決方案

思路:通過計算設計稿上UI的 寬高與實際設備上的寬高,按比例縮放。 float scaleX = deviceWidth/standWidth; float scaleY = deviceHeight/standHeight; 步

原创 學習String相關知識點的一些總結

由一個例子引出今天的豬腳。 String ss = "ab"; String s1 = "a"; String s2 = "b"; String s3 = s1 +

原创 Base64編碼原理

base64 Base64是網絡上最常見的用於傳輸8Bit字節碼的編碼方式之一,Base64就是一種基於64個可打印字符來表示二進制數據的方法。 Base64編碼是從二進制到字符的過程,可用於在HTTP環境下傳遞較長的標識信息。採

原创 64匹馬,8個賽道,找出跑得最快的4匹馬(面試題詳解)

首先,可以將馬分爲8組,每組各跑一次,然後淘汰掉後四名,這裏淘汰後四名是因爲只需要跑的最快的四匹馬。 然後取8次跑的第一名進行比賽,然後淘汰掉後四名所在的組的所有馬,因爲,後四名所在的組的第一名沒有跑過前四名的馬,所以可以直接淘

原创 Android開發百科全書③

Android 存儲路徑 Environment.getExternalStorageDirectory() context.getExternalFilesDir(dir) context.getExternalCacheD

原创 OkHttp Caused by: java.lang.IllegalStateException: Expected Android API level 21+ but was 19

Android OkHttp實現HTTPS訪問,支持Android 4.X系統HTTPS訪問 看到這個錯誤信息Caused by: java.lang.IllegalStateException: Expected Androi