• linkedu视频
  • 平面设计
  • 电脑入门
  • 操作系统
  • 办公应用
  • 电脑硬件
  • 动画设计
  • 3D设计
  • 网页设计
  • CAD设计
  • 影音处理
  • 数据库
  • 程序设计
  • 认证考试
  • 信息管理
  • 信息安全
菜单
linkedu.com
  • 网页制作
  • 数据库
  • 程序设计
  • 操作系统
  • CMS教程
  • 游戏攻略
  • 脚本语言
  • 平面设计
  • 软件教程
  • 网络安全
  • 电脑知识
  • 服务器
  • 视频教程
  • JavaScript
  • ASP.NET
  • PHP
  • 正则表达式
  • AJAX
  • JSP
  • ASP
  • Flex
  • XML
  • 编程技巧
  • Android
  • swift
  • C#教程
  • vb
  • vb.net
  • C语言
  • Java
  • Delphi
  • 易语言
  • vc/mfc
  • 嵌入式开发
  • 游戏开发
  • ios
  • 编程问答
  • 汇编语言
  • 微信小程序
  • 数据结构
  • OpenGL
  • 架构设计
  • qt
  • 微信公众号
您的位置:首页 > 程序设计 >Android > [android] 手机卫士手机定位的原理,android卫士

[android] 手机卫士手机定位的原理,android卫士

作者:网友 字体:[增加 减小] 来源:互联网 时间:2017-05-26

网友通过本文主要向大家介绍了android360手机卫士,android手机安全卫士,android手机卫士,android360卫士,android360安全卫士等相关知识,希望对您有所帮助,也希望大家支持linkedu.com www.linkedu.com

[android] 手机卫士手机定位的原理,android卫士


手机定位的三种方式:网络定位,基站定位,GPS定位

 

 

网络定位,手机连上wifi 2g 3g的时候,手机会有一个ip,误差很大

基站定位,精确度与基站的多少有关,几十米到几公里的误差

GPS定位,至少需要三颗卫星才能定位,在空旷的地方准确

 

手机使用A-GPS需要网络来辅助定位,定位速度快,网络记录了上次的卫星轨道,

 

 

获取LocationManager对象,通过getSystemService(LOCATION_SERVICE)

调用LocationManager对象的requestLocationUpdates()方法,请求位置更新,参数:

定位方式(“gps”),更新时间(60000),更新距离(50),LocationListener对象

 

LocationListener是一个接口,需要做它的实现类

定义MyLocationListener实现LocationListener,实现它下面的方法

onLocationChanged(),当位置改变的时候回调,传递进来一个Location对象

调用location对象的getLongitude()方法,得到经度

调用Location对象的getLatitude()方法,得到维度

调用Location对象的getAccuracy()方法,得到精确度

 

onStatusChanged(),当状态改变的时候回调,关闭 开启

onProviderEnabled(),当某一个位置提供者可用了

onProviderDisabled(),当某一个位置提供者不可用了

 

当activity销毁的时候,取消监听位置

重写activity的onDestroy()方法

调用LocationManager对象的removeUpdates(),取消监听,参数:LocationListener对象

把LocationListener对象置为null,垃圾回收

 

需要的权限

android.permission.ACCESS_FINE_LOCATION 获取精准位置

android.permission.ACCESS_COARSE_LOCATION 获取粗略的位置

android.permission.ACCESS_MOCK_LOCATION 获取模拟的位置(模拟器开发的时候)

 

模拟器上,ddms里面发送以下位置,才能显示

 

国家对坐标进行了加偏处理,变成火星坐标,需要国家测绘局的插件,网上有火星坐标转换代码

package com.tsh.mylocation;

import android.app.Activity;
import android.location.Location;
import android.location.LocationListener;
import android.location.LocationManager;
import android.os.Bundle;
import android.view.Menu;
import android.view.MenuItem;
import android.widget.Toast;

