`
chengfengyang
  • 浏览: 22161 次
社区版块
存档分类
最新评论

android之用户定位(一)

阅读更多
1、User Location 能做什么
1) 获取用户的位置
2)追踪用户的移动

2、User Location的关键API
1)LocationManager:用于光了android的用户定位服务
2) LocationProvider:提供多种定位方式,供开发者选择

3、定位方式的分类:
1)GPS定位:使用GPS卫星进行定位,需要在androidManifest.xml文件中添加如下权限声明:
android.permission.ACCESS_FINE_LOCTION
2)NETWORK定位
使用信号接收塔和Wi_Fi介入定进行定位,需要在需要在androidManifest.xml文件中添加如下权限声明:
android.permission.ACCESS_FINE_LOCTION

android.permission.ACCESS_COARSE_LOCTION

4、获取用户当前的位置的步骤
a.在androidManifest.xml中声明相应的权限
b.获取lacationManager的对象
c.选择LocationProvider
d.绑定LocationListener对象

androidManifest.xml

<?xml version="1.0" encoding="utf-8"?>
<manifest xmlns:android="http://schemas.android.com/apk/res/android"
      package="test.gps01"
      android:versionCode="1"
      android:versionName="1.0">
    <uses-sdk android:minSdkVersion="8" />

    <application android:icon="@drawable/icon" android:label="@string/app_name">
        <activity android:name=".TestGPS01Activity"
                  android:label="@string/app_name">
            <intent-filter>
                <action android:name="android.intent.action.MAIN" />
                <category android:name="android.intent.category.LAUNCHER" />
            </intent-filter>
        </activity>

    </application>
    <uses-permission android:name="android.permission.ACCESS_FINE_LOCATION"/>
</manifest>


布局文件main.xml
<?xml version="1.0" encoding="utf-8"?>
<LinearLayout xmlns:android="http://schemas.android.com/apk/res/android"
    android:orientation="vertical"
    android:layout_width="fill_parent"
    android:layout_height="fill_parent"
    >
<TextView  
    android:layout_width="fill_parent" 
    android:layout_height="wrap_content" 
    android:text="@string/hello"
    />
    <Button 
    android:id="@+id/button"
    android:layout_width="fill_parent"
    android:layout_height="wrap_content"
    android:text="测试"
    />
</LinearLayout>


mainActivity文件:
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.view.View;
import android.view.View.OnClickListener;
import android.widget.Button;

public class TestGPS01Activity extends Activity {
    /** Called when the activity is first created. */
	private Button button = null;
	
    @Override
    public void onCreate(Bundle savedInstanceState) {
        super.onCreate(savedInstanceState);
        setContentView(R.layout.main);
        
        button = (Button)findViewById(R.id.button);
        button.setOnClickListener(new ButtonListener());
    }
    private class ButtonListener implements OnClickListener
    {

		@Override
		public void onClick(View v) {
			// TODO Auto-generated method stub
			//获取LocationManager对象
			LocationManager locationManager = (LocationManager)TestGPS01Activity.this.getSystemService(Context.LOCATION_SERVICE);
			locationManager.requestLocationUpdates(LocationManager.GPS_PROVIDER, 0, 0, new TestLocationListener());
		}
    	
    }
    private class TestLocationListener implements LocationListener
    {

		@Override
		public void onLocationChanged(Location location) {
			// TODO Auto-generated method stub
			System.out.println(location.getLongitude());
			System.out.println(location.getLatitude());
		}

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

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

		@Override
		public void onStatusChanged(String provider, int status, Bundle extras) {
			// TODO Auto-generated method stub
			
		}
    	
    }
    
}
0
0
分享到:
评论

相关推荐

    Android Wifi Lbs 定位

    在移动设备上,尤其是Android系统,定位服务是不可或缺的功能之一。Android WiFi LBS(Location-Based Services,基于位置的服务)定位是通过结合WiFi网络信号和移动通信基站信息来确定设备的位置。这种定位方式在...

    Android 定位权限申请

    自Android 6.0(API级别23)开始,谷歌引入了一种新的权限管理模式——运行时权限(Runtime Permissions)。这个变化对开发者来说是一个重大调整,因为在此之前,应用在安装时一次性获取所有所需权限。以下是关于...

    Android-Android定位基于百度基础定位sdk封装

    本项目“Android-Android定位基于百度基础定位sdk封装”提供了一个方便开发者使用的Android定位解决方案,它基于百度地图SDK进行封装,简化了集成过程,使得开发者能够更快速地实现定位功能。 首先,我们需要了解...

    android 基站定位 返回定位的城市

    在Android开发中,基站定位是一种常见的获取用户地理位置的方法,它主要依赖于移动设备与周围基站之间的信号强度来确定位置。这种技术尤其适用于GPS信号不佳或者无法接收到GPS信号的环境,如室内。在这个名为...

    Android获取GPS定位示例程序

    在Android平台上,获取GPS定位是移动应用开发中的基础功能,尤其对于那些依赖地理位置信息的应用,如导航、社交、天气预报等。本示例程序"LocationDemo"是专门为开发者设计的,用于展示如何在Android Studio环境下...

    Android开发之百度地图定位打卡

    在Android开发中,集成百度地图并实现定位打卡功能是一项常见的需求。这涉及到多个技术点,包括Android SDK的使用、百度地图API的集成、位置服务的开启与管理、地图的显示与交互、以及自定义打卡逻辑等。下面我们将...

    android后台定时定位

    1. **Android服务(Service)**:Android Service是Android应用组件之一,它在后台运行,不与用户界面直接交互。为了在手机开机时自动启动服务,你需要创建一个自定义服务,并在AndroidManifest.xml文件中设置启动...

    android基于Gps 定位和基站定位获取经纬度

    在Android平台上,获取设备位置信息是一项关键功能,通常可以通过GPS(全球定位系统)和基站定位两种方式实现。本文将深入探讨这两种方法,并结合提供的源码分析其工作原理和实现细节。 1. GPS定位: GPS定位是...

    arcgis android之定位与显示

    在ArcGIS Android开发中,"arcgis android之定位与显示"是一个重要的主题,涉及到地图的离线使用、用户位置的获取以及与第三方服务(如百度地图)的集成。本篇将详细阐述这些关键知识点。 首先,ArcGIS Android是...

    android简单定位实例

    在Android平台上,实现简单的定位功能是一项常见的任务,它涉及到Android系统的地理位置服务,主要依赖于GPS(全球定位系统)以及网络定位技术。本实例将详细解析如何在Android应用中集成定位功能,让应用能够获取到...

    Android平台GPS定位

    在Android平台上,GPS定位是移动应用开发中的关键组成部分,它允许应用程序获取用户的实时地理位置信息,如经纬度坐标和海拔高度。对于开发者来说,理解和正确使用GPS定位服务是至关重要的,尤其是在处理location为...

    Android Studio定位

    本篇文章将深入探讨“Android Studio定位”这一主题,包括如何在Android Studio中进行地理定位、调试定位服务,以及相关的API和最佳实践。 一、Android Studio中的地理定位基础 1. Google Play服务:Android ...

    android 基于百度定位

    // 每5秒定位一次 option.setLocationMode(LocationClientOption.LocationMode.Battery_Saving); // 省电模式 mLocationClient.setLocOption(option); ``` 最后,别忘了在不再需要定位服务时关闭它: ```java ...

    Android GPS获得定位数据源代码

    在Android开发中,获取GPS定位数据是常见的需求,主要用于实现地图导航、位置服务等功能。本文将详细介绍如何通过源代码在Android设备上获取...不过,实际应用中应考虑更多的因素,如定位精度、电源管理、用户隐私等。

    Android地图定位googleSDK使用

    在Android开发中,集成Google Maps SDK和Google Location SDK是实现地图展示、定位功能的重要环节。本文将详细讲解如何使用这两个SDK来实现相应的功能,并提供一些关键知识点。 首先,我们需要在项目中添加Google ...

    Android地图定位与总结

    在Android开发中,地图定位是一项核心功能,广泛应用于各种应用,如导航、打车软件、社交网络等。本文将深入探讨Android地图定位的关键知识点,并基于提供的资料进行总结。 首先,Android地图定位涉及到的主要技术...

    Android版百度定位、腾讯定位、高德定位三者混合

    本项目"Android版百度定位、腾讯定位、高德定位三者混合"提供了一种混合定位模式,结合了百度、腾讯和高德三家主流地图服务商的定位API,旨在为开发者提供更灵活、高效的定位解决方案。 ### 1. 定位原理 定位主要...

    AndroidGPS定位源码

    在Android平台上,GPS(全球定位系统)定位是开发者常用的功能之一,用于获取设备的精确位置信息。本资源提供了Android GPS定位的实例源码,对于学习和理解如何在Android应用中集成GPS定位至关重要。通过分析这些...

    android后台服务定位

    在Android系统中,后台服务(Service)是一种可以长时间运行而不提供用户界面的组件,它对于实现应用程序在后台执行任务,如音乐播放、定时任务、数据同步等非常关键。特别是对于定位功能,Android后台服务能够允许...

    Android GPS定位源码

    这个"Android GPS定位源码"提供了一种实现方式,帮助开发者能够获取到经纬度信息,从而实现各种基于位置的服务,如导航、地图应用、地理围栏等。 在Android中,定位服务主要依赖于LocationManager和Location...

Global site tag (gtag.js) - Google Analytics