`
yidongkaifa
  • 浏览: 4118632 次
文章分类
社区版块
存档分类
最新评论

Android的Location功能代码

 
阅读更多

无废话,上代码。此代码为Location功能的简单封装。


package arui.csdn.net;

import static android.provider.Settings.ACTION_LOCATION_SOURCE_SETTINGS;
import android.app.Activity;
import android.content.Context;
import android.content.Intent;
import android.location.Location;
import android.location.LocationListener;
import android.location.LocationManager;
import android.os.Bundle;

public class LocationUtil {

	public static boolean isEnabled(Context context) {
		LocationManager mLocationManager = (LocationManager) context
				.getSystemService(Context.LOCATION_SERVICE);
		if (mLocationManager.isProviderEnabled(LocationManager.GPS_PROVIDER)) {
			return true;
		}
		if (mLocationManager
				.isProviderEnabled(LocationManager.NETWORK_PROVIDER)) {
			return true;
		}
		return false;
	}

	public static void startLocationService(Context context) {
		LocationManager mLocationManager = (LocationManager) context
				.getSystemService(Context.LOCATION_SERVICE);
		mLocationManager.requestLocationUpdates(LocationManager.GPS_PROVIDER,
				1000L, 10, mLocationListener);
		mLocationManager.requestLocationUpdates(
				LocationManager.NETWORK_PROVIDER, 1000L, 10,
				mLocationListener);
	}

	public static void stopLocationService(Context context) {
		LocationManager mLocationManager = (LocationManager) context
				.getSystemService(Context.LOCATION_SERVICE);
		mLocationManager.removeUpdates(mLocationListener);
	}

	public static Location getLocationByGPS(Context context) {
		LocationManager mLocationManager = (LocationManager) context
				.getSystemService(Context.LOCATION_SERVICE);
		Location location = mLocationManager
				.getLastKnownLocation(LocationManager.GPS_PROVIDER);
		return location;
	}

	public static Location getLocationByNetwork(Context context) {
		LocationManager mLocationManager = (LocationManager) context
				.getSystemService(Context.LOCATION_SERVICE);
		Location location = mLocationManager
				.getLastKnownLocation(LocationManager.NETWORK_PROVIDER);
		return location;
	}

	public static void openLocationSetting(Activity act, int requestCode) {
		act.startActivityForResult(new Intent(ACTION_LOCATION_SOURCE_SETTINGS),
				requestCode);
	}

	private static final LocationListener mLocationListener = new LocationListener() {

		public void onLocationChanged(Location location) {
			// 当坐标改变时触发此函数,如果Provider传进相同的坐标,它就不会被触发
			System.out.println("onLocationChanged:" + location.getLatitude());
		}

		public void onProviderDisabled(String provider) {
			// Provider被disable时触发此函数,比如GPS被关闭
			System.out.println("onProviderDisabled:" + provider);
		}

		public void onProviderEnabled(String provider) {
			// Provider被enable时触发此函数,比如GPS被打开
			System.out.println("onProviderEnabled:" + provider);
		}

		public void onStatusChanged(String provider, int status, Bundle extras) {
			// Provider的转态在可用、暂时不可用和无服务三个状态直接切换时触发此函数
			System.out.println("onStatusChanged:" + status);
		}
	};
}

需要增加权限:

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

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

---------------------------------------------------------------------------

GL(arui319)

http://blog.csdn.net/arui319

<本文可以转载,但是请保留以上作者信息。谢谢。>

---------------------------------------------------------------------------

分享到:
评论

相关推荐

    Android定位功能代码

    在Android开发中,定位功能是不可或缺的一部分,它允许应用程序获取用户的位置信息,为导航、社交以及其他基于位置的服务提供基础。本教程将详细讲解如何利用百度地图API在Android应用中实现定位功能。 首先,我们...

    Android Location

    在"Android Location"主题中,我们将深入探讨如何在Android应用中实现定位功能。 首先,Android提供了`LocationManager`类,它是与位置服务交互的主要接口。通过`LocationManager`,开发者可以请求特定的定位提供者...

    Android 4.2.2源代码

    同时,系统服务如Location Services(位置服务)、Media Framework(多媒体框架)等都在源代码中有详细实现。 6. **安全机制**:Android 4.2.2强化了权限管理,源代码中可以学习到如何设置权限,以及权限验证的实现...

    Android 开发范例代码大全(第2版)(附源码)

    《Android 开发范例代码大全(第2版)》是一本深入浅出的Android开发实践指南,涵盖了Android应用开发的各个重要方面。这本书以其丰富的范例代码和详细的解释,为开发者提供了宝贵的参考资料,无论是初学者还是有...

    Android_Location_V1.3.0.jar

    在Android应用开发中,位置服务是一项至关重要的功能,它允许应用程序获取设备的地理位置信息,用于导航、定位服务、社交应用等多种用途。`Android_Location_V1.3.0.jar` 文件是针对这一需求的一个特定版本的库,...

    android 模拟位置信息Location使用示例

    在Android开发中,模拟位置信息是一项重要的功能,特别是在测试或者开发与地理位置相关的应用时。`Location`类是Android系统提供的一种用于表示地理位置信息的核心类,它包含了经度、纬度、速度、海拔、时间和精度等...

    eclipse查看Android源代码

    Eclipse作为早期广泛使用的Android IDE,提供了查看源码的功能。本篇将详细介绍如何在Eclipse中查看Android源代码,以及相关知识点。 首先,我们需要下载Android的源代码。在本例中,提到的是针对`android-8`版本的...

    Android百度地图代码

    在Android开发中,集成百度地图是一项常见的需求,它能够为应用程序提供定位、导航、路径规划等丰富的地图功能。本文将详细讲解如何在Android项目中实现百度地图的集成,并基于提供的"Android百度地图代码"进行深入...

    android考勤系统 代码

    这个源代码可能包含了以上提到的一些或全部功能的实现,通过对这些代码的学习,开发者可以了解Android应用开发的实际流程,以及如何处理实际项目中的各种问题。如果你打算深入研究这个考勤系统,建议先从整体架构...

    android studio wifi 扫描 连接代码

    本文将详细讲解如何通过Android Studio编写代码来实现这一功能,包括检查WiFi状态、扫描可用网络、选择热点并进行连接。 首先,我们需要在AndroidManifest.xml文件中添加必要的权限,允许应用访问和修改WiFi状态: ...

    android-GPS位置模拟精简代码自创可用

    以上就是关于“android-GPS位置模拟精简代码自创可用”的核心知识点,它可以帮助开发者在测试阶段高效地验证与位置相关的功能。通过理解并运用这些知识,你可以在不离开办公室的情况下完成地理位置功能的测试和调试...

    一个简单的android GPS DEMO代码

    本DEMO代码旨在展示如何在Android应用中实现基本的GPS功能,让开发者能够理解和学习如何获取用户的位置坐标。下面我们将深入探讨这个DEMO涉及的关键知识点。 1. **权限声明**:在AndroidManifest.xml文件中,你需要...

    android网络测速app源代码

    【Android网络测速App源代码】是一个专门为Android平台设计的应用程序,用于测试设备的网络速度,包括上传和下载的速度。这个App不仅提供了基本的测速功能,还具有记录查询和结果保存到TXT文件的能力,同时结合了...

    android google map 本地服务 locationservice

    在Android开发中,Google Maps API是一个非常重要的工具,它允许开发者在应用中集成地图功能,包括定位、导航、路线规划等。本知识点主要关注的是如何在Android应用中使用本地服务(Locationservice)来实现与Google...

    串口调试工具 Android代码

    - **Android串口调试代码**:这可能是指开源的Android串口通信代码库,开发者可以参考这些代码实现自己的串口调试功能。 - **虚拟串口工具**:如VSPD(Virtual Serial Port Driver),它可以创建虚拟串口,使得软件...

    android4.4源代码

    对于开发者来说,Android 4.4源代码还包含了各种服务和API的实现,如Location Services、Google Play Services和多媒体支持。例如,多媒体库的更新使得音频和视频的处理能力增强,支持更多格式和编码。 在安全性...

    android studio 陀螺仪 demo 源代码

    Android Studio是Google官方推出的Android应用开发集成开发环境(IDE),它提供了丰富的功能,包括代码编辑、调试、构建、性能分析等,使得开发者可以高效地创建Android应用。在本压缩包中,"android studio 陀螺仪 ...

    foursquare android客户端源代码

    这份源代码为开发者提供了深入理解移动应用开发,特别是Android平台上地理位置服务和社交功能集成的宝贵资源。 在Android开发中,源代码通常包含了以下几个关键组成部分: 1. **项目结构**:foursquare的Android...

    android多功能时钟全代码

    这个项目名为“android多功能时钟全代码”,意味着它包含了实现各种时钟功能的完整源代码。下面我们将详细探讨这款应用可能涉及的一些核心知识点。 1. **Android SDK和编程语言**:首先,这个项目基于Android平台,...

Global site tag (gtag.js) - Google Analytics