原创 Android開發--調用系統郵件

Android系統的開源性使其在當前智能手機市場佔據絕對優勢,同時也產生了各種各樣的機型和系統。這使得我們Android開發人員需要根據不同的機型和系統去做對應的適配。 正文 本篇所述需求爲調用本地郵件客戶端發送帶有附件的郵件。 第一種常

原创 Android獲取系統郵件賬號

android賬戶取得方法: 1. 8.0以下動態申請運行時權限 Manifest.permission.GET_ACCOUNTS 獲取權限後取得賬戶的方法: 你可以用AccountManager.getAccounts or Accou

原创 解決Glide圖片緩存問題,同一url換圖片不起作用問題

解決方法有兩個: 1.每次加載都清理緩存。 但這個方法是不可取的, 會導致每次都去網絡加載圖片. 顯示非常慢. 這就相當於廢棄了緩存這個好用的功能: Glide.with(this) .load(uri) .asBitmap()

原创 Android 查看並解決重複依賴

有時候引入了新的sdk後,build會出現如下問題: Caused by: com.android.dex.DexException: Multiple dex files define Lcom/google/gson/interna

原创 Android 原生webview傳遞header前端H5如何接收

開發背景 跟其他公司合作的一個項目,傳遞參數的方式爲原生通過自定義header頭參數,由前端來接收。踩坑1 原生傳參 安卓原生傳參的方式很簡單,通過webview.loadUrl這個方法,如下:   Map<String, Str

原创 HashSet中add()方法的使用

HashSet 傳入對象,怎麼過濾 首先,我們知道所有的Set裏面都套了一個Map,使用Map的Key存值,Value存放一個固定的Object,這是適配器模式。源碼如下: public class HashSet<E> ext

原创 小米淨水器更換濾芯步驟和水龍頭亮黃燈的解決辦法

【開篇序言】 衆所周知,無論何種品牌的淨水器,濾芯都是有一定使用壽命的,而不是一次性安裝可永久使用,如果遇到無需換濾芯這類宣佈,請遠離,不靠譜。換濾芯,小米淨水器也不例外,小米淨水器從外到內,分別爲PP棉濾芯(對自來水進行一級過濾,過濾掉

原创 Android 巧用 flexboxLayout 佈局

FlexBoxlayout是Google推出的開源的可伸縮性佈局,在項目中也會經場使用,大大提高了用戶的體驗。 compile 'com.google.android:flexbox:1.0.0' 有前端基礎的同學估計都知道 CSS 中

原创 Gson在使用時怎麼對JSON容錯處理

序 “JSON 是一種具有自描述的、獨立於語言的、輕量級文本數據交換格式,經常被用於數據的存儲和傳輸。而 GSON 可以幫我們快速的將 JSON 數據,在對象之間序列化和反序列化。” GSON 的 toJson() 和 fromJson(

原创 Integer.valueof()和Integer.parseInt()的區別

Integer. valueOf()可以將基本類型int轉換爲包裝類型Integer,或者將String轉換成Integer,String如果爲Null或“”都會報錯。 Integer. valueOf()是高效的 public sta

原创 Kotlin ==和===的區別

    總體來說kotlin中==比較的是數值是否相等, 而===比較的是兩個對象的地址是否相等。 code1: val a: Int = 999 val b: Int? = a val c: Int? = a println(b ==

原创 Android Activity中獲取View的寬高

我們在開發中經常會遇到在界面中比如 activity 使用到控件的 width 或者 height,大家也都知道在 onCreate() 中去 getWidth() 或者是 getMeasuredWidth() 拿到的結果都是 0,這是因

原创 View.getContext() 裏的小祕密

一、引言 關於這篇文章內容適合哪些同學,可以先提幾個問題請大家考慮下。 1、如果通過一個 ImageView 類型的 view.getContext() 來獲取到的 context 是什麼類型? 2、Activity 中調用 setCon

原创 Android中如何通過View獲取Activity

在開發過程中,我們會遇到下面情況: Button button = (Button) findViewById(R.id.btn); button.setOnClickListener(MainActivity.this); if(

原创 java.lang.IllegalStateException: Only fullscreen opaque activities can request orientation

java.lang.IllegalStateException: Only fullscreen opaque activities can request orientation 背景 手機升級系統後,到了Android8.0,打開原來