生活指南——让生活变得更简单

gps定位的是手机还是手机卡_gps定位demo

课程:

android 新手,求一个GPS定位获得经纬度的Demo,或者获取邻近基站编号,邮箱2109792930@qq.com

import android.support.v7.app.AppCompatActivity;

import android.os.Bundle;

import com.androidxx.yangjw.day30_baidu_map_location_demo.R;

import com.baidu.location.BDLocation;

import com.baidu.location.BDLocationListener;

import com.baidu.location.LocationClient;

import com.baidu.mapapi.SDKInitializer;

import com.baidu.mapapi.map.BaiduMap;

import com.baidu.mapapi.map.MapStatusUpdate;

import com.baidu.mapapi.map.MapStatusUpdateFactory;

import com.baidu.mapapi.map.TextureMapView;

import com.baidu.mapapi.model.LatLng;

/**

* 密钥:每一个APP密钥必须包名和APP的包名一致

*/

public class MainActivity extends AppCompatActivity implements BDLocationListener{

private TextureMapView mapView;

private LocationClient locationClient;

private BaiduMap map;

@Override

protected void onCreate(Bundle savedInstanceState) {

super.onCreate(savedInstanceState);

//1、初始化SDK

//参数:必须是全局上下文

//initialize方法必须放在setContentView之前

SDKInitializer.initialize(getApplicationContext());

setContentView(R.layout.activity_main);

mapView = (TextureMapView) findViewById(R.id.baidu_map_view);

//地图对象

map = mapView.getMap();

locationClient = new LocationClient(getApplicationContext());

locationClient.registerLocationListener(this);

//开启定位

locationClient.start();

}

@Override

protected void onResume() {

super.onResume();

mapView.onResume();

}

@Override

protected void onPause() {

super.onPause();

mapView.onPause();

}

@Override

protected void onDestroy() {

super.onDestroy();

mapView.onDestroy();

}

@Override

public void onReceiveLocation(BDLocation bdLocation) {

double latitude = bdLocation.getLatitude();

double longitude = bdLocation.getLongitude();

//经纬度对象

LatLng latLng = new LatLng(latitude, longitude);

/**

* 参数1:经纬度对象

* 参数2:缩放级别 3-27

*/

MapStatusUpdate mapStatusUpdate = MapStatusUpdateFactory.newLatLngZoom(latLng, 15);

//将地图显示在指定的经纬度的位置

map.setMapStatus(mapStatusUpdate);

}

}

如何在unity里使用gps定位

百度的SDKdemo下下来之后,如果有类是继承application的话,就不行,所以你得把跟定位所有的东西都整合到一个Activity里,这样基本就不会出现什么问题,关于如何集成,可以参考慕课网的视频教程。

手机gps定位怎么更改?

利用开发者的一些调试功能,我们可以修改非越狱的苹果手机定位,模拟任意位置。

经测试,此方法仅限开发者调试使用,并不能长时间修改手机定位。

1. 首先需要了解一些坐标系的知识

iOS,原生坐标系为 WGS-84

高德以及国内坐标系:GCS-02

百度的偏移坐标系:BD-09

这些先了解,下面需要用到转换

2. 从高德地图拾取网页上找到要模拟的地点坐标,这里我测试使用 九寨沟

得到高德坐标:103.627229,32.755169

由于此坐标在手机上地图显示时,会有偏移误差,所以需要转换成 WGS-84苹果用;

在网上找算法转换后:

得到九寨沟坐标:33.144513 103.910688

在后面的.gpx文件中就放上转换后的坐标,以后修改此处来模拟其他位置

3. 用Xcode创建一个工程FakeGPS

此时在外面新建立一个 JZG.gpx 的 XML 文件 文件信息如下,然后导入工程

?xml version="1.0" encoding="UTF-8" ?gpx version="1.1"

creator="GMapToGPX 6.4j - "

xmlns=""

xmlns:xsi=""

xsi:schemaLocation=" "

wpt lat="33.144513" lon="103.910688"

namechengdu/name

cmt九寨沟/cmt

desc九寨沟/desc

/wpt/gpx

4. 在工程 Produce---Scheme---Eidt Scheme---Options ---

在 Default location 里面选择导入的 JZG ;就是上面JZG.gpx的文件名,对应上述地理位置;

OK, 真机运行FakeGPS工程;

5. 在手机上运行FakeGPS工程,然后打开 手机上的高德地图app,定位,即可看到当前位置已模拟在目的地了,

同样查看微信定位,也是要模拟的位置了;

6. 实测上面的位置并不会永久修改,当模拟位置的app退出或是一些其他原因模拟的位置就会不在起作用;

也印证了该功能仅用于开发者调试使用,不过对于一些短时间的修改位置测试使用场景够用了

7. 演示工程的DEMO下载

  • 评论列表:
  •  访客
     发布于 2022-07-13 21:59:56  回复该评论
  • ,如果有类是继承application的话,就不行,所以你得把跟定位所有的东西都整合到一个Activity里,这样基本就不会出现什么问题,关于如何集成,可以参考慕课网的视频教程。手机gps定位怎么更
  •  访客
     发布于 2022-07-13 21:53:42  回复该评论
  • @Override protected void onPause() { super.onPause(); mapView.onPause(); }
  •  访客
     发布于 2022-07-13 15:06:23  回复该评论
  • 坐标:33.144513 103.910688在后面的.gpx文件中就放上转换后的坐标,以后修改此处来模拟其他位置3. 用Xcode创建一个工程FakeGPS此时在外面新建立一
  •  访客
     发布于 2022-07-13 14:46:54  回复该评论
  • me---Options ---在 Default location 里面选择导入的 JZG ;就是上面JZG.gpx的文件名,对应上述地理位置;OK, 真机运行FakeGPS工程;5. 在手机上运行FakeGPS工程,然后打开 手机上的高德地图app,定位,即可看到当前位置已模拟在目的地了,同样查
  •  访客
     发布于 2022-07-13 15:16:44  回复该评论
  • w) findViewById(R.id.baidu_map_view); //地图对象 map = mapView.getMap(); locationCli

发表评论:

◎欢迎参与讨论,请在这里发表您的看法、交流您的观点。

Copyright Your WebSite.Some Rights Reserved.