http://blog.csdn.net/u013210620/article/details/47700629

跟集成百度地图一样,首先获取KEY,获取方式(官方的截图)

这篇主要是讲解高德地图定位篇,高德地图定位篇跟高德地图篇是不同的sdk,分离开了。。。

来看下配置流程吧,配置是第一位的

[java]  view plain  copy
  1. 1.从网站下载并解压得到定位包“Android_Location_V1.xx.jar“。
  2. 2.开发工程中新建“libs”文件夹,将定位包拷贝到 libs 的根目录下。拷贝完成后的工程目录(以 V1.0.4 为例)如图所示:
  3. image
  4. 注意:若您在 Eclipse 上使用 adt22 版本插件,则需要在 Eclipse 上进行如下配置:
  5. 选中 Eclipse 的工程,右键选择 “Properties > Java Build Path > Order and Export”,勾选 “Android Private Libraries”。
  6. 3.添加用户 Key。在工程的“AndroidManifest.xml”文件如下代码中添加您的用户 Key。
  7. <application
  8. android:icon="@drawable/icon"
  9. android:label="@string/app_name" >
  10. <meta-data
  11. android:name="com.amap.api.v2.apikey"
  12. android:value="请输入您的用户Key" />
  13. <activity android:name="com.amap.demo.LocationManager" >
  14. <intent-filter>
  15. <action android:name="android.intent.action.MAIN" />
  16. <category android:name="android.intent.category.LAUNCHER" />
  17. </intent-filter>
  18. </activity>
  19. </application>
  20. 4.添加权限。在工程的“AndroidManifest.xml”文件中进行添加,请直接拷贝。
  21. <uses-permission android:name="android.permission.INTERNET" />
  22. <uses-permission android:name="android.permission.WRITE_EXTERNAL_STORAGE" />
  23. <uses-permission android:name="android.permission.ACCESS_COARSE_LOCATION" />
  24. <uses-permission android:name="android.permission.ACCESS_NETWORK_STATE" />
  25. <uses-permission android:name="android.permission.ACCESS_FINE_LOCATION" />
  26. <uses-permission android:name="android.permission.READ_PHONE_STATE" />
  27. <uses-permission android:name="android.permission.CHANGE_WIFI_STATE" />
  28. <uses-permission android:name="android.permission.ACCESS_WIFI_STATE" />
  29. <uses-permission android:name="android.permission.CHANGE_CONFIGURATION" />
  30. 5.clean 工程,结束配置。

接下来就开始贴自己总结的代码了,,,

*****************************************************华丽的分割线********************************************************

先看自己的配置文件

AndroidManifest.xml

[html]  view plain  copy
  1. <?xml version="1.0" encoding="utf-8"?>
  2. <manifest xmlns:android="http://schemas.android.com/apk/res/android"
  3. package="com.example.helloworld"
  4. android:versionCode="1"
  5. android:versionName="1.0" >
  6. <uses-sdk
  7. android:minSdkVersion="17"
  8. android:targetSdkVersion="21" />
  9. <application
  10. android:allowBackup="true"
  11. android:icon="@drawable/ic_launcher"
  12. android:label="@string/app_name"
  13. android:theme="@style/AppTheme" >
  14. <meta-data
  15. android:name="com.amap.api.v2.apikey"
  16. android:value="c9e78719c6c000407753045aeb0de1fd" />
  17. <!-- 启动的activity不同 -->
  18. <activity
  19. android:name=".TraceActivity"
  20. android:label="@string/app_name" >
  21. <intent-filter>
  22. <action android:name="android.intent.action.MAIN" />
  23. <category android:name="android.intent.category.LAUNCHER" />
  24. </intent-filter>
  25. </activity>
  26. </application>
  27. <uses-permission android:name="android.permission.INTERNET" />
  28. <uses-permission android:name="android.permission.WRITE_EXTERNAL_STORAGE" />
  29. <uses-permission android:name="android.permission.ACCESS_COARSE_LOCATION" />
  30. <uses-permission android:name="android.permission.ACCESS_NETWORK_STATE" />
  31. <uses-permission android:name="android.permission.ACCESS_FINE_LOCATION" />
  32. <uses-permission android:name="android.permission.READ_PHONE_STATE" />
  33. <uses-permission android:name="android.permission.CHANGE_WIFI_STATE" />
  34. <uses-permission android:name="android.permission.ACCESS_WIFI_STATE" />
  35. <uses-permission android:name="android.permission.CHANGE_CONFIGURATION" />
  36. <uses-permission android:name="android.permission.WRITE_SETTINGS" />
  37. </manifest>

