确定位置的经纬度LocationUtil

package com.pingyijinren.test;

import android.content.Context;
import android.location.Location;
import android.location.LocationListener;
import android.location.LocationManager;
import android.os.Bundle;
import android.util.Log;

import java.util.List;

/**
 * Created by Administrator on 2016/5/19 0019.
 */
public class LocationUtil {
    public static Context context;
    private static LocationManager locationManager;
    private static Location location;
    private static LocationListener locationListener;

    public static String getLocation() {
        locationManager = (LocationManager) context.getSystemService(Context.LOCATION_SERVICE);
        String provider;
        String result=null;
        List<String> providerList = locationManager.getProviders(true);
        if (providerList.contains(LocationManager.GPS_PROVIDER)) {
            provider = LocationManager.GPS_PROVIDER;
        } else if (providerList.contains(LocationManager.NETWORK_PROVIDER)) {
            provider = LocationManager.NETWORK_PROVIDER;
        } else {
            Log.d("MainActivity","没有开启位置服务");
            return null;
        }

        try{
            location=locationManager.getLastKnownLocation(provider);
            if(location!=null){
                result=location.getLatitude()+" "+location.getLongitude();
            }
            locationListener=new LocationListener(){
                @Override
                public void onStatusChanged(String provider,int status,Bundle extra){}

                @Override
                public void onProviderEnabled(String provider){}

                @Override
                public void onProviderDisabled(String provider){}

                @Override
                public void onLocationChanged(Location changedLocation){
                    location=changedLocation;
                }
            };
            locationManager.requestLocationUpdates(provider,0,0,locationListener);
        }
        catch(SecurityException e){
            e.printStackTrace();
        }

        return result;
    }

    public static void onDestroy(){
        if(locationManager!=null){
            try{
                locationManager.removeUpdates(locationListener);
            }
            catch(SecurityException e){
                e.printStackTrace();
            }
        }
    }
}
时间: 2024-10-15 21:03:54

确定位置的经纬度LocationUtil的相关文章

百度地图定位 : 获取当前位置的经纬度

说明: 1.初始化 BaiduMap SDK要在显示界面之前,即: SDKInitializer.initialize(Context); setContentView(R.layout.main); 2. 设置定位的模式是 LocationMode.Hight_Accuracy 时,在室内可能无法获取到准确的经纬度,会得到默认的值是4.9E-324 处理办法是将模式改为Battery_Saving,或到室外 3.可以根据当前设备网络连接情况和GPS是否开启来设定定位模式 //获得网络连接情况

欧美斯项目签到功能,实时获取当前所在位置的经纬度

由于欧美斯项目需要签到功能,因此需要给后台传一个当前位置的经纬度,以下是获取经纬度的方法 1>导入CoreLocation.frameWork 2>引入头文件,并遵循协议 #import <CoreLocation/CoreLocation.h> <CLLocationManagerDelegate> 3>代码 @interface YYAboutUsViewController ()<UIWebViewDelegate,CLLocationManagerD

UWP Windows10开发获取设备位置(经纬度)

1.首先要在UWP项目的Package.appxmanifest文件中配置位置权限,如下图所示: 2.Package.appxmanifest后选择第三个选项卡,勾选位置权限(Location) 打开 3.然后创建一个LocationManage类,包括以下代码: public async static Task<Geoposition> GetPosition() { //请求对位置的访问权 var accessStatus = await Geolocator.RequestAccessA

根据HTML5 获取当前位置的经纬度

是想让地图的定位用户位置更准确一些. 查看了介绍: http://www.w3school.com.cn/html5/html_5_geolocation.asp 看介绍中拿数据挺简单. <!DOCTYPE html> <html> <body> <p id="demo">点击这个按钮,获得您的坐标:</p> <button onclick="getLocation()">试一下</but

Android实战--基于位置的服务(获取自己位置的经纬度+百度地图)

需要借助LocationManager类实现,下面直接看代码: <?xml version="1.0" encoding="utf-8"?> <LinearLayout xmlns:android="http://schemas.android.com/apk/res/android" android:layout_width="fill_parent" android:layout_height="

android取得所在位置的经纬度

android提供了LocationManager来取得位置,用LocationListener来监听位置的变化 先做一些初始化工作: /** latitude and longitude of current location*/ public static String mLat = ""; public static String mLon = ""; /** time out for GPS location update */ private Timer

Uwp Windows10获取设备位置(经纬度)

先在Package.appxmanifest中配置位置权限 2. 创建LocationManager类 1 using System; 2 using System.Collections.Generic; 3 using System.Linq; 4 using System.Text; 5 using System.Threading.Tasks; 6 using Windows.Devices.Geolocation; 7 8 namespace Weather 9 { 10 public

百度地图用ip获取当前位置的经纬度(高精度)

步骤比较简单先上百度地图API官网,申请一个应用AK(访问凭据):查看一下高进度定位的API,看看是否都符合要求下面直接上代码 /** * 根据ip获取地理坐标 * @param ip * @return */ public JSONObject getCoorsByIp(String ip){ if (null == ip) { ip = ""; } try { URL url = new URL("http://api.map.baidu.com/highacciploc

ios获取当前城市 ,位置,坐标,经纬度

有些时候可能只是用到地图的某些功能,比如获取当前所在的城市,然后根据城市返回相应的数据,而不需要其他操作,每次都要写那么几行代码,所以就做了小小的封装,后期可能会添加新功能,来适应app的各种需求(使其变得更为强大) github打包地址:https://github.com/iOSSinger/SGLocation 核心代码: 使用方法: //一行代码获取当前城市 [loc setGetCity:^(NSString *city) { NSLog(@"%@",city); }]; /