GPS定位
来源:互联网 发布:手机淘宝更多宝贝链接 编辑:程序博客网 时间:2024/05/01 01:47
比较简单:直接贴代码:(要手动授权,因为GPS已经是比较隐私的权限了)
需要权限:
<uses-permission android:name="android.permission.ACCESS_FINE_LOCATION" />
public class MainActivity extends AppCompatActivity { private LocationManager locationManager; private static final String TAG = "LOCATION_DEMO"; @Override protected void onCreate(Bundle savedInstanceState) { super.onCreate(savedInstanceState); setContentView(R.layout.activity_main); locationManager = (LocationManager) getSystemService(Context.LOCATION_SERVICE); if (ActivityCompat.checkSelfPermission(this, Manifest.permission.ACCESS_FINE_LOCATION) != PackageManager.PERMISSION_GRANTED && ActivityCompat.checkSelfPermission(this, Manifest.permission.ACCESS_COARSE_LOCATION) != PackageManager.PERMISSION_GRANTED) { return; } Location location = locationManager.getLastKnownLocation(LocationManager.GPS_PROVIDER); updateLocation(location); /** * 监听当前位置变化 * 第一个参数:获取位置方式 * 第二个参数:过多少时间更新一次 * 第三个参数:精确单位 * 第四个参数:监听器 */ locationManager.requestLocationUpdates(LocationManager.GPS_PROVIDER, 6000, 10, locationListener); } private LocationListener locationListener = new LocationListener() { //当位置改变的时候调用 @Override public void onLocationChanged(Location location) { updateLocation(location); } @Override public void onStatusChanged(String s, int i, Bundle bundle) { } @Override public void onProviderEnabled(String s) { Log.i(TAG, "提供者正在启用"); } @Override public void onProviderDisabled(String s) { Log.i(TAG, "提供者无法启用"); } }; @Override protected void onPause() { super.onPause(); if (ActivityCompat.checkSelfPermission(this, Manifest.permission.ACCESS_FINE_LOCATION) != PackageManager.PERMISSION_GRANTED && ActivityCompat.checkSelfPermission(this, Manifest.permission.ACCESS_COARSE_LOCATION) != PackageManager.PERMISSION_GRANTED) { return; } locationManager.removeUpdates(locationListener); } //获取用户位置的函数,利用Log显示 private void updateLocation(Location location) { String latLng; if (location != null) { double lat = location.getLatitude(); double lng = location.getLongitude(); latLng = "Latitude:" + lat + " Longitude:" + lng; } else { latLng = "Can't access your location"; } Log.i(TAG, "The location has changed.."); Log.i(TAG, "Your Location:" +latLng); }}
0 0
- GPS定位
- GPS定位
- GPS定位
- GPS定位
- GPS定位
- gps定位
- GPS定位
- GPS定位
- GPS定位
- gps定位
- gps定位
- GPS定位
- GPS定位+经纬度定位
- GPS定位功能。GPS定位例子
- GPS定位原理
- GPS定位原理概述
- GPS车载定位系统
- GPS全球卫星定位导航系统
- Squid的refresh_pattern配置
- Material Design Library 使用汇总
- 2524 克鲁斯卡尔算法
- Mac和Windows中常见中文字体的英文名称
- 从Handler到runOnUiThread
- GPS定位
- C# Unicode与中文互转
- 敏捷开发
- 利用负载均衡优化和加速HTTP应用
- springmvc使用声明式事物简单配置步骤
- C语言笔记4--变量作用域
- 使用UIImagePickerController拍照和视频录制
- Java EE 组件 容器 服务器
- AndroidStudio生成jar、aar并引用