MainActivity(先测试下能不能定位,为以后的demo做准备)

[java]  view plain  copy
  1. package com.example.helloworld;
  2. import com.amap.api.location.AMapLocation;
  3. import com.amap.api.location.AMapLocationListener;
  4. import com.amap.api.location.LocationManagerProxy;
  5. import com.amap.api.location.LocationProviderProxy;
  6. import android.app.Activity;
  7. import android.location.Location;
  8. import android.os.Bundle;
  9. import android.util.Log;
  10. //实现定位接口
  11. public class MainActivity extends Activity implements AMapLocationListener {
  12. // 初始化定位对象
  13. LocationManagerProxy mLocationManagerProxy;
  14. protected void onCreate(Bundle savedInstanceState) {
  15. super.onCreate(savedInstanceState);
  16. setContentView(R.layout.activity_main);
  17. // 初始化定位对象
  18. mLocationManagerProxy = LocationManagerProxy.getInstance(this);
  19. /**
  20. * 注册定位监听
  21. * LocationProviderProxy.AMapNetwork高德定位(高德定位是混合定位,网络和gps均有,
  22. * 如果都返回,首选gps定位) 第二个参数是定位时间频率(-1是单次定位),移动距离,回调监听
  23. */
  24. mLocationManagerProxy.requestLocationData(
  25. LocationProviderProxy.AMapNetwork, -1, 15, this);
  26. }
  27. @Override
  28. protected void onResume() {
  29. super.onResume();
  30. }
  31. //生命周期的管理
  32. @Override
  33. protected void onDestroy() {
  34. super.onDestroy();
  35. mLocationManagerProxy.destroy();
  36. }
  37. @Override
  38. public void onLocationChanged(Location location) {
  39. }
  40. @Override
  41. public void onStatusChanged(String provider, int status, Bundle extras) {
  42. }
  43. @Override
  44. public void onProviderEnabled(String provider) {
  45. }
  46. @Override
  47. public void onProviderDisabled(String provider) {
  48. }
  49. // 处理定位结果
  50. @Override
  51. public void onLocationChanged(AMapLocation arg0) {
  52. // 定位回调--getErrorCode() == 0说明正确定位返回了
  53. if (arg0 != null && arg0.getAMapException().getErrorCode() == 0) {
  54. Log.e("helloworld", arg0.toString());
  55. }
  56. }
  57. }

WeatherActivity(高德也可以测试今天或者未来几天的天气,尼玛感觉好强大啊。。。。。。。。。。。)

