بررسی وضعیت اینترنت در بیسیک 4 اندروید

سلام 🖐
اگه توی پروژه‌ای که با بیسیک 4 اندروید توسعه داده میشه از وب ویو برای لود کردن یه URL توی اپلیکیشن استفاده کنید و موقع اجرای برنامه، گوشی به اینترنت وصل نباشه، ارور لود نشدن صفحه، توی خود وب ویو نمایش داده میشه و ظاهر زیبایی نداره…

با استفاده از این قطعه کد می‌تونید چک کنید که گوشی کاربر به اینترنت وصل هست یا نه. همچنین با استفاده از اطلاعاتی که به دست میاد، یا وب ویو رو مخفی کنید یا یه پیام خطا سفارشی نشون بدین. البته این کد کاربردهای دیگه‌ای هم میتونه داشته باشه ولی توی این پست و ویدیو (که به زودی منتشر میشه) برای این کار ازش استفاده می‌کنم.

کتابخانه‌های مورد نیاز:

Network

توی قسمت ProcessGlobals یک متغیر از نوع ServerSocket تعریف می‌کنیم:

Sub Process_Globals
 Dim server As ServerSocket
End Sub

حالا با استفاده از Sub زیر، آی پی دستگاه رو چک می‌کنیم:

Sub GetIp As Boolean
 server.Initialize(0,"")
 If server.GetMyIP = "127.0.0.1" Then
  Return False
 Else
  Return True
 End If
End Sub

همانطور که می‌دونید، اگه به اینترنت وصل نباشیم، آی پی پیشفرض دستگاه ۱۲۷.۰.۰.۱ هست. برای همین در شرط If داخل این Sub، آی پی رو چک می‌کنیم و این ساب، اگه آی پی برابر ۱۲۷.۰.۰.۱ باشه، False و اگه آی پی ۱۲۷.۰.۰.۱ نباشه (یعنی به اینترنت وصل باشیم)، True رو Return می‌کنه.

درضمن عدد ۰ در این خط، همون شماره پورت خودمونه 😅…

server.Initialize(0,””)

در نهایت (مثل کد زیر) می‌تونید از مقدار True یا False به دست اومده برای چک کردن وضعیت اتصال دستگاه به اینترنت استفاده کنید:

If GetIp=True Then
 ToastMessageShow("ارتباط با اینترنت برقرار است.",False)
Else
 ToastMessageShow("ارتباط با اینترنت برقرار نیست!",True)
End If

دیدگاه‌ خود را بنویسید

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