سلام 🖐
اگه توی پروژهای که با بیسیک 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