[java]  view plain  copy
  1. package com.example.helloworld;
  2. import java.util.List;
  3. import com.amap.api.location.AMapLocalDayWeatherForecast;
  4. import com.amap.api.location.AMapLocalWeatherForecast;
  5. import com.amap.api.location.AMapLocalWeatherListener;
  6. import com.amap.api.location.AMapLocalWeatherLive;
  7. import com.amap.api.location.LocationManagerProxy;
  8. import android.app.Activity;
  9. import android.util.Log;
  10. //实现天气回调接口
  11. public class WeatherActivity extends Activity implements AMapLocalWeatherListener{
  12. LocationManagerProxy mLocationManagerProxy;
  13. protected void onCreate(android.os.Bundle savedInstanceState) {
  14. super.onCreate(savedInstanceState);
  15. setContentView(R.layout.activity_main);
  16. //初始化定位对象
  17. mLocationManagerProxy = LocationManagerProxy.getInstance(this);
  18. //注册天气监听
  19. mLocationManagerProxy.requestWeatherUpdates(LocationManagerProxy.WEATHER_TYPE_FORECAST, this);
  20. };
  21. protected void onDestroy() {
  22. super.onDestroy();
  23. }
  24. @Override
  25. public void onWeatherForecaseSearched(AMapLocalWeatherForecast arg0) {
  26. //未来天气预报
  27. List<AMapLocalDayWeatherForecast> list= arg0.getWeatherForecast();
  28. for(int i =0;i<list.size();i++){
  29. AMapLocalDayWeatherForecast dayWeather = list.get(i);
  30. Log.e("helloworld", "城市:"+dayWeather.getCity());
  31. Log.e("helloworld", "时间:"+dayWeather.getDate());
  32. Log.e("helloworld", "温度:"+dayWeather.getDayTemp());
  33. Log.e("helloworld", "风力:"+dayWeather.getDayWindPower());
  34. }
  35. }
  36. @Override
  37. public void onWeatherLiveSearched(AMapLocalWeatherLive arg0) {
  38. //当天天气预报
  39. Log.e("helloworld", "城市:"+arg0.getCity());
  40. Log.e("helloworld", "温度:"+arg0.getTemperature());
  41. Log.e("helloworld", "风力:"+arg0.getWindPower());
  42. };
  43. }

GeoFenceActivity(围栏效果--不知道为什么用这个名词。。。。。。。。。。。。。。。。)

