原创 Android權限完全解析

Android6.0以後的權限管理髮生了很大的改變,不是直接在manifest中添加,而是讓用戶使用到的時候去動態的申請,Google把權限分了類,當涉及到一些危險的權限的時候必須使用動態申請。 權限分類 重要方法 使用示例

原创 apk文件安裝流程

概述: android和你通常理解的程序路徑是不一樣的,android應用安裝完畢後,會存儲在/data/app或者/system/app目錄中,當程序運行時,所需要的layout文件,drawable文件等等需要從該目錄中的原文

原创 Handler看這一篇就夠了

Handler使用 首先來熟悉一下Handler的四種使用方式,如果比較熟悉可以直接跳過: 通過sendMessage消息機制來發送 sendEmptyMessage(int);//發送一個空的消息 sendMessage(

原创 synchronized使用的正確姿勢

synchronized在java中的作用是線程同步,其目的是保障同步區代碼的正確執行,同一時間僅有一個線程進入同步區,那他的使用方式你瞭解的是否全面,他的底層原理你是否清楚呢?下面就從使用方式、實例、單例和原理四個方面對sync

原创 java異常處理機制

程序運行時,發生的不被期望的事件,它阻止了程序按照程序員的預期正常執行,這就是異常,那麼異常發生之後怎麼辦,Java提供了更加優秀的解決辦法-異常處理機制。異常處理機制能讓程序在異常發生時,按照代碼的預先設定的異常處理邏輯,針對性

原创 Java中Collection、List、Set、Map之間的關係總結

今天小編就爲大家分享一篇關於Java中Collection、List、Set、Map之間的關係總結,小編覺得內容挺不錯的,現在分享給大家,具有很好的參考價值,需要的朋友一起跟隨小編來看看吧 初學java,單個的接觸

原创 View事件分發機制

一、概念View可以說是Android中的第五大控件了,不管是Button還是TextView還是複雜的RelativeView,他們的共同基類都是View,View是界面層控件的一種抽象,View的四個參數就是左上右下,這四個屬性是相對

原创 酒瓶和啤酒的問題

一、題目每瓶啤酒2元,2個空酒瓶或4個瓶蓋可換1瓶啤酒。10元最多可喝多少瓶啤酒?二、程序package test; public class Solution { public static int all = 5; public

原创 自定義棧和隊列

一、棧 首先來使用簡單的方式LinkedList來定義 import java.util.LinkedList; /** * Created by lili on 15/11/14. */ public class MySta

原创 RecyclerView的使用

一、概念 優點 RecyclerView提供了一個耦合度更低的方式來複用ViewHolder,並且可以輕鬆的實現ListView、GridView以及瀑布流的效果 上面是RecyclerView的基本結構 Ada

原创 Retrofit的簡單使用

一、概念 Retrofit與okhttp共同出自於Square公司,retrofit就是對okhttp做了一層封裝。把網絡請求都交給給了Okhttp,我們只需要通過簡單的配置就能使用retrofit來進行網絡請求了,其主要作者是An

原创 HashMap實現原理及自定義

一、概念 什麼是哈希表 哈希表(hash table)也叫散列表,是一種非常重要的數據結構,應用場景及其豐富,許多緩存技術(比如memcached)的核心其實就是在內存中維護一張大的哈希表,而HashMap的實現原理也常

原创 Glide使用及原理概述

一、概念 比較一個Glide和其他的框架 Universal Image Loader:一個強大的圖片加載庫,包含各種各樣的配置,最老牌,使用也最廣泛。 Picasso: Square出品,必屬精品。和OkHttp搭配

原创 谷歌官方MVP+Dagger2架構簡析

一、概念 首先看一下添加了Dagger2後的目錄結構的變化 可以看到主要是增加的四個文件 ApplicationMoudle ToDoApplication 上面的這兩個是獲得全局的Context用的 TaskD

原创 Picasso

一、例子 直接上代碼 如下就是Picasso最簡單的例子,我們在使用的時候就是這麼簡單,直接with、load、into // 普通加載圖片 Picasso.with(PicassoA