66185人阅读
Android开发(22)
&&&&& 本篇通过一个简单的示例一步步介绍如何在Android应用中使用百度地图api。1)下载百度地图移动版API(Android)开发包&&&&& 要在Android应用中使用百度地图API,就需要在工程中引用百度地图API开发包,这个开发包包含两个文件:baidumapapi.jar和libBMapApiEngine.so。下载地址:
2)申请API Key&&&&& 和使用Google map api一样,在使用百度地图API之前也需要获取相应的API Key。百度地图API Key与你的百度账户相关联,因此您必须先有百度帐户,才能获得API Key;并且,该Key与您引用API的程序名称有关。&&&&& 百度API Key的申请要比Google的简单多了,其实只要你有百度帐号,应该不超过30秒就能完成API Key的申请。申请地址:
3)创建一个Android工程&&&&& 这里需要强调一点:百度地图移动版api支持Android 1.5及以上系统,因此我们创建的工程应基于Android SDK 1.5及以上。&&&&& 工程创建完成后,将baidumapapi.jar和libBMapApiEngine.so分别拷贝到工程的根目录及libs/armeabi目录下,并在工程属性-&Java Build Path-&Libraries中选择&Add JARs&,选定baidumapapi.jar,这样就可以在应用中使用百度地图API了。工程完整的目录结构如下图所示:&&&&&
4)在布局文件中添加地图控件(res/layout/main.xml)&&&&&&&?xml version="1.0" encoding="utf-8"?&
&LinearLayout xmlns:android="/apk/res/android"
android:orientation="vertical"
android:layout_width="fill_parent"
android:layout_height="fill_parent"
&com.baidu.mapapi.MapView android:id="@+id/map_View"
android:layout_width="fill_parent"
android:layout_height="fill_parent"
android:clickable="true"
&/LinearLayout&&&
5)创建Activity继承com.baidu.mapapi.MapActivity&&&&& package com.liufeng.
import android.graphics.drawable.D
import android.os.B
import com.baidu.mapapi.BMapM
import com.baidu.mapapi.GeoP
import com.baidu.mapapi.MapA
import com.baidu.mapapi.MapC
import com.baidu.mapapi.MapV
public class MainActivity extends MapActivity {
private BMapManager mapM
private MapView mapV
private MapController mapC
public void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.main);
// 初始化MapActivity
mapManager = new BMapManager(getApplication());
// init方法的第一个参数需填入申请的API Key
mapManager.init("285B415EBAB2A50ADA7F03C777C4", null);
super.initMapActivity(mapManager);
mapView = (MapView) findViewById(R.id.map_View);
// 设置地图模式为交通地图
mapView.setTraffic(true);
// 设置启用内置的缩放控件
mapView.setBuiltInZoomControls(true);
// 用给定的经纬度构造一个GeoPoint(纬度,经度)
GeoPoint point = new GeoPoint((int) (47.118440 * 1E6), (int) (87.493147 * 1E6));
// 创建标记maker
Drawable marker = this.getResources().getDrawable(R.drawable.iconmarka);
// 为maker定义位置和边界
marker.setBounds(0, 0, marker.getIntrinsicWidth(), marker.getIntrinsicHeight());
// 取得地图控制器对象,用于控制MapView
mapController = mapView.getController();
// 设置地图的中心
mapController.setCenter(point);
// 设置地图默认的缩放级别
mapController.setZoom(12);
protected boolean isRouteDisplayed() {
protected void onDestroy() {
if (mapManager != null) {
mapManager.destroy();
mapManager =
super.onDestroy();
protected void onPause() {
if (mapManager != null) {
mapManager.stop();
super.onPause();
protected void onResume() {
if (mapManager != null) {
mapManager.start();
super.onResume();
6)在AndroidManifest.xml中配置&&&&& &?xml version="1.0" encoding="utf-8"?&
&manifest xmlns:android="/apk/res/android"
package="com.liufeng.baidumap"
android:versionCode="1"
android:versionName="1.0"&
&application android:icon="@drawable/icon" android:label="@string/app_name"&
&activity android:name=".MainActivity" android:label="@string/app_name"&
&intent-filter&
&action android:name="android.intent.action.MAIN" /&
&category android:name="android.intent.category.LAUNCHER" /&
&/intent-filter&
&/activity&
&/application&
&uses-sdk android:minSdkVersion="4" /&
&uses-permission android:name="android.permission.ACCESS_NETWORK_STATE" /&
&uses-permission android:name="android.permission.ACCESS_FINE_LOCATION" /&
&uses-permission android:name="android.permission.INTERNET" /&
&uses-permission android:name="android.permission.WRITE_EXTERNAL_STORAGE" /&
&uses-permission android:name="android.permission.ACCESS_WIFI_STATE" /&
&uses-permission android:name="android.permission.CHANGE_WIFI_STATE" /&
&uses-permission android:name="android.permission.READ_PHONE_STATE" /&
&/manifest&
7)运行结果&&&&& 说明:上面的应用只是简单的展示了百度地图(交通地图),并将一个指定的点(根据经纬度确定)展示在手机屏幕的中心。当然,实际项目中涉及的map应用不会这么简单,百度地图API为我们提供了丰富的功能接口,有待我们一起去研究学习。
参考知识库
* 以上用户言论只代表其个人观点,不代表CSDN网站的观点或立场
访问:3768457次
积分:14815
积分:14815
排名:第563名
原创:55篇
评论:4143条
难度:初级
类型:实战教学
难度:高级
类型:实战教学
难度:高级
类型:技术教程
文章:22篇
阅读:2507821
(1)(2)(1)(2)(4)(1)(4)(3)(1)(5)(2)(6)(1)(1)(1)(1)(1)(15)(4)怎么用GIS的功能做电子地图,简要说一下它的功能体系
13哥59x畏?
这个问题问的太晦涩了.GIS基本的功能就是:数据采集、存储、管理、分析、输出与应用.电子地图的功能么,你想要什么功能自己就可以做什么功能.GIS无限强大,只有想不到,没有做不到.最基础的功能:显示、放大、缩小、漫游、查询.建议楼主先多看看其他的成品电子地图.如百度map、丁丁之类的
我就想做百度那样的,你能给我列个功能体系么?需要什么样的数据。。。
像百度那样的数据量就太大了,光一个人肯定完不成。
做出来的话,赶紧去大公司应聘啊,呵呵。。开个玩笑。
百度地图大致说就是:显示、放大、缩小、漫游、查询。细说的话小功能太多太多,什么显示路径呀,查询高亮显示啊,地图定位啊等等。
前四个功能只要提供一张地图就行。
查询的话,看你要实现什么的查询,如果是道路的查询,就要相应的道路信息;如果是建筑物查询就要建筑物的信息。等等。。
鉴于篇幅有限,我希望有针对性的回答,这样也对你有帮助。
你能先告诉我一下你作品的大致设想吗?
我们单位准备做互联网地图,前期让我定个方案可我一点方向都没有呢。现在要先列出一个功能体系的框架,我先研究了公交查询系统,发现需要的数据库特别庞大,下来构想了一个品牌地图。你能帮我想想么
我开始研究地图查询方面。例如美食方面,我需要准备哪些数据库呢
首先是地图必须要有,这个可以自己制作或者调用百度地图API或google地图API
数据库的话,只要把各个餐饮点,你要查询到的信息放里面就行了。
比如我要查 美食店1 的 招牌美食的价格。 那数据库里只要有 美食1的名字、招牌美食名字、招牌美食的价格。
当然这是最简单的例子。如果你要做个成品的话首先应该有客户的需求对吧,按需求来设计数据库。
功能体系框架,简单说就是有什么功能、功能包含了什么、以及这些功能间的联系。(像E-R图)建议百度上搜下“项目详细设计”,里面有很多可以参考的,然后根据自己所需要的进行修改。
为什么加不了好友。真是的??????我以后还有问题呢 部好找你
你加我QQ吧
为您推荐:
其他类似问题
扫描下载二维码