• Android GPS GPSBasics project hacking


    一、参考源码:

      GPS Basic Example - Android Example

        http://androidexample.com/GPS_Basic__-__Android_Example/index.php?view=article_discription&aid=68&aaid=93

    二、Permission:

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

    三、Example:

    package com.example.gpsbasics;
    
    import android.location.Location;
    import android.location.LocationListener;
    import android.location.LocationManager;
    import android.os.Bundle;
    import android.util.Log;
    import android.widget.Toast;
    import android.app.Activity;
    import android.content.Context;
    
    
    public class MainActivity extends Activity implements LocationListener {
    
        private LocationManager locationManager;
        
        @Override
        protected void onCreate(Bundle savedInstanceState) {
            super.onCreate(savedInstanceState);
            setContentView(R.layout.activity_main);
            /********** get Gps location service LocationManager object ***********/
            /********** 获取GPS服务管理对象 ************/
            locationManager = (LocationManager) getSystemService(Context.LOCATION_SERVICE);
            
            /*
              Parameters :
                 First(provider)    :  the name of the provider with which to register 
                                    :  注册的名字
                 Second(minTime)    :  the minimum time interval for notifications, in milliseconds. This field is only used as a hint to conserve power, and actual time between location updates may be greater or lesser than this value. 
                                    :  最小通知时间间隔,以毫秒为单位。此字段仅作为节省电力方式,并且位置更新之间的实际时间可以比该值更大或更小。  
                 Third(minDistance) :  the minimum distance interval for notifications, in meters 
                                    :  最小间隔通知,以毫秒为单位
                 Fourth(listener)   :  a {#link LocationListener} whose onLocationChanged(Location) method will be called for each location update 
                                    :  每个位置更新时谁的onLocationChanged (位置)方法将被调用
            */
            
            locationManager.requestLocationUpdates(LocationManager.GPS_PROVIDER,
                    3000,   // 3 sec
                    10, this);
            
            /********* After registration onLocationChanged method called periodically after each 3 sec ***********/
        }
        
        /************* Called after each 3 sec **********/
        @Override
        public void onLocationChanged(Location location) {
               
            // location.getLatitude(): 纬度
            // location.getLongitude(): 维度
            String str = "Latitude: "+location.getLatitude()+" 
    Longitude: "+location.getLongitude();
            Toast.makeText(getBaseContext(), str, Toast.LENGTH_LONG).show();
            Log.e("GPSBasics", "onLocationChanged.");
        }
    
        @Override
        public void onProviderDisabled(String provider) {
            
            /******** Called when User off Gps *********/
            
            Toast.makeText(getBaseContext(), "Gps turned off ", Toast.LENGTH_LONG).show();
        }
    
        @Override
        public void onProviderEnabled(String provider) {
            
            /******** Called when User on Gps  *********/
            
            Toast.makeText(getBaseContext(), "Gps turned on ", Toast.LENGTH_LONG).show();
        }
    
        @Override
        public void onStatusChanged(String provider, int status, Bundle extras) {
            // TODO Auto-generated method stub
            
        }
    }
  • 相关阅读:
    shell编程基础(六): 透彻解析查找命令find
    shell编程基础(五): 正则表达式及其使用
    shell编程基础(三): 位置参数与shell脚本的输入输出
    shell编程基础(二): shell脚本语法之分支语句和循环语句
    shell编程基础(一): 基本变量和基本符号
    SpringCloud学习(一):微服务简介
    ubuntu 安装bazel
    numpy reshape resize用法
    L0、L1及L2范数
    linux常用的搜索命令
  • 原文地址:https://www.cnblogs.com/zengjfgit/p/4928691.html
Copyright © 2020-2023  润新知