2 duffy chung Duffy_Chung 于 2016.03.08 23:21 提问

android无法显示地理位置信息,求帮忙看下代码
 package com.example.locationtest;

import java.util.List;

import android.app.Activity;
import android.content.Context;
import android.location.Location;
import android.location.LocationListener;
import android.location.LocationManager;
import android.os.Bundle;
import android.widget.TextView;
import android.widget.Toast;

public class MainActivity extends Activity 
{
    private TextView positionTextView;
    private LocationManager locationManager;
    private String provider;

    @Override
    protected void onCreate(Bundle savedInstanceState) 
    {
        super.onCreate(savedInstanceState);
        setContentView(R.layout.activity_main);
        positionTextView=(TextView)findViewById(R.id.position_text_view);
        locationManager=(LocationManager)getSystemService(Context.LOCATION_SERVICE);
        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
        {
            Toast.makeText(this, "No location provider to use", Toast.LENGTH_SHORT).show();
            return;
        }
        Location location=locationManager.getLastKnownLocation(provider);
        if(location != null)
        {
            showLocation(location);
        }
        locationManager.requestLocationUpdates(provider,5000, 1, locationListener);
    }

    protected void onDestroy()
    {
        super.onDestroy();
        if(locationManager != null)
        {
            locationManager.removeUpdates(locationListener);
        }
    }

    LocationListener locationListener=new LocationListener()
        {
            @Override
            public void onStatusChanged(String provider,int status,Bundle extras)
            {

            }

            @Override
            public void onProviderEnabled(String provider) 
            {

            }
            @Override
            public void onProviderDisabled(String provider) 
            {

            }

            @Override
            public void onLocationChanged(Location location) 
            {
                showLocation(location);
            }
        };


    private void showLocation(Location location) 
    {
        String currentPosition="latitude is"+location.getLatitude()+"\n"+"longitude is"+location.getLongitude();
        positionTextView.setText(currentPosition);
    }
}

5个回答

u011249920
u011249920   2016.03.09 09:11

你配置文件中有没有加权限?

VNanyesheshou
VNanyesheshou   2016.03.09 09:33
dcxy0
dcxy0   Ds   Rxr 2016.03.09 09:48
dongfeng9ge
dongfeng9ge   Ds   Rxr 2016.03.09 10:30

1.可能没加权限
2.可能没联网也没开GPS
3.可能你把权限关了

crazy1235
crazy1235   Ds   Rxr 2016.03.09 10:36
Csdn user default icon
上传中...
上传图片
插入图片
准确详细的回答,更有利于被提问者采纳,从而获得C币。复制、灌水、广告等回答会被删除,是时候展现真正的技术了!
其他相关推荐
Android中修改地理位置信息
Android中修改地理位置信息
Android申请地理位置时的流程及源代码分析
location permission
Android范例编程一:获取地理位置
这一系列文章的目的是以单个需求为向导,十分钟左右能完成的Android范例编程。 前言:现在商业化的APP中不去获取用户位置信息的基本上没有,有的根据没有位置需求的也要请求下获取位置,可见是个标配需求了。从网上搜索到的相关信息没有关于请求更新后通过Looper和Handler来移除监听。 流程: 启动时获取系统位置服务 获得主线程Looper,在请求位置更新时传
VS2010编写的服务
求高手帮忙看下,断线报警器启动不了是怎么回事
android地理位置信息修改
android 地理位置信息修改 Android中修改地理位置信息
获取安卓位置信息
别忘了添加权限: 代码: //获取地理位置管理器 locationManager = (LocationManager) getSystemService(Context.LOCATION_SERVICE); //获取所有可用的位置提供器 List providers = locationManager.getProviders
Android将地理位置存储到图片扩展信息EXIF
图片EXIF
android模拟地理位置
今天做开发的时候遇到这个场景,需要测试不同位置的定位是否精准。要达到这样的测试必须可以实时的模拟地理位置。当然,模拟地理位置的方法有很多,但是可能有的时候会不适合。亲测了几个方案,使用有效分享一下。 方案1:用电脑上的模拟器 电脑上的模拟器一般都会自带GPS位置修改选项。我电脑上装的是Genymotion模拟器。修改地理位置也很方便。你可以通过修改地理位置的坐标来修改你所在的位置。上图
Android地理位置获取的那些坑
我算是搞明白了,无论是Framework还是Application,只要跟硬件相关的东西都有各种坑的存在。 所幸,也正是这些坑的存在,让这个行业形成了一道道门槛。 嗯,是这样的 坑在最后面Android地理位置获取最佳实践国外有Google Service的App如果你遇到的正好是这种App,那你太荣幸了,google service的play-service-location lib正好解决
Android中通过Exifinterface读取图片地理位置信息
效果图: 一、了解Exif EXIF(Exchangeable Image File)是“可交换图像文件”的缩写,是一种图像文件格式,它的数据存储与JPEG格式是完全相同的,当中包含了专门为数码相机的照片而定制的元数据,可以记录数码照片拍摄时的光圈、快门、白平衡、ISO、焦距、日期时间等各种和拍摄条件以及相机品牌、型号、色彩编码、拍摄时录制的声音以及GPS全球定位系统数据、缩略图等