1. 程式人生 > >Android圖片壓縮終極解決方案,是的,終極,終極,終極

Android圖片壓縮終極解決方案,是的,終極,終極,終極

沒錯,第一篇技術部落格就給大家帶來一重磅炸彈,絕對實用,圖片壓縮,在這裡你將看到2.5M如何無損的變為200多kb,差不多十分之一吧,重點,請注意重點,無損,無損,無損!

我們開發中常見的就是圖片,當然,平時簡簡單單的顯示什麼的就算了,各種框架給你處理,縮圖啥的都有,那麼我們今天入手的是什麼呢?想想這麼一個場景,當我們發朋友圈的時候,有沒有考慮過,多圖啊,多圖勢必會帶來oom哈,這是逃不脫的魔咒啊!那麼我們接下來就想想如何來進行圖片壓縮吧,網上也是一大堆壓縮,從比例到質量。。。對於簡單的來說確實也夠了,但是你拍張照片3M,硬生生的把他壓縮到200kb,結果是一片模糊,簡直連熟悉的影子都對比不出了。。。那麼我們就有了一個有效的壓縮

演算法,基於C語言實現的,所以需要調JNI咯,所以。。。我也就不解釋了,直接步驟上起來:

  1. 第一步,下載JNI(如果圖方便的話就直接下載so檔案就行)
  2. 第二步,對JNI進行NDK-BUILD編譯生成出SO檔案
  3. 拷貝進入我們的專案資料夾libs/armeabi(如果自己編譯出適配的so就新建對應的資料夾就行)
好了,就這麼愉快的結束了,最後附上本人測試結果:

由於這圖片上傳限制小於2M 所以這裡原圖是2.5M 無法上傳上來,大家可以想象下2.5M的圖大概很清晰吧,下面是壓縮的2中方式,一種設定false一種設定true進行壓縮:

這是壓縮後的第一種,引數設定為false
這是第一種方式,引數設定成false產生的,大小為348kb

這是壓縮的第二種方式,引數設定為true
這是第二種壓縮方式,引數設定為true產生的結果圖片,大小為295kb

**

**

如何使用我就不介紹了,開源的東西,感謝作者!!!如果在使用過程遇到什麼問題可以來提問,我願為大家解答下~~~