PDA

View Full Version : دریافت طول و عرض جغرافیایی



NIMA_1981
شنبه 01 تیر 1392, 18:21 عصر
دوستان میشه راهنمایی کنید برای دریافت طول و عرض جغرافیایی باید چی کار کنم
من از این کد استفاده میکنم اما به محضی که وارد برنامه میشه خطا میده و میاد بیرون

LocationManager lm = (LocationManager)getSystemService(Context.LOCATION _SERVICE);
Location location = lm.getLastKnownLocation(LocationManager.GPS_PROVID ER);
double longitude = location.getLongitude();
double latitude = location.getLatitude();
انیم به Manifest Permissionاضاقه کردم اما باز خطا میده و از برنامه میاد بیرون

<uses-permission android:name="android.permission.ACCESS_CORSE_LOCATION"/>

shahin bahari
شنبه 01 تیر 1392, 19:34 عصر
تا اونجا که میدونم خوندن از GPS جز Fine Location هست و خوندن از شبکه جز Coarse Location
پس میشه گفت پرمیشن شما برای این کار نیست!

NIMA_1981
یک شنبه 02 تیر 1392, 01:24 صبح
من Fine Location هم به پرمیشن ها اضافه کردم اما باز هم همین مشکل را داشت

NIMA_1981
یک شنبه 02 تیر 1392, 01:39 صبح
الان دوباره خط به خط تست کردم تا این 2 خط را اضافه کینم خطا برنامه کمپایل میشه اما سریع خطا میده و خارج میشه


double latitude = location.getLongitude();
double longitude = location.getLatitude();

hamid_hr
یک شنبه 02 تیر 1392, 10:28 صبح
اينم اضافه كن
<uses-permission android:name="android.permission.ACCESS_FINE_LOCATION" />

منبع
http://www.vogella.com/articles/AndroidLocationAPI/article.html

NIMA_1981
یک شنبه 02 تیر 1392, 12:20 عصر
دوست من من این کد هم قبلا اضافه کردم به برنامه توی پست قبلی نوشتم اما باز هم همین مشکل را داره - میشه اگه خودتون تست کردین درست کار میکنه یک نمونه برنامه اماده را برای من بفرستید من امتحان کنم

با تشکر

hamid_hr
یک شنبه 02 تیر 1392, 12:51 عصر
LocationManager locationManager = (LocationManager)getSystemService(Context.LOCATION _SERVICE);

final boolean gpsEnabled = locationManager.isProviderEnabled(LocationManager. GPS_PROVIDER);
//Toast.makeText(getApplicationContext(), String.valueOf(gpsEnabled), 1000).show();
if (gpsEnabled) {
//request for location updates
LocationListener locationListener = new MyLocationListener();

locationManager.requestLocationUpdates( LocationManager.GPS_PROVIDER, 50000, 0, locationListener);

Location myLocation;

myLocation = locationManager.getLastKnownLocation(LocationManag er.GPS_PROVIDER);

if(myLocation != null)
{
lat = String.valueOf(myLocation.getLatitude());
lon = String.valueOf(myLocation.getLongitude());
today.setToNow();
//we have a location!!
}
}

اينم رويداد هاش
public class MyLocationListener implements LocationListener
{

public void onLocationChanged(Location location) {
try{
lat = String.valueOf(location.getLatitude());
lon = String.valueOf(location.getLongitude());
}
catch(Exception ex){
}
}

public void onStatusChanged(String provider, int status, Bundle extras) {
// TODO Auto-generated method stub
}

public void onProviderDisabled(String provider) {
// TODO Auto-generated method stub

}

public void onProviderEnabled(String provider) {
// TODO Auto-generated method stub

lat = "0";
lon = "0";

}
}

NIMA_1981
یک شنبه 02 تیر 1392, 13:20 عصر
مرسی دوست من اون لینکی که داده بود خیلی کمک کرد

با تشکر از شما

darkenerboy
سه شنبه 04 تیر 1392, 22:01 عصر
میشه در راستای بالا رفتن سطح مطالب نتیجه ی بدست اومده رو در قالب یک سمپل بزارید
تا راه رفته ی شما رو دیگران بعدا نرن

m11111
سه شنبه 08 مهر 1393, 00:09 صبح
سلام یه سوال
LocationManager</span>.GPS_PROVIDER, 50000, 0, locationListener);
این 2 تا عدد 50000 و 0 رو میدونم چی هستن اما نمیدونم بهترین و بهینه ترین عدد چنده میشه راهنمایی کنید؟