zoukankan      html  css  js  c++  java
  • 确定位置的经纬度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();
                }
            }
        }
    }
  • 相关阅读:
    ef左联三张表案例
    sql常用语句汇总
    最初的ajax案例
    asp.net mvc请求响应模型原理回顾
    viewstate cookie和session原理回顾
    一般处理程序装配数据到html页的原理
    asp.net页面生命周期回顾
    rocketMQ 消息的 tag
    rocketMQ 订阅关系
    rocketMQ retry 消息的实现
  • 原文地址:https://www.cnblogs.com/zqxLonely/p/5509688.html
Copyright © 2011-2022 走看看