[java]  view plain  copy
  1. package com.example.helloworld;
  2. import com.amap.api.location.AMapLocation;
  3. import com.amap.api.location.AMapLocationListener;
  4. import com.amap.api.location.LocationManagerProxy;
  5. import com.amap.api.maps.AMap.OnMapClickListener;
  6. import com.amap.api.maps.MapView;
  7. import com.amap.api.maps.model.CircleOptions;
  8. import com.amap.api.maps.model.LatLng;
  9. import android.app.Activity;
  10. import android.app.PendingIntent;
  11. import android.content.BroadcastReceiver;
  12. import android.content.Context;
  13. import android.content.Intent;
  14. import android.content.IntentFilter;
  15. import android.location.Location;
  16. import android.location.LocationManager;
  17. import android.os.Bundle;
  18. import android.util.Log;
  19. /**
  20. * 案例效果: 点击地图mapView,会出现一个圆圈, 在通过AMapLocationListener定位功能,获取经度维度
  21. * 通过mLocationManagerProxy.addGeoFenceAlert进行设置在定位的经度,纬度进行半径设置,
  22. * 也就是进行围栏效果,如果一旦出所警戒的区域,会激发异步intent,接受广播
  23. * if (i == 1) { Log.e("helloworld",
  24. * "在地理围栏内部"); } if (i == 0) { Log.e("helloworld", "在地理围栏外面"); }
  25. *
  26. */
  27. public class GeoFenceActivity extends Activity implements OnMapClickListener,
  28. AMapLocationListener {
  29. MapView mapView;
  30. LocationManagerProxy mLocationManagerProxy;
  31. String GEOFENCE_BROADCAST_ACTION = "com.example.helloworld";
  32. PendingIntent mPendingIntent;
  33. @Override
  34. protected void onCreate(Bundle savedInstanceState) {
  35. super.onCreate(savedInstanceState);
  36. setContentView(R.layout.activity_main);
  37. // 获取控件视图id
  38. mapView = (MapView) findViewById(R.id.main_mapView);
  39. // 进行onCreate初始化操作
  40. mapView.onCreate(savedInstanceState);
  41. // 点击围栏圆圈的监听
  42. mapView.getMap().setOnMapClickListener(this);
  43. // 构建定位控制类
  44. mLocationManagerProxy = LocationManagerProxy.getInstance(this);
  45. // 构建地理围栏广播
  46. Intent intent = new Intent(GEOFENCE_BROADCAST_ACTION);
  47. /**
  48. * getActivity()的意思其实是,获取一个PendingIntent对象,而且该对象日后激发时所做的事情是启动一个新activity
  49. * 。也就是说,当它异步激发时,会执行类似Context.startActivity()那样的动作。
  50. */
  51. mPendingIntent = PendingIntent.getBroadcast(getApplicationContext(), 0,
  52. intent, 0);
  53. // 接受怎样的广播--设置下
  54. IntentFilter intentfilter = new IntentFilter();
  55. intentfilter.addAction(GEOFENCE_BROADCAST_ACTION);
  56. // 注册广播!!!
  57. this.registerReceiver(mGeoFenceReceiver, intentfilter);
  58. // 注册定位监听
  59. mLocationManagerProxy.requestLocationData(LocationManager.GPS_PROVIDER,
  60. 2000, 15, this);
  61. }
  62. // 定义一个广播接收器
  63. private BroadcastReceiver mGeoFenceReceiver = new BroadcastReceiver() {
  64. @Override
  65. public void onReceive(Context context, Intent intent) {
  66. int i = intent.getIntExtra("status", -1);
  67. Log.e("helloworld", "收到广播");
  68. if (i == 1) {
  69. Log.e("helloworld", "在地理围栏内部");
  70. }
  71. if (i == 0) {
  72. Log.e("helloworld", "在地理围栏外面");
  73. }
  74. }
  75. };
  76. @Override
  77. protected void onResume() {
  78. super.onResume();
  79. mapView.onResume();
  80. }
  81. @Override
  82. protected void onDestroy() {
  83. super.onDestroy();
  84. }
  85. /**
  86. * 实现OnMapClickListener的监听回调方法
  87. */
  88. @Override
  89. public void onMapClick(LatLng arg0) {
  90. Log.e("helloworld", "lat = " + arg0.latitude);
  91. Log.e("helloworld", "lon = " + arg0.longitude);
  92. // 点击地图时候,在地图上添加一个围栏圆圈,设置半径1000米
  93. mapView.getMap().addCircle(
  94. new CircleOptions().center(arg0).radius(1000));
  95. // 根据给定的经纬度和半径,当设备进入或从区域中离开时注册的PendingIntent将被激活一次。此方法需要与定位请求方法同时使用。
  96. mLocationManagerProxy.addGeoFenceAlert(arg0.latitude, arg0.longitude,
  97. 1000, 1000 * 60 * 30, mPendingIntent);
  98. /**
  99. * latitude - 警戒区域中心点的纬度。 longitude - 警戒区域中心点的经度。 radius - 警戒区域的半径,单位为米。
  100. * expiration - 警戒时间,单位为毫秒,-1 表示没有限制。 intent
  101. * -当检测到进入或离开警戒区域时将被激活的PendingIntent。bundle的status 字段,0从区域中离开,1进入该区域。
  102. */
  103. }
  104. @Override
  105. public void onLocationChanged(Location location) {
  106. // TODO Auto-generated method stub
  107. }
  108. @Override
  109. public void onStatusChanged(String provider, int status, Bundle extras) {
  110. // TODO Auto-generated method stub
  111. }
  112. @Override
  113. public void onProviderEnabled(String provider) {
  114. // TODO Auto-generated method stub
  115. }
  116. @Override
  117. public void onProviderDisabled(String provider) {
  118. // TODO Auto-generated method stub
  119. }
  120. @Override
  121. public void onLocationChanged(AMapLocation arg0) {
  122. // TODO Auto-generated method stub
  123. }
  124. }

SearchActivity(搜索周边的kfc,kfc你懂得,不要歪解它的意思。。。。。。。。。。。。。)