public class MainActivity extends Activity {
    private LocationManager lm;
    private LocationListener listener;
    @Override
    protected void onCreate(Bundle savedInstanceState) {
        super.onCreate(savedInstanceState);
        setContentView(R.layout.activity_main);
        //获取位置管理器
        lm=(LocationManager) getSystemService(LOCATION_SERVICE);
        listener=new MyLocationListener();
        lm.requestLocationUpdates("gps", 0, 0, listener);
    }
    private class MyLocationListener implements LocationListener{

        @Override
        public void onLocationChanged(Location location) {
            //获取经度
            String longitude="经度:"+location.getLongitude();
            String latitude="纬度:"+location.getLatitude();
            String acc="精确度:"+location.getAccuracy();
            Toast.makeText(MainActivity.this, longitude+latitude+acc, 1).show();
        }

        @Override
        public void onStatusChanged(String provider, int status, Bundle extras) {
            
        }

        @Override
        public void onProviderEnabled(String provider) {
        }

        @Override
        public void onProviderDisabled(String provider) {
            
        }
        
    }
}

 

分享到:QQ空间新浪微博腾讯微博微信百度贴吧QQ好友复制网址打印

您可能想查找下面的文章:

  • Android 手机卫士17--缓存清理,android17--
  • Android 手机卫士13--进程设置,android13--
  • Android 手机卫士10--应用管理器,android10--
  • Android 手机卫士8--删除通话记录,android8--
  • Android 手机卫士--导航界面4的业务逻辑,android卫士
  • Android 手机卫士--平移动画实现,android卫士
  • Android 手机卫士--获取联系人信息并显示与回显,android回显
  • Android 手机卫士--参照文档编写选择器,android选择器
  • Android 手机卫士--导航界面2,android卫士
  • Android 手机卫士--设置界面&功能列表界面跳转逻辑处理,android卫士--界面

相关文章

  • 2017-05-26Bottom Sheet
  • 2017-05-26深入理解Activity启动流程
  • 2017-05-26源码解析Android中AsyncTask的工作原理
  • 2017-05-26Android设置透明状态栏和透明导航栏,android导航栏
  • 2017-05-26Android软件开发之SharedPreferences,sharedpreferences
  • 2017-05-224.1.3 Activity登堂入室
  • 2017-05-26Android学习第五篇——动画效果
  • 2017-05-26Android 弱引用和软引用,android引用和软
  • 2017-05-26Android开发笔记(5)——方法调用(基础),android笔记
  • 2017-05-26DrawerLayout的openDrawer()和closeDrawer()方法,drawerlayout

文章分类

  • JavaScript
  • ASP.NET
  • PHP
  • 正则表达式
  • AJAX
  • JSP
  • ASP
  • Flex
  • XML
  • 编程技巧
  • Android
  • swift
  • C#教程
  • vb
  • vb.net
  • C语言
  • Java
  • Delphi
  • 易语言
  • vc/mfc
  • 嵌入式开发
  • 游戏开发
  • ios
  • 编程问答
  • 汇编语言
  • 微信小程序
  • 数据结构
  • OpenGL
  • 架构设计
  • qt
  • 微信公众号

最近更新的内容

    • GreenDao与ReactiveX的完美搭配,greendaoreactivex
    • App解读,新闻解读app
    • Android Studio创建/打开项目时一直处于Building“project name”Gradle project info的解决办法,androidgradle
    • 整理几篇比较好的AndroidUI动画开发文章,几篇androidui
    • linux tcp GSO和TSO实现
    • [android] 手机卫士保存安全号码,android卫士
    • Android入门(二)Activity-Toast、Intent,intentservicetoast
    • 机顶盒上gridview+ScrollView的使用。,gridviewscrollview
    • android 自定义title,androidtitle
    • Service的启动与停止、绑定与解绑,service停止绑定

关于我们 - 联系我们 - 免责声明 - 网站地图

©2020-2025 All Rights Reserved. linkedu.com 版权所有