原创 Android服務啓動兩種方式的總結

簡介:Service是Android四大組件之一,也是可執行的程序,有自己的生命週期。創建,配置Service和創建,配置Activity的過程相似。和Activity一樣,都是從Context派生出來的。 一.Service的第一種啓動

原创 Java類加載機制

類的加載過程 2.1 JVM將類加載過程分爲三個步驟:裝載(Load),鏈接(Link)和初始化(Initialize)。鏈接又分爲三個步驟,如下圖所示: 1) 裝載:查找並加載類的二進制數據 2) 鏈接: 驗證:確保被加載類的正確性

原创 Android手機獲取當前是否安裝有外置SD卡以及外置SD卡的狀態是否掛載mounted

該工具類說明:獲取手機存儲設備如手機本身存儲以及插入的外置SD卡存儲信息,包括根路徑,是否可以移除,以及是否爲掛載狀態,可根據是否可移除來判斷是否是機身存儲以及是否是插入的外置SD卡。 package com.dh.lenovo.mysd

原创 RxJava筆記

一:RxJava是什麼: 1.異步任務處理數據 2.擴展的觀察者模式   二:RxJava特點 1.Jar包的大小 < 1MB 2.輕量級框架 3.支持Java 8 Iambda 4.支持Java 6 + & Android2.3+ 5.

原创 處理網絡圖片產生OOM異常的總結

一:產生原因分析 每個Android應用程序運行時都有一定的內存限制,限制大小視平臺而定,個手機開發廠商的標準都不相同,因此在開發應用時需要特別關注自身應用的內存使用量,否則就容易出現內存溢出的情況,既OOM異常。常見的OOM異常主要是由

原创 android中修改NavigationBar的按鍵顏色和背景顏色

/**     * 修改NavigationBar按鍵顏色 兩色可選【黑,白】     * */ public  void setLightNavigationBar (Activity activity, boolean light)

原创 OkHttp使用總結

首先添加依賴: implementation 'com.squareup.okhttp:okhttp:2.6.0'     1.get請求 2.post請求 3.Post傳Josn 4.post提交File 5.post上傳文件

原创 Android從源代碼的視覺總結出修改狀態欄顏色的輕便方法

在app開發中不可避免的根據需求來改變狀態欄背景顏色,縱觀網上很多方法,總體感覺冗餘繁瑣,現從源碼的視覺總結出一個輕便的方法,如下:

原创 Android開發APK更新下載自動安裝打開

private ProgressBar downLoadPB; //下載APK進度條private TextView allMount; //顯示APK總大小的控件 private TextView currentMount; /

原创 Android開發之修改狀態欄背景色&設置狀態欄背景透明

2.案例使用 public class StatusBarColor{ //改變狀態欄顏色 public static void setStatusBarColor(Activity activity,int stat

原创 Android常用的內存優化方法總結

1.降低運行時內存 2.代碼優化 3.內存泄漏優化 1.降低運行時內存 降低運行時內存可以分爲減小APK體積和Bitmap優化兩部分 (1)減小APK體積 方法一:去除無用的資源代碼,通過合理使用git,一些由於業務變更而基本不會用到的代

原创 Android讀取手機ROM總大小方法

private String getTotalMemSizeInfo(){ //總空間 File userDataDir = Environment.getDataDirectory(); StatFs stat = n

原创 Android事件分發機制Touch事件

Touch事件分發中只有兩個主角:ViewGroup和View。Activity的Touch事件事實上是調用它內部的ViewGroup的Touch事件,可以直接當成ViewGroup處理。 View在ViewGroup內,ViewGrou

原创 android保存圖片到系統相冊及圖庫更新

public static void saveImageToGallery(Context context, Bitmap bmp) {         // 首先保存圖片         File appDir = new File(E

原创 解決手機在PC上顯示兩個存儲的問題

有時候因爲各種外因或內因導致手機在PC端顯示兩個內部存儲的bug.現不多說,直接上代碼。 第一步修改的文件:MtpServer.cpp 文件在framework/base下,具體位置自行用命令:find ./ -name MtpServe