ارسالها: 46
موضوعها: 14
تاریخ عضویت: خرداد 1395
اعتبار:
0
تشکرها: 19
4 بار تشکر شده در 4 پست
سلام دوستان و اساتید عزیز
من پروژه قبلم روش چک اتصال به سرور رو از نظر خودم خیلی بد نوشتم و میخام توی پروژه جدیدم یه روش بهینه و سریع تری رو برای این کار انتخاب و پیاده سازی کنم.
اگه میشه توضیحاتی درباره این که چطوری اتصال به سرور رو چک کنم که سرعتش بهینه ترین باشه؟
12-10-1395، 10:52 ق.ظ
(آخرین تغییر در ارسال: 12-10-1395، 12:30 ب.ظ توسط balutsoft.)
ارسالها: 46
موضوعها: 14
تاریخ عضویت: خرداد 1395
اعتبار:
0
تشکرها: 19
4 بار تشکر شده در 4 پست
ACCESS_NETWORK_STATE برای این در اندروید 6 نیازی به گرفتن ران تایم پرمیشن نیست؟
و ایا میشه اینی که شما پینگ گرفتید از 8.8.8.8 از سرور خودمون بگیریم؟
اگه این کار رو بکنیم چه مشکلاتی احتمالش هستش به وجود بیاد؟
ارسالها: 5
موضوعها: 0
تاریخ عضویت: تير 1396
اعتبار:
0
تشکرها: 50
0 بار تشکر شده در 0 پست
داخل یک اکتیویتی این متد رو نوشتم و داخل شرط if (isOnline()) یه درخواست با والی به سرور ارسال کردم که یک آرای جیسون نسبتا کوچکی(اطلاعات 40 سطر 4 ستونه که هرکدوم شامل حداکثر200 کاراکتر هست) رو دریافت میکنم و در ریسایکلر ویو نمایش میدم.و برای else یه توست میدم که "اتصال برقرار نیست" .
سوال اینجاست که وقتی کد رو تست میکنم(بارها و با دستگاههای مختلف تست شده) هم توست رو نشون میده و هم اطلاعات رو دریافت میکنه و ریسایکلر ویو رو پر میکنه و نشون میده.
(در استفاده های دیگه ای از همین متد ،گاها false برمیگرده در حالی که اتصال برقرار هست)
چرا؟
لطفا راهنمایی بفرمایید که ضعف پیاده سازی بنده چی میتونه باشه؟
ارسالها: 3,701
موضوعها: 140
تاریخ عضویت: اردیبهشت 1394
اعتبار:
134
تشکرها: 195
3447 بار تشکر شده در 2120 پست
ممکنه در اون لحظه Timeout داشته باشین. بهتره زمان انتظار رو برای چککردن افزایش بدین. اگه جواب زودتر رسید که خوب حله ولی اگه دیرتر رسید، حداقل تا 10 ثانیه (با توجه به سرعت اینترنت در نقاط مختلف کشور و اپراتورهای مختلف و...) بعنوان زمان انتظار داشته باشین.
ارسالها: 5
موضوعها: 0
تاریخ عضویت: تير 1396
اعتبار:
0
تشکرها: 50
0 بار تشکر شده در 0 پست
ممکنه راجع به ست کردن زمان انتظار بیشتر توضیح بدین.
منظورتون استفاده از broadcast برای اینکه وقتی اتصال برقرار شد اطلاع بده و بعد رکوئست بفرستم ؟و یا مثلا استفاده از ترد و sleep تا وقتی که اتصال برقرار شه و بعد ارسال رکوئست ؟
ارسالها: 3,701
موضوعها: 140
تاریخ عضویت: اردیبهشت 1394
اعتبار:
134
تشکرها: 195
3447 بار تشکر شده در 2120 پست
منظورم اینه که وقتی درخواست اتصال به سرور میدین میتونین زمان انتظار رو مشخص کنین. این زمان رو بیشتر از حالت پیشفرض تعریف کنید.
ارسالها: 3,701
موضوعها: 140
تاریخ عضویت: اردیبهشت 1394
اعتبار:
134
تشکرها: 195
3447 بار تشکر شده در 2120 پست
اول لاگ سرور رو چک کنید. ممکنه سرورتون مشکلی داره و واقعاً جواب رو در زمان مقرر نمیفرسته. بعد هم پیشنهاد میکنم از Retrofit استفاده کنید. درنهایت بهتره که بهسمت استفاده از روشها و فناوریهای نوین و بروزتر مثل LiveData حرکت کنید.