c语言开发百度地图,百度地图开发(一)
昨天开始,开始玩百度SDK,一大堆问题,百度的文档太坑爹了,感觉很旧的,按照官网的配置居然错误一大堆!!!!
Now,把心得和大家分享。
一、构建项目
貌似更新了ADT插件后,jar包放在libs下不会自动编译到项目中,调试的时候一直报类找不到错误。解决办法是在libs 上点右键,将其作为源码文件夹。还有assets这个文件夹,最坑爹了!!!这个是来自于baidumapapi_v2_1_2.jar中的。不加的话有可能会报java.io.FileNotFoundException等错误。这个问题的解决参考了http://www.oschina.net/question/234275_76708
二、接下来是最简单的例子
package xidian.wwf.xidianmap.activity;
import xidian.wwf.xidianmap.R;
import xidian.wwf.xidianmap.app.AppManager;
import xidian.wwf.xidianmap.app.UIHelper;
import android.os.Bundle;
import android.util.Log;
import com.baidu.mapapi.BMapManager;
import com.baidu.mapapi.MKGeneralListener;
import com.baidu.mapapi.map.MKEvent;
import com.baidu.mapapi.map.MKMapViewListener;
import com.baidu.mapapi.map.MapController;
import com.baidu.mapapi.map.MapView;
import com.baidu.platform.comapi.basestruct.GeoPoint;
public class MainActivity extends BaseActivity {
final static String TAG = "MainActivity";
BMapManager mBMapMan = null;
/**
* MapView 是地图主控件
*/
MapView mMapView = null;
/**
* 用MapController完成地图控制
*/
MapController mMapController = null;
/**
* MKMapViewListener 用于处理地图事件回调
*/
MKMapViewListener mMapListener = null;
@Override
public void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
/**
* 它需要地图模块创建前创建,
* 并在地图地图模块销毁后销毁,只要还有地图模块在使用,BMapManager就不应该销毁
*/
mBMapMan = new BMapManager(getApplication());
mBMapMan.init(AppManager.baiduStrKey, new MyGeneralListener());
setContentView(R.layout.activity_main);
mMapView = (MapView) findViewById(R.id.bmapView);
mMapView.setBuiltInZoomControls(true);
// 设置启用内置的缩放控件
mMapController = mMapView.getController();
// 得到mMapView的控制权,可以用它控制和驱动平移和缩放
GeoPoint point = new GeoPoint((int) (39.915 * 1E6),
(int) (116.404 * 1E6));
// 用给定的经纬度构造一个GeoPoint,单位是微度 (度 * 1E6)
mMapController.setCenter(point);// 设置地图中心点
mMapController.setZoom(12);// 设置地图zoom级别
}
@Override
protected void onDestroy() {
mMapView.destroy();
if (mBMapMan != null) {
mBMapMan.destroy();
mBMapMan = null;
}
super.onDestroy();
}
@Override
protected void onPause() {
mMapView.onPause();
if (mBMapMan != null) {
mBMapMan.stop();
}
super.onPause();
}
@Override
protected void onResume() {
mMapView.onResume();
if (mBMapMan != null) {
mBMapMan.start();
}
super.onResume();
}
// 常用事件监听,用来处理通常的网络错误,授权验证错误等
class MyGeneralListener implements MKGeneralListener {
@Override
public void onGetNetworkState(int iError) {
Log.e("ee", String.valueOf(iError));
if (iError == MKEvent.ERROR_NETWORK_CONNECT) {
UIHelper.ToastMessage(MainActivity.this, "您的网络出错啦!");
} else if (iError == MKEvent.ERROR_NETWORK_DATA) {
UIHelper.ToastMessage(MainActivity.this, "输入正确的检索条件!");
}
}
@Override
public void onGetPermissionState(int iError) {
if (iError == MKEvent.ERROR_PERMISSION_DENIED) {
// 授权Key错误:
UIHelper.ToastMessage(MainActivity.this, "请在输入正确的授权Key!");
}
}
}
}
c语言开发百度地图,百度地图开发(一)相关推荐
- 2021.3.1 百度测试开发实习面试–百度地图一面
2021.3.1 百度测试开发实习面试–百度地图一面 自我介绍你能实习多长时间呢?因为你所投的是测试开发岗位,那说说你对测试的理解?你最熟悉的语言的是什么语言?Java的死锁是因为什么?内存泄露与内存 ...
- iOS百度地图的相关开发(一)
2019独角兽企业重金招聘Python工程师标准>>> 我是最近接触的百度读图开发,百度地图的相关sdk api开发写的很简单,有很多都是写的不是很详细,但是如果我们想深究就会遇到很 ...
- 百度地图和51地图API应用开发
最近因为工作需要,领导要我将51地图API开发的一个应用迁移到百度地图,或者说用百度地图API进行重写,实现同样的功能.我先是把现有的这个51地图的应用了解了一下,然后就试着用百度地图做一些demo, ...
- 百度地图LBS应用开发代码
最近因为工作需要,领导要我将51地图API开发的一个应用迁移到百度地图,或者说用百度地图API进行重写,实现同样的功能.我先是把现有的这个51地图的应用了解了一下,然后就试着用百度地图做一些demo, ...
- 浅谈百度地图的简单开发再续前缘之公交,地铁路线检索查询(六)
关于百度地图的简单开发前段时间,写过一个小系列的博客关于百度地图的基本地图,定位,全景,导航等功能做了简单的介绍.从今天开始又将准备一期有关百度地图的POI检索的等一列查询功能,如城市检索,周边检索, ...
- 微信企业号开发:微信考勤百度地图定位,错误修正二
在之前的博客中微信企业号开发:微信考勤百度地图定位,错误修正介绍了一种修正百度地图错误的方法,就是使用高德地图修正.但经过近一年.近两千人的使用发现,在百度地图出现定位错误时,通过HTML5获取的经纬 ...
- 百度地图api离线开发(示例源代码)
相关教程: 1.如何搭建WEB离线地图开发环境 2.下载离线地图数据(金字塔瓦片数据) 3.离线地图二次开发接口(离 ...
- BIGEMAP(百度、高德、谷歌)离线地图二次开发
(百度.高德.谷歌)离线地图二次开发 发布时间:2019-04-10 版权: 1.如何搭建离线地图开发环境 2.下载离线地图数据(金字塔瓦片数据 ...
- (百度、高德、谷歌)离线地图二次开发
(百度.高德.谷歌)离线地图二次开发 发布时间:2019-04-10 版权: 相关链接:三维(3D)离线地图 二次开发 1.如何搭建离线地图 ...
- Vue-cli3实现web百度离线地图(v3.0)开发
需求 实现基于Vue-cli3的web百度离线地图(v3.0)开发 Vue-cli3,目录如下,注意:需要把地图相关的文件放在public下,vue-cli2需要放在static下!!! 参考 主要参 ...
最新文章
- qt打开数据库mysql数据库文件怎么打开_qt打开数据库mysql数据库文件
- android自学笔记《五》——模拟器的使用
- Spring-AOP 基于Schema配置切面
- 计算机专业的大学生自我介绍,计算机专业大学生自我介绍
- jquery ajax html方法吗,jQuery ajax方法
- C/C++ VS中调用matlab函数的方法
- wordpress 主题开发
- Intellij IDEA创建的Web项目配置Tomcat并启动Maven项目
- zabbix mysql.status_zabbix 监控mysql状态
- Fabric chaincode开发调试
- 用户的大量数据保存在计算机的,大量计算机用户遭到恶意木马程序威胁
- win10高危服务_IPv6用户危险了!Win10出现严重安全漏洞
- koa学习笔记(一)环境安装及文件目录
- 谷歌学术搜索 简易PDF爬虫
- 看完微信公众号最新的广告分成方案,只想给32个赞
- 表示学习(特征学习)
- uni-app 微信小程序 选取地区取到区
- 一个完整的项目管理流程!
- 支付宝周期扣款(支付后签约)业务功能总结(php+golang)
- 初识爬虫——爬虫与HTML介绍