گرفتن کشور، استان و شهر کاربر با دادن طول و عرض جغرافیایی در B4A
گاهی اوقات پیش میاد که با استفاده از کتابخانه LocationManager و یا هر کتابخانهی دیگه ای اقدام به دریافت طول و عرض جغرافیایی کاربر میکنیم و یا این اطلاعات رو از قبل داریم، با این تابع کاربردی با دادن این موقعیت نام کشور، استان و شهر کاربر رو دریافت میکنیم.
✅ استفاده
۱٫ تابع جاوای زیر رو به محیط کدنویسی تون اضافه و کتابخانه JavaObject رو تیک بزنید:
#if java import java.io.IOException; import java.util.ArrayList; import java.util.List; import java.util.Locale; import android.location.Address; import android.location.Geocoder; public List getinfo(double MyLat,double MyLong) throws IOException{ Geocoder geocoder = new Geocoder(this, Locale.getDefault()); List<Address> addresses = geocoder.getFromLocation(MyLat, MyLong, 1); String cityName = addresses.get(0).getAddressLine(0); String stateName = addresses.get(0).getAddressLine(1); String countryName = addresses.get(0).getAddressLine(2); List<String> l = new ArrayList<String>(); l.add(cityName); l.add(stateName); l.add(countryName); return l; } #End If
▶️ تابع بالا در زبان جاوا نیز قابل استفاده هست.
۲٫ دادن Lat و Long و چاپ اطلاعات:
Dim j As JavaObject j.InitializeContext Dim list1 As List=j.RunMethod("getinfo",Array(37.2213871,49.2916187)) Log(list1.Get(0)) 'شهر Log(list1.Get(1)) 'استان Log(list1.Get(2)) 'کشور