معرفی کتابخانه آزاد image-chooser-library برای اندروید

کتابخانه‌های برنامه‌نویسی همونقدری که میتونند خطرناک باشند و ما رو تنبل و دانشمون رو سطحی کنند، میتونند مفید باشند و با سریع کردن کارهای تکراری، بهمون این فرصت رو بدن که انرژی و زمانمون رو کارای خلاقانه‌تری صرف کنیم.

یکی از این کارای تکراری نوشتن یه ImagePicker است. منظورم چیه؟ فرض کنید شما داخل اپلیکیشن اندرویدیتون یک صفحه‌ی کاربری دارید و به کاربر این امکان رو میدید که اونجا برای خودش عکس پروفایل انتخاب کنه. کاری که باید بکنید اینه که یک Intent بزنید و بعد از اینکه کاربر عکس رو انتخاب کرد ازش thumbnail بسازید و احتمالا با مشکلات و تفاوتهای اندرویدها مختلف تو آدرس دهی دادن به فایل‌ها سر و کله بزنید.

اما من امروز میخوام بهتون یه راه دوم رو معرفی کنم. راهی که یک کتابخونه به اسم  image-chooser-library بر سر راه ما قرار داده.

روش استفاده

برای استفاده از این کتابخونه خط زیر رو به dependencyهای Gradle اضافه کنید:

compile 'com.kbeanie:image-chooser-library:1.4.4@aar'

برای انتخاب عکس از گالری میتونید از کد زیر استفاده کنید:

imageChooserManager = new ImageChooserManager(this, ChooserType.REQUEST_PICK_PICTURE);
imageChooserManager.setImageChooserListener(this);
imageChooserManager.choose();

و برای انتخاب عکس از دوربین میتونید به این شیوه عمل کنید:

imageChooserManager = new ImageChooserManager(this, ChooserType.REQUEST_CAPTURE_PICTURE);
imageChooserManager.setImageChooserListener(this);
imageChooserManager.choose();

متد Activity Result رو هم باید به شیوه زیر بنویسید‌:

@Override
protected void onActivityResult(int requestCode, int resultCode, Intent data) {
if (resultCode == RESULT_OK &&
(requestCode == ChooserType.REQUEST_PICK_PICTURE||
requestCode == ChooserType.REQUEST_CAPTURE_PICTURE)) {
imageChooserManager.submit(requestCode, data);
}
}

همچنین باید این listener را implement کنید و در متد‌های اون تعیین کنید که پس از انتخاب عکس چه اتفاقی رخ بدهد:

 

@Override
public void onImageChosen(final ChosenImage image) {
runOnUiThread(new Runnable() {
@Override
public void run() {
if (image != null) {
// Use the image
// image.getFilePathOriginal();
// image.getFileThumbnail();
// image.getFileThumbnailSmall();
}
}
});
}
@Override
public void onError(final String reason) {
runOnUiThread(new Runnable() {
@Override
public void run() {
// Show error message
}
});
}

دقت کنید که باید permission زیر رو هم به manifest اضافه کنید:‌

 

<uses-permission android:name="android.permission.WRITE_EXTERNAL_STORAGE" />

 

4 پاسخ به “معرفی کتابخانه آزاد image-chooser-library برای اندروید”

  1. Misagh گفت:

    سلام با تشکر
    به این permission هم نیاز داره

پاسخ دهید

نشانی ایمیل شما منتشر نخواهد شد. بخش‌های موردنیاز علامت‌گذاری شده‌اند *

android application Google I/O HomeBrew ImageMagick Material Design mobile PogressBar RecyclerView splash TEDxKish ux آموزش اندروید الوین تافلر اندروید اپلیکیشن برنامه نویسی برنامه نویسی اندروید برنامه‌نویسی برنامه‌نویسی اندروید تداکس کیش تعمیر تغییر سایز عکس با ترمینال خلاصه کتاب دانش داده دانشگاه دانشگاه ایده‌آل دزد دیتا ساینس رشته مهندسی کامپیوتر ریکامندرسیستم سیستم‌های توصیه‌گر فری‌لنس لپتاپ متریال دیزاین معرفی کتاب موج سوم نوار پیشرفت همایش هوش مصنوعی ُجزیره کیش کار کسب و کار یادگیری عمیق یادگیری ماشین