為了使用相較之下比較精簡的MD360Android,所以開始使用Picasso,(不然之前都使用Glide。)
okhttp和okio這兩個專案都有提供jar檔,可以直接下載下來輸入libs中使用。
GitHub內的Picasso專案,扣掉TestUnit Package外,其實就可以簡單拆解成四個項目:Picasso、Picasso-pollexor、Picasso-provider、Squareup-pollexor。
但再仔細觀察,這四個專案其實都沒有res內容,也就是說可以直接整併在同一個專案下。Squareup-pollexor甚至只是個純Java-client的專案。
Picasso專案內本身並不包含「Squareup-pollexor」的程式碼,是在gradle的builder中匯入,所以要使用搜尋的方式找到這個專案才可以。(直接使用Package的名稱,如果使用Pollexor或Thumbor,都有其他相同名稱的專案存在。)
因為都沒有使用到Resource檔的內容,本來應該編譯完就可以直接輸出一份jar做使用了!
(懶人說明)額外注意的是:最新的Picasso的Package名稱是「com.squareup.picasso3」,GitHub上很多使用Picasso的第三方專案都還在使用「com.squareup.picasso」,所以只要修改import名稱即可使用。
最新版本「Picasso3」的特色是:不能直接使用「Picasso類別」的static函數,必須要先從「PicassoProvider類別」的static函數「get」取得;但直接做一樣會出錯,因為PicassoProvider中沒有Context參數,而它是使用Provider去獲取Context參數,所以必須要在專案的AndroidManifest檔中加入PicassoContextProvider的設定值。
因為這篇文章是使用Eclipse,不搭配Gradle或Maven,所以參數檔的寫法要注意...
在PicassoProvider套件專案內可以找到一個AndroidManifest檔,裡面有這個Provider的設定寫法。
但要注意,直接複製貼上會引來編譯器錯誤,必須要把含有「$」的「applicationId」直接刪除,然後「name」標籤後面要加上檔案路徑(修改為「com.squareup.picasso3.PicassoContentProvider」)。
okhttp和okio這兩個專案都有提供jar檔,可以直接下載下來輸入libs中使用。
GitHub內的Picasso專案,扣掉TestUnit Package外,其實就可以簡單拆解成四個項目:Picasso、Picasso-pollexor、Picasso-provider、Squareup-pollexor。
但再仔細觀察,這四個專案其實都沒有res內容,也就是說可以直接整併在同一個專案下。Squareup-pollexor甚至只是個純Java-client的專案。
Picasso專案內本身並不包含「Squareup-pollexor」的程式碼,是在gradle的builder中匯入,所以要使用搜尋的方式找到這個專案才可以。(直接使用Package的名稱,如果使用Pollexor或Thumbor,都有其他相同名稱的專案存在。)
因為都沒有使用到Resource檔的內容,本來應該編譯完就可以直接輸出一份jar做使用了!
(懶人說明)額外注意的是:最新的Picasso的Package名稱是「com.squareup.picasso3」,GitHub上很多使用Picasso的第三方專案都還在使用「com.squareup.picasso」,所以只要修改import名稱即可使用。
最新版本「Picasso3」的特色是:不能直接使用「Picasso類別」的static函數,必須要先從「PicassoProvider類別」的static函數「get」取得;但直接做一樣會出錯,因為PicassoProvider中沒有Context參數,而它是使用Provider去獲取Context參數,所以必須要在專案的AndroidManifest檔中加入PicassoContextProvider的設定值。
因為這篇文章是使用Eclipse,不搭配Gradle或Maven,所以參數檔的寫法要注意...
在PicassoProvider套件專案內可以找到一個AndroidManifest檔,裡面有這個Provider的設定寫法。
<application> | |
<provider | |
android:name=".PicassoContentProvider" | |
android:authorities="${applicationId}.com.squareup.picasso3" | |
android:exported="false"/> | |
</application> |
但要注意,直接複製貼上會引來編譯器錯誤,必須要把含有「$」的「applicationId」直接刪除,然後「name」標籤後面要加上檔案路徑(修改為「com.squareup.picasso3.PicassoContentProvider」)。
沒有留言:
張貼留言