[java]  view plain  copy
  1. package com.example.helloworld;
  2. import java.util.List;
  3. import com.amap.api.location.AMapLocation;
  4. import com.amap.api.location.AMapLocationListener;
  5. import com.amap.api.location.LocationManagerProxy;
  6. import com.amap.api.location.LocationProviderProxy;
  7. import com.amap.api.maps.MapView;
  8. import com.amap.api.services.core.LatLonPoint;
  9. import com.amap.api.services.core.PoiItem;
  10. import com.amap.api.services.poisearch.PoiItemDetail;
  11. import com.amap.api.services.poisearch.PoiResult;
  12. import com.amap.api.services.poisearch.PoiSearch;
  13. import com.amap.api.services.poisearch.PoiSearch.OnPoiSearchListener;
  14. import com.amap.api.services.poisearch.PoiSearch.SearchBound;
  15. import android.app.Activity;
  16. import android.location.Location;
  17. import android.location.LocationManager;
  18. import android.os.Bundle;
  19. import android.util.Log;
  20. import android.view.View;
  21. import android.view.View.OnClickListener;
  22. import android.widget.Button;
  23. /**
  24. * 功能描述
  25. * 启动后加载mapView地图界面
  26. * 视图中又一个button,button是用来点击后,搜索自己位置附近的北京的KFC快餐店的
  27. * 点击后,会log出定位某处的附近2000圈内的快餐店即可
  28. *
  29. * 实现方案:
  30. * 获取mapview控件,初始化,让其展现地图界面
  31. * 注册定位监听,让其可以实现定位功能,因为要搜索kfc
  32. * 在button进行点击后进行的操作是
  33. * 创建搜索实例对象,并且设置搜索区域范围,然后实现搜索监听,
  34. * 在回调方法中进行处理搜索到的结果即可
  35. *
  36. */
  37. public class SearchActivity extends Activity implements AMapLocationListener,OnPoiSearchListener,OnClickListener{
  38. MapView mapview;
  39. @Override
  40. protected void onCreate(Bundle savedInstanceState) {
  41. super.onCreate(savedInstanceState);
  42. setContentView(R.layout.activity_main);
  43. //获取mapView控件
  44. mapview = (MapView)findViewById(R.id.main_mapView);
  45. //初始化
  46. mapview.onCreate(savedInstanceState);
  47. //获取定位实例
  48. LocationManagerProxy mLocationManagerProxy = LocationManagerProxy.getInstance(this);
  49. //注册定位监听--传递定位方式,时间,距离
  50. mLocationManagerProxy.requestLocationData(
  51. LocationManager.GPS_PROVIDER,2000, 15, this);
  52. //鼠标的作用是,点击button进行获取定位
  53. Button button = (Button)findViewById(R.id.button);
  54. button.setOnClickListener(this);
  55. }
  56. @Override
  57. protected void onResume() {
  58. super.onResume();
  59. mapview.onResume();
  60. }
  61. @Override
  62. protected void onDestroy() {
  63. super.onDestroy();
  64. }
  65. @Override
  66. public void onLocationChanged(Location location) {
  67. }
  68. @Override
  69. public void onStatusChanged(String provider, int status, Bundle extras) {
  70. }
  71. @Override
  72. public void onProviderEnabled(String provider) {
  73. }
  74. @Override
  75. public void onProviderDisabled(String provider) {
  76. }
  77. /**
  78. * 实现AMapLocationListener的回调方法,会打印出地理位置
  79. */
  80. AMapLocation location;
  81. @Override
  82. public void onLocationChanged(AMapLocation arg0) {
  83. location = arg0;
  84. Log.e("helloworld", arg0.toString());
  85. }
  86. @Override
  87. public void onPoiItemDetailSearched(PoiItemDetail arg0, int arg1) {
  88. }
  89. /**
  90. * 实现OnPoiSearchListener搜索的的回调方法
  91. */
  92. @Override
  93. public void onPoiSearched(PoiResult arg0, int arg1) {
  94. /**
  95. * 如果是arg返回0,即搜索成功
  96. * 遍历搜索结果打印相信信息即可
  97. */
  98. if(arg1 == 0 ){
  99. List<PoiItem> list = arg0.getPois();
  100. for(int i = 0;i<list.size();i++){
  101. PoiItem item = list.get(i);
  102. Log.e("helloworld", item.toString());
  103. }
  104. }
  105. }
  106. public void search(){
  107. //高德搜索功能
  108. //1、创建要搜素的内容,即类似sql语句
  109. PoiSearch.Query query = new PoiSearch.Query("kfc","餐饮","北京市");
  110. query.setPageSize(10);  // 设置每页最多返回多少条poiitem
  111. query.setPageNum(0);//第一页
  112. //2、创建搜索的实例对象
  113. PoiSearch poiSearch = new PoiSearch(this, query);//context,query
  114. //3、设置搜索监听,处理搜索结果即可
  115. poiSearch.setOnPoiSearchListener(this);
  116. //创建经纬度点位
  117. LatLonPoint poiont = new LatLonPoint(location.getLatitude(),location.getLongitude());
  118. //设置搜索区域--根据给定的参数来构造PoiSearch.SearchBound 的新对象,默认由近到远排序。
  119. //SearchBound(LatLonPoint center, int radiusInMeters, boolean isDistanceSort)
  120. poiSearch.setBound(new SearchBound(poiont, 2000, true));
  121. //执行搜索
  122. poiSearch.searchPOIAsyn();
  123. }
  124. /**
  125. * button的点击事件
  126. */
  127. @Override
  128. public void onClick(View v) {
  129. search();
  130. }
  131. }

