آموزش کار با کتابخانه Picasso اندروید استودیو
با وجود فراوان بودن کتابخانه ها در زمینه دانلود عکس در برنامه نویسی اندروید انتخاب بهترین لایبرری از اهمیت زیادی برخوردار است. معروف ترین کتابخانه ها در این زمینه Picasso و glide است که لایبرری Picasso از محبوب ترین و قدرتمند هاست.
کتابخانه Picasso چیست؟
این کتابخانه محصول شرکت بزرگ square است. همانطور که گفته شد این لایبرری از محبوب ترین و قدرتمند ها در زمینه دانلود و کش عکس است که می تواند عمل کشینگ عکس را در کمترین زمان و به صورت اتومات انجام بدهد که از مزیت هایش اشغال حداقلی رام گوشی کاربر است.
اگر شما به عنوان برنامه نویس می خواهید تصویری را از طریق صفحه وب دانلود و در برنامه خود به اجرا بگذارید استفاده از این کتابخانه با اینکه بسیاری کتابخانه های دیگر هم در دسترس شما هستند انتخابی هوشمندانه به حساب می آید چون کار شما راحت تر و سرعتتان افزایش می یابد.
به طور خلاصه می توان مزیت های کتابخانه Picasso را در مورد بیان کرد:
کیفیت عکس ها را همانطور که هست حفظ می کند.
تنظیمات مختلفی را برای تغییر سایز عکس ارائه می دهد.
سرعت دانلود بسیار بالایی را دارد.
برای نمایش تصاویر قابلیت image view را ارائه می دهد.
خب حالا چطور این کتابخانه را دانلود و نصب کنیم؟
نحوه فراخوانی و استفاده از این کتابخانه بسار سادست و به ۲ صورت انجام می شود:
دانلود فایل کتابخانه و قرار دادن آن در پوشه ی lib پروژه.
اضافه کردن کد زیر بهdependency فایل build.gradle برنامه اندروید خود بر روی دکمه Sync Now کلیک کنید.
compile ‘com.squareup.picasso:picasso:2.5.2’
حالا باید مجوز دسترسی به اینترنت را به پروژه خود اضافه کنید ، برای این کار به قسمت AndroidManifest.xml رفته و کد زیر به پروژه خودتون اضافه کنید.
uses-permission android:name=”android.permission.INTERNET”;
حالا شما به راحتی میتوانید با کد زیر از این کتابخانه محبوب استفاده کنید و لذت ببرید..
Picasso.with(context).load(R.drawable.myimage).into(imageview);
در ادامه کلیه ی مقادیر استفاده شده در قسمت بالا برای شما توضیح داده می شود.
دریافت و نمایش تصاویر از سرور توسط کتابخانه picasso
برای دریافت تصاویر از اینترنت و نمایش آن در اندروید فقط کافی هست کد زیر را به پروژه ی خود اضافه کنید.
Picasso.with(context)
.load(url)
.placeholder(R.drawable.placeholder)
.error(R.drawable.error)
.into(imageView);
در قسمت اول شما باید context را وارد نمایید برای این کار اگر در داخل اکتیویتی هستید از (getApplicationContext) یا اسم اکتیویتی مورد نظر(MyActivity.this) ،
اگر در داخل فرگمنت هستید از getActivity و در داخل کلاس های دیگر با تعریف context در قسمت دوم به جای url میتوانید ادرس عکس مورد نظر در داخل اینترنت به صورت “http://tameshki.ir/image.png” یا آدرس تصویر داخل برنامه (پوشه assets) به صورت“file:///android_asset/myimage.png” و یا R.drawable.myimage که تصاویر داخل پوشه drawable هست را وارد نمایید.
قسمت سوم و چهارم که placeholder و error هست میتوانید ادرس تصویری (placeholder) که قبل از لود تصاویر اصلی می باشد را وارد کنید و در قسمت error میتوانید ادرس تصویری که دوست دارید در مواقع ایجاد خطا در لود اتفاق می افتد را وارد کنید.
قسمت پنجم هم که نام ImageView یی هست که قراره تصویر در اون لود بشه.
نکته : قسمت های error , placeholder اجباری نیستند و سه قسمت باقی مانده حتما باید مقدار دهی شود.
پیکیر بندی پروگارد (ProGuard)
اگر شما از پروگارد برای محافظت و فشرده سازی پروژه اندروید خودتون استفاده می کنید
یعنی در داخل build.gradle مقدار minifyEnabled را true قرار دادید حتما کد زیر را به فایل proguard-rules.pro در زیر شاخه Gradle Scripts فایل proguard-rules.pro تقریبا زیر فایل build.gradle قرار داره اضافه کنید تا برای پروژه ی شما مشکی پیش نیاد.
-dontwarn com.squareup.okhttp.**
خب تقریبا با این توضیحات می توانید تصاویر خودتون به راحتی از اینترنت دریافت کنید و بدون هیچ مشکلی در داخل پروژه اندروید خودتون استفاده کنید…