هر آنچه به شما نمی‌آموزند...

از Apache HTTP Client در اندروید استفاده نکنید

یکی از مواردی که چند روز پیش با اون مواجه شدم این بود که برنامه‌نویسی رو دیدم که برای برقراری ارتباط با سرور ساید از HTTP کلاینت آپاچی استفاده میکرد. این مورد باعث شد که امروز در مورد اینکه چرا نباید از HTTP Client پکیج آپاچی استفاده کنیم مطلبی کوتاه بنویسم.

در گذشته این موضوع که توسعه‌دهنگان اندروید تصمیم گرفته بودند Apache HTTP Client رو به عنوان یک API در اندروید قرار دهند بسیار جالب توجه بود. اما با گذشت زمان با اینکه بسیاری از برنامه‌نویسان اندروید ایرانی همچنان از این API به عنوان تنها آپشن خود در برنامه نویسی استفاده میکردند، در سطح بین‌المللی شاهد این بودیم که روز به روز از محبوبیت این پکیج کاسته میشد و در یکی از اعلامیه‌های Google I/O در سال 2015 اعلام شد که این API رفته رفته منسوخ خواهد شد. پس از این اعلامیه، گوگل با معرفی نسخه 6 اندروید پشتیبانی از Apache HTTP Client را بطور کلی قطع کرد و این تابع در لیست توابع منسوخ شده قرار گرفت.

بنابراین اگر شما نیز جز توسعه‌دهندگانی هستید که هنوز ارادت خاصی به این API دارید و به دلیل آپدیت نکردن محیط توسعه و SDK خودتون از Deprecate شدن آن بی‌خبرید، توجه کنید که در صورت استفاده از این API برنامه شما در گوشی‌های با اندروید 6 به بالا اجرا نخواهد شد.

پس همین امروز برای حفظ سازگاری برنامه خود با اندروید 6 اقدام کنید. اگر برنامه شما از این کلاینت استفاده میکند و نسخه‌‌های 2.3 به بالا را هدف گرفته‌اید، از کلاس HttpURLConnection استفاده کنید. این API نسبت به کلاینت آپاچی کارامدتر بوده و مصرف اینترنت را طریق transparent compression (فشرده‌سازی) و کش کردن پاسخ، کمتر میکند؛ لذا مصرف باطری نیز کاهش میابد.

همچنین میتوانید از پکیج‌های محبوب دیگری چون OkHttp یا Spring جهت برقراری ارتباط به HTTP استفاده کنید. اما اگر مصّر به استفاده از Apache HTTP Client هستید، کافیست dependency زیر را به build.gradle خود اضافه کنید تا این پیکج به عنوان یک کتابخانه به پروژه شما اضافه شده و برنامه شما با اندروید 6 به بالا هم سازگاری داشته باشد:

android {
    useLibrary 'org.apache.http.legacy'
}
۲۰ فروردين ۹۵ ، ۱۶:۰۰ ۱ نظر موافقین ۲ مخالفین ۰

اکلیپس یا اندروید استودیو

 

یکی از سوالاتی که هنگام جستجو در نت و یا در انجمن های برنامه نویسی با اون برخورد میکنیم این هست که «اندروید استودیو بهتر است یا اکلیپس؟»

در این مقاله اختصاصی، آیس کت سعی دارد به این سوال شما جواب دهد. پس اگر جز آن دسته از دوستانید که در پاسخ به این سوال دچار مشکل شده اید، به شما پیشنهاد میکنید در ادامه این مطلب با ما همراه باشید تا با خواندن نظر نویسندگان آیس کت بتوانید تصمیم خود را بگیرید.

ادامه مطلب...
۱۵ فروردين ۹۵ ، ۱۰:۰۰ ۴ نظر موافقین ۳ مخالفین ۰

WPS چگونه باعث هک شدن وای‌فای میشود؟

سوالی که این روزها ذهن خیلی ها رو به خودش مشغول کرده هک کردن وایرلس دوستان و همسایگان و آشنایان و بستگان است.

در آنطرف قضیه نیز مطمئناً تو ذهن خودتون به این فکر میکنید که چیکار کنم وایرلس من هک نشه؟

مطمئناً با نرم افزارهایی که بر روی گوشی شما نصب میشوند و با استفاده از آن میتوانید وایرلس دیگران را هک کنید آشنا هستید (مانند WPS Connect)، اما آیا از خود پرسیده اید این نرم افزارها چگونه اقدام به هک کردن وایرلس میکنند؟

در این پست که برای اولین بار توسط آیس کت منتشر میشود به تحلیل روشی که اینگونه نرم افزارها برای هک کردن وایرلس استفاده میکنند میپردازیم.

ادامه مطلب...
۲۶ اسفند ۹۴ ، ۱۶:۲۶ ۱۳ نظر موافقین ۳ مخالفین ۰

شروع به کار آیس کت

نیازی نیست یک متخصص باشیم تا کیفیت پایین برنامه‌های کامپیوتری را متوجه شویم، هر کسی با یک نگاه کوتاه و گذرا میتواند اشتباهات فاحش برنامه‌نویسان چه در زمینه کد نویسی و چه زمینه طراحی را متوجه شود. از استفاده از محیط‌های توسعه منسوخ شده گرفته تا استفاده از توابع دپرکیت شده.

اما اوضاع وقتی فاجعه بار تر میشود که فرد برنامه‌نویس حتی با ساده‌ترین مفاهیم طراحی برنامه و رنگها نیز آشنا نبوده و نتوانسته با انتخاب رنگ پس‌زمینه و پیش‌زمینه مناسب کنتراست صحیحی را ایجاد کند.

بسیاری از این مسائل به دلیل کمبود مقالات و آموزش نادرست افراد است که باعث شده اکثر نرم‌افزارهای ساخته شده توسط برنامه‌نویسان ایرانی با حداقل استاندارهای موجود فاصله چشمگیری داشته باشد.

«آیس کت» رسانه‌ای است تحقیقاتی، مطالب آن دسته اول بوده و توسط نویسندگان آن بطور انحصاری برای آیس کت تهیه و تدوین شده است. چنانچه نظرتان با مقالات ما متفاوت است، لطفاً حتماً آنرا به اطلاع ما برسانید تا شما نیز سهمی در گسترش صحیح دانش داشته باشید.

پس با ما همراه باشید.

۲۴ اسفند ۹۴ ، ۰۱:۲۲ ۰ نظر موافقین ۲ مخالفین ۰