Time of Update: 2018-02-11
好用的開源庫(二)——uCrop 圖片裁剪,開源ucrop最近想要實現圖片裁剪的功能,在Github上找到了這個uCrop,star的人挺多的,便是決定入坑,結果長達一個小時的看資料+摸索,終於是在項目中實現了圖片裁剪的功能,今天便是來介紹一下uCrop的使用方法uCrop目錄:配置1.添加依賴maven { url "https://jitpack.io" }compile
Time of Update: 2018-02-09
Android 8.0 NotificationChannel 采坑執行個體,Android O 上Notification的新特性: 通知通道功能1. 簡介: 通知通道功能使開發人員管理自己應用的通知成為一個組或者一個通道,使用者可以通過通知通道完成設定通知,如:阻止所有通知,改變某個通道通知的優先順序,是不是顯示launch上的小圓點。通過這些方式來提升使用者體驗。2. 1. 第一步:升級sdk版本,使用android
Time of Update: 2018-01-30
Handler訊息機制的一些原理(直接用code講解)——Android開發,handlerandroidpackage com.example.handlertest; import android.os.Bundle; import android.os.Handler; import android.os.Looper; import android.os.Message; import android.app.Activity; import
Time of Update: 2018-02-02
【轉】三個案例帶你看懂LayoutInflater中inflate方法兩個參數和三個參數的區別,關於inflate參數問題,我想很多人多多少少都瞭解一點,網上也有很多關於這方面介紹的文章,但是枯燥的理論或者翻譯讓很多小夥伴看完之後還是一臉懵逼,so,我今天想通過三個案例來讓小夥伴徹底的搞清楚這個東東。本篇部落格我們不講源碼,只看使用。源碼的解讀會在下一篇博文中帶來。inflate方法從大範圍來看,分兩種,三個參數的構造方法和兩個參數的構造方法。在這兩類中又有細分,OK,那我們就把各種情況都來示範
Time of Update: 2018-02-02
Android 音視頻深入 一
Time of Update: 2018-01-30
PMS 啟動流程,pms啟動流程1.在SystemServer中啟動PackageManagerService.main2.newPackageManagerService()並添加到ServiceManager中3.newinstaller(建立installer和installd的socket串連,最終在底層實現install,remove,dexopt等功能)4.通過systemConfig擷取到xml檔案中資訊5.建立PackageHandler Message
Time of Update: 2018-01-24
Http 緩衝機制,http緩衝機制HTTP 緩衝體系首先我將 Http 緩衝體系分為以下三個部分:1 HTTP/1.1 200 OK2 Cache-Control: no-cache3 Content-Type: image/png4 Last-Modified: Tue, 08 Nov 2016 06:59:00 GMT5 Accept-Ranges: bytes6 Date: Thu, 10 Nov 2016 02:48:50 GMT7 Content-Length: 3534
Time of Update: 2018-01-26
自訂小太陽控制項,小太陽控制項 你沒看錯,右上方的那個大圓就是傳說中的太陽,^_^這個動畫的痛點在於這個“食物”的繪製上吧,不用懷疑,你還是沒看錯,那些小點就是傳說中的食物首先一步步來,看到這種效果,第一個想到的就是一個普通的小圓,而這個大圓就用貝塞爾繪製,至於為什麼用貝塞爾而不是直接繪製一個半圓呢,因為食物是繞著半圓的,緊貼著,你需要拿這個半圓做參照物,不然隨便改改布局就亂套了,然後是小圓也需要圍著半圓繞圈,這兩個都需要一個已知的poi
Time of Update: 2018-01-24
自訂灑豆子,灑豆子 先上灑豆子的效果,突發奇想,覺得這個動畫挺有意思的,就抽空寫了一個玩玩繪製流程: 定義6個‘’豆子‘’,每個豆子有各自的屬性,大小,拋出的速度等,然後控制每個的方向和狀態,回彈效果使用差值器 BounceInterpolatorpackage com.fragmentapp.view.beans;import android.animation.Animator;import
Time of Update: 2018-01-17
git push每次提交都要輸入使用者名稱的解決方案,gitpush前言最近把代碼從csdn轉移到gitee後,每一次git push都需要輸入使用者名稱和密碼,比較麻煩,那有沒有一個辦法可以去掉這個步驟呢?原因每次都需要輸入使用者名稱和密碼是因為你採用的是https方式提交代碼,如果採用的是ssh方式只需要在版本庫中添加使用者的sha的key就可以實現提交時無需輸入使用者名稱和密碼。解決辦法git remote -vgit remote rm origingit remote add
Time of Update: 2018-01-17
高德地圖定位,高德地圖對高德地圖的定位進行封裝,方便調用如下是高德官網的指導:http://lbs.amap.com/api/android-sdk/guide/create-map/mylocation如下是主要的代碼 定位使用的是(5.0.0版本後的),主要記錄下封裝的思路 1 public class MapLbsLayerImpl implements ILbsLayer { 2 3 private Context mContext; 4
Time of Update: 2018-01-17
DingTalk調試應用Inspect不顯示或顯示空白的解決方案,inspect空白首先必須使用DingTalk開發版,並確保已經通過此連結開啟了調試功能:https://open-doc.dingtalk.com/docs/doc.htm?spm=5176.10694750.0.0.3tPHed&treeId=171&articleId=104908&docType=1如果出現點擊Inspect出現空白頁面,是由於國內無法訪問google造成的。可以使用離線開發人員工具
Time of Update: 2018-01-12
分享一個android debug模式,出現 waiting for debugger把介面卡住,取巧的解決辦法,androiddebugger使用android studio開發程式時,有時會出現 waiting for debugger 卡住介面,軟體無法正常debug啟動並執行情況,很多網友分享了一些解決辦法,比如:1 開啟cmd進入命令列,進入adb所在目錄先後執行adb kill-server,adb start-server。2 開啟cmd進入命令列,輸入netstat
Time of Update: 2018-01-12
AppCompatActivity 去掉標題列和EditText彈出軟鍵盤遮住輸入框問題,1. AppCompatActivity去掉標題列此處除掉標題列,需要注意一點,AppCompactActivity是繼承自Activity。然而,AppCompactActivity據查看網上資料得知,其實它貌似沒有標題列,上面顯示的標題列是一個ActionBar控制項(PS:即標題列部分是一個控制項,該控制項功能還比較強大),因此AppCompactActivity可以對該控制項添加相關返回、
Time of Update: 2018-01-12
自訂switchButton,這篇部落格要講的是自訂switchButton,不過沒有設定動畫效果。我用GradientDrawable來繪製switchButton,我們先看看最終的效果:點擊前:點擊後 接下來我們看看如何?首先:該類繼承RelativeLayoutSwitchButton extends RelativeLayout{} 該類需要用到的成員: private ImageView track; //滑塊所在的軌道 private
Time of Update: 2018-01-12
GsonFormat外掛程式,GsonFormat外掛程式可以根據JSONObject格式的字串,自動產生實體類參數。要使用這個外掛程式,首先要做的事下載它。方法如下:方法一:1.Android studio File->Settings..->Plugins–>Browse repositores..搜尋GsonFormat 2.安裝外掛程式,重啟android studio 方法二:1.下載GsonFormat.jar ; 2.Android
Time of Update: 2018-01-12
Android-AnsyncTask非同步任務,android-ansynctask同步和非同步概念區別:同步,必須執行完成某個問題後才能繼續執行其他的。非同步,我會去先執行其他問題,你執行完之後返回給我一個結果就可以。 android中為什麼要引用非同步任務呢 android啟動的,會啟動一個線程也稱為主線程,UI線程,但是我們不能把所有耗時的任務交給主線程來完成,這樣會影響使用者的體驗,也就是說我們要另外的開闢新的線程來執行我們的任務,但是在android中,(載入圖
Time of Update: 2018-01-01
android 比較靠譜的圖片壓縮 第一:我們先看下品質壓縮方法: private Bitmap compressImage(Bitmap image) { ByteArrayOutputStream baos = new ByteArrayOutputStream(); image.compress(Bitmap.CompressFormat.JPEG, 100,
Time of Update: 2018-01-05
在android studio中配置運行時簽名,androidstudio做項目的時候,有時需要用到第三方介面,而基本第三方介面都是要求我們要先進行簽名。結果每次調試都得手動進行簽名一次,實在麻煩。所以android studio提供了一種在啟動並執行時候自動進行簽名的方法,在build.gradle(Module:app)中進行配置,剛剛開始我們不知道如何直接用代碼配置,那麼我們可以用android studio的可視化視窗進行編輯。1、開啟Build->Edit Build
Time of Update: 2017-12-07
日常記錄-代碼中Background後Padding 失效,backgroundpadding 近日,在開發過程中 遇到了 Layout 代碼中設定 Background 後,padding失效的問題,只是在Android 4.4.4 和 4.4.2 的手機上遇到了。網上搜尋了下,說是 4.4 系統裡的一個bug,解決方案就是 在動態設定 Background 後,重新設定 padding。 解決方案如下: 1.1 方法一