TraceActivity(高德也可以对你的行踪进行跟踪,哎,将来可以对付女朋友或者好基友了)

[java]  view plain  copy
  1. package com.example.helloworld;
  2. import java.util.ArrayList;
  3. import java.util.List;
  4. import com.amap.api.maps.AMap.OnMapLoadedListener;
  5. import com.amap.api.maps.MapView;
  6. import com.amap.api.maps.model.LatLng;
  7. import com.amap.api.maps.model.PolylineOptions;
  8. import android.app.Activity;
  9. import android.os.Bundle;
  10. import android.util.Log;
  11. /**
  12. * 功能描述:
  13. * 这个是实现准备一系列的轨迹的经度维度的数组数据
  14. * 实现监听setOnMapLoadedListener,即地图一旦加载就执行该回调方法,
  15. * 并且添加有轨迹点组成的轨迹路线即可
  16. *  public void onMapLoaded() {
  17. mapview.getMap().addPolyline(new PolylineOptions().addAll(list));
  18. }
  19. *
  20. */
  21. public class TraceActivity extends Activity implements OnMapLoadedListener{
  22. MapView mapview;
  23. double trace[] = {40.03833763826341,116.44161604271481,
  24. 40.038120708755,116.44178901291339,
  25. 40.037882375415066,116.4417806669452,
  26. 40.03758904414511,116.44176898746878,
  27. 40.03744405133165,116.44175898937421,
  28. 40.037160730291575,116.44174065740059,
  29. 40.03688407626496,116.44172232621654,
  30. 40.0366324210887,116.44170566146977,
  31. 40.036504105478954,116.4416890116469,
  32. 40.03623913323141,116.44166070124143,
  33. 40.03601914632045,116.44164404027542,
  34. 40.03582913675676,116.44164401726151,
  35. 40.035737465479734,116.44164400615833,
  36. 40.035550835334085,116.4416123783024,
  37. 40.03531757714563,116.44155246627021,
  38. 40.035092606829934,116.44152416050346,
  39. 40.03497929671584,116.44150418544663,
  40. 40.034890970995875,116.44149585752025,
  41. 40.03472264127492,116.44148751989984,
  42. 40.034544311059626,116.44147918106438,
  43. 40.034350992125134,116.44146252316679,
  44. 40.03414436321754,116.44142922913052,
  45. 40.033942703318765,116.44141756053763,
  46. 40.0337594520259,116.44135432702309,
  47. 40.03355940132553,116.44138258156585,
  48. 40.03336267689871,116.44141582682933,
  49. 40.0332193052337,116.44143743434178,
  50. 40.03316095218832,116.44144907142875,
  51. 40.03307090444962,116.44147900260153,
  52. 40.03301251527869,116.44151559133982,
  53. 40.032990835497614,116.44152390593369,
  54. 40.03295913835145,116.44154386340695,
  55. 40.03293078192086,116.44155883094285,
  56. 40.03291077610872,116.44156215540048,
  57. 40.03285575168102,116.44157711969189,
  58. 40.03275240841231,116.44158043405254,
  59. 40.03263740996554,116.4415754298076,
  60. 40.03257240192978,116.44157874881171,
  61. 40.03251239655422,116.44158040498262,
  62. 40.03231736762684,116.44159368886524,
  63. 40.03210400929456,116.44160364364582,
  64. 40.031903970468456,116.44162358064602,
  65. 40.031803975210416,116.44161691479444,
  66. 40.03160064154208,116.44161023642441,
  67. 40.03141064428492,116.44160189623058,
  68. 40.03120398679096,116.44158856370204,
  69. 40.03100398181874,116.4415852126018,
  70. 40.03090898199395,116.44158187421888,
  71. 40.030750657801356,116.44157021096972,
  72. 40.03068400234474,116.44156022225643,
  73. 40.03052737863301,116.44152527100435,
  74. 40.03036406140828,116.44150861678068,
  75. 40.03021740684516,116.44149529145307,
  76. 40.03006407325888,116.44149028254215,
  77. 40.02999075078973,116.44148029297878};
  78. List<LatLng> list;
  79. @Override
  80. protected void onCreate(Bundle savedInstanceState) {
  81. // TODO Auto-generated method stub
  82. super.onCreate(savedInstanceState);
  83. setContentView(R.layout.activity_main);
  84. mapview = (MapView)findViewById(R.id.main_mapView);
  85. mapview.onCreate(savedInstanceState);
  86. //地图一旦加载的产生监听
  87. mapview.getMap().setOnMapLoadedListener(this);
  88. //创建经度维度点的集合对象
  89. list = new ArrayList<LatLng>();
  90. for(int i=0;i<trace.length-1;i++){
  91. LatLng  latlng = new LatLng(trace[i],trace[++i]);
  92. list.add(latlng);
  93. }
  94. }
  95. @Override
  96. protected void onResume() {
  97. // TODO Auto-generated method stub
  98. super.onResume();
  99. mapview.onResume();
  100. }
  101. @Override
  102. protected void onDestroy() {
  103. // TODO Auto-generated method stub
  104. super.onDestroy();
  105. }
  106. /**
  107. * 地图一旦加载就绘制轨迹
  108. */
  109. @Override
  110. public void onMapLoaded() {
  111. mapview.getMap().addPolyline(new PolylineOptions().addAll(list));
  112. }
  113. }

高德地图之定位篇-----定位、预测天气、围栏、搜索周边、行踪轨迹相关推荐

  1. android开发之高德地图API篇:1、高德地图API之实时定位+轨迹可视化

    TIME:2020年7月6日 高德地图API之实时定位+轨迹可视化 前言: step1.工程的配置 step2.显示地图 step2.实现静态定位: step3.实时定位 step4.实现轨迹可视化: ...

  2. Android使用高德地图api实现基础定位

    Android使用高德地图api实现基础定位(一) 关于 会获取SHA1的可自行跳过这一步 第二步引用高德sdk 第三步修改MainActivity.java 关于 这篇主要讲如何使用高德sdk(不是 ...

  3. 【应用】Python利用高德地图经纬度数据绘制定位

    [应用]Python利用高德地图经纬度数据绘制定位 一. 背景 二. 获取API 1. 注册高德开放平台个人开发者 2. 获取key 三. 具体步骤 1. 库的导入 2. 根据地址获取经纬度 3. 绘 ...

  4. 高德地图八:手机定位和GPS定位

    高德地图八:手机定位和GPS定位 高德地图八:手机定位和GPS定位 代码实现: layout/activity_main.xml <?xml version="1.0" en ...

  5. 高德地图API之IP定位

    高德地图API之IP定位(替换你的KEY) IP定位API:http://lbs.amap.com/api/webservice/guide/api/ipconfig package com.gdma ...

  6. 高德地图2016清明出行交通预测报告(完整版)

    高德地图2016清明出行交通预测报告(完整版) 声明:本文由入驻搜狐公众平台的作者撰写,除搜狐官方账号外,观点仅代表作者本人,不代表搜狐立场. 全国 清明节易拥堵高速分布图 2016年的第一个小长假清 ...

  7. vue 实现 高德地图 api 掩模、定位、天气

    vue渲染掩模.定位.天气. /* #app.vue中的代码或其他vue文件 #public/index.html需要引入 高德地图jsapi*/ <script type="text ...

  8. 高德h5定位误差_#高德地图api移动端定位失败解决方案 #H5 原生Geollocation接口Chomre浏览器的坑...

    侧重:本文探索了 http 协议下,pc + 移动端定位解决方案 IOS版本: ios14 原生Geolocation 接口: Document Show my location function g ...

  9. 通过高德地图API实现浏览器定位[以及提高定位精度、获取详细位置信息]

    目录 一.前言: 二.正文: 1.注册高德地图开发者.创建应用 2.借助官方的示例开发 3.对官方的开发示例进行修改 4.获取详细位置信息 5.详细代码 三.结尾:小周接触编程时间不长,刚起步,有更好 ...

最新文章

  1. linux开启docker mysql_Linux服务器利用Docker快速搭建MySQL数据库
  2. php接口过滤器,雷林鹏分享:PHP 过滤器
  3. linux最初配置( vimrc设置 、tab键设置 inputrc、中文输入法等等)
  4. elasticsearch——海量文档高性能索引系统
  5. LeetCode 5. 最长回文子串
  6. 玩游戏提示计算机性能过低,如果玩游戏的fps低怎么办?八个问题和九个解决方案...
  7. php 钉钉 免登,免登的正确使用方式
  8. EditText控件(圆角处理)
  9. CentreonMonitoringEvent Logs没有结果的解决方法
  10. python rsi_使用python与rsi进行算法交易
  11. 孩子一生的教育纪录片
  12. 【PPT技巧】让PPT背景音乐仅在播放视频时暂停
  13. adb模拟按键home_adb 命令模拟按键事件 模拟 点击 事件
  14. iOS 开发者必知的 75 个工具
  15. iOS逆向一iPhone手机越狱/APP脱壳/IPA签名
  16. 启动elasticsearch.bat时闪退
  17. Android 10 文件读写权限申请
  18. 无线充qi协议c语言详解,无线充电Qi通信协议分析
  19. 系列二:最全微商城营销36计!
  20. Visio 2016卸载残留导致Office2019无法安装

热门文章

  1. 学习方法十二利用自由时间
  2. es6对象转为对象数组(map;reduce)【用Object.entries打散】
  3. Android开发 Bmob第三方云实现登陆注册
  4. 用Win32写的定时关机程序
  5. WPS中怎么给文字添加茶色底纹?
  6. java生成迷宫_Java实现可视化迷宫
  7. 手机html根据手机分辨率网页文字大小自适应
  8. 【每日一刷系列】2022软件测试常见的面试题
  9. Android的图片压缩类ThumbnailUtils
  10. 路由器的安装和使用:剖析路由器安装指南的四个步骤