当前位置:首页 » 安卓系统 » 百度地图androiddemo

百度地图androiddemo

发布时间: 2023-03-24 00:13:22

A. Android 百度地图转换 bd09ll转bd09mc(墨卡托)

由于集成网络AR的Sdk,研究过后,发现这个sdk计算全是使用墨卡托,因为用到网络的定位sdk,网络提供的AR demo,定位使用的是bd09mc,以下来自网络AR的demo

问题来了,网络全局设置只有两种坐标:
gcj02:国测局坐标;
bd09ll:网络经纬度坐标;
所以拖动后,marker返回的要么是gcj02或者bd09ll,和我们AR要求的bd09mc墨卡托明显不符
然后看网络文档,寻找bd09ll转bd09mc(墨卡托)的方法
结果找半天,没有找到
网络文档只提供了 其他尺兆歼谷歌,高德,腾讯,gcj02及 bd09mc 转化为bd09ll
也就是只能提供其他地图转网络地图坐标的方法
我就无语了 bd09mc 和 bd09ll互转呢?这两个都是网络陵冲的,为啥没有方法互转???
然猜扮后就开始在网上找方法 ,相信应该很多人遇到类似问题
结果不其然 找到一篇2015年发布的文章 https://blog.csdn.net/SLAMDUNK006/article/details/50156205
已经过了整整6年了
这文章就是用了网络webapi ,官方文档 https://lbsyun..com/index.php?title=webapi/guide/changeposition
详细的不说了,看文档即可,无非需要创建一个web项目获取ak即可
然后一顿操作猛如虎,直接在搞定了,确实可以完成 bd09ll转bd09mc
难道没有更好的办法了???

很明显,CoordinateConverter就是网络自己封装的工具类 ,convertLL2MC方法就是将bd09ll转bd09mc,经过反复测试
转化完全正确。

折腾好久 终于解决了,网络sdk埋了大坑,这种工具类居然没有放在文档说明,真是坑死个人。

B. android 百度地图 BMapApiDemo 显示黑色屏幕

网络地图程序里那个“更多”里面有设置屏幕常亮。

C. 百度地图的android SDK的DEMO是不是又点问题啊,定位在模拟器上都定位不了

模拟器定位需要自己输入经纬度才能定到的~模拟器有没有gps模块~

D. 如何使用android百度地图离线地图

1.首先把离线地图放在android工程下的assets里面。
注意:建议离线地图下载通过网络地图APIDEMO去下载,因为到官网上下载的离线地图文件格式不一样,APIDEMO的格式是.dat,而官网上的格式是.dat_svc有可能加载不了地图.
2.把离线地图从assets下拷贝到sd卡下
public static void (Context context) {
try {
String filepath = Environment.getExternalStorageDirectory() + "/"
+ "BaiMapSDK" + "/" + "vmp" + "/" + "h" + "/"
+ "xxxxx.dat";

E. 百度地图API安卓SDK7.0的demo导入不到android studio

你挂个vnp会快一点,因为导入的这个项目使用的gradle与已经拥有的gradle版本不一致,导致需要下载该项目需要的gradle版本,估计被墙了就会一直卡滑缺住,直至下载完成(如果能下载完成的话,233)。
我的解决方前好案:
1.随便找一个能运行的as项目
2.打开gradle-wrapper.properties,文件目录:项目/gradle/wrapper/gradle-wrapper.properties
3.复制distributionUrl这一整行的内容,
例如: distributionUrl=https\://services.gradle.org/distributions/gradle-2.4-all.zip
4.打开要导入的项目的gradle-wrapper.properties,具体步骤与步骤2相同
5.把步骤3复制的内容,替换要导入的项目的gradle-wrapper.properties文件信悔辩的distributionUrl这一行
6.再重启as,导入项目就可以了

F. 如何调用百度地图API

如何调用网络地图API

1)下载网络地图移动版API(Android)开发包
要在Android应用中使用网络地图API,就需要在工程中引用网络地图API开发包,这个开发包包含两个文件:mapapi.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及以上。 工程创建完成后,将mapapi.jar和libBMapApiEngine.so分别拷贝到工程的根目录及libs/armeabi目录下,并在工闭迅简程属性->Java Build Path->Libraries中选择“Add JARs”,选定mapapi.jar,这样就可以在应用中使用网络地图API了。工程完整的目录结构如下图所示:
4)在布局文件中添加地图控件(res/layout/main.xml)
5)创建昌做Activity继承..mapapi.MapActivity

package .liufeng.map;
import android.graphics.drawable.Drawable;
import android.os.Bundle;
import ..mapapi.BMapManager;
import ..mapapi.GeoPoint;
import ..mapapi.MapActivity;
import ..mapapi.MapController;
import ..mapapi.MapView;
public class MainActivity extends MapActivity {
private BMapManager mapManager;
private MapView mapView;
private MapController mapController;
@Override
public void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.main);
初始化MapActivity
mapManager = new BMapManager(getApplication());
init方法的第一个参数需填入申请的API Key
mapManager.init("", 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);
}
@Override
protected boolean isRouteDisplayed() {
return false;
}
@Override
protected void onDestroy() {
if (mapManager != null) {
mapManager.destroy();
mapManager = null;
}
super.onDestroy();
}
@Override
protected void onPause() {
if (mapManager != null) {
mapManager.s();
}
super.onPause();
}
@Override
protected void onResume() {
if (mapManager != null) {
mapManager.start();
}
super.onResume();
}
}
6)在AndroidManifest.xml中配置

<?xml version="1.0" encoding="utf-8"?>
<manifest xmlns:android="
package=".liufeng.map"
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)运行结果

方法/步骤
1
在网络搜索框输入“网络地图api”查找到网络地图api的网站。如下图:
2
进入到上图的网络地图api首页。如下图:
3
把网页滚动到下面可以看见“申请密钥”功能,如下图:
4
点击“申请密钥”按钮,进入登陆界面。没有网络帐号则注册一个。注册后继续跳到登录界面。如下图:
5
成功登录则进入后台管理界面。如下图:
6
点击创建应用,则跳到创建应用界面。如下图:
7
填写好信息后。点击确认按钮则生成生成一个密钥。界面会调转到列表管理页面。访问应用(AK)这一列的值就是你的密钥。如下图:
8
接下来就可以在网页上调用了。如下图:
9
接下来是不是想写个简单的调用地图功能呢?调用地图api的demo,网络地图给我们提供很多demo。

G. 百度地图android studio 的语音导航demo怎么跑步起来

SDK内置网络TTS语音播报功能,需要对应用进行授权验证才能够使用,因此需要主动注册应用相关信息。
第一步:如果不是LBS开放平台的注册橘模开发者,首先需要登录LBS开放平台进行应用注册,在工程配置的AndroidManifest中有描述。已经完成注册的开发者请直接进入下一步。【上篇文章中已经完成】
第二步:然后需要在导航TTS平台中圆粗缓进行注册申请。 注意此处的应用签名为MD5,AK为在LBS开发平台申请凳知到的AK。MD5签名仅包含字母,不包含分号,获取方法如下:【此方法适用于签名后的apk,如果只是调试用,则直接使用eclipse——Preferences——Android——Build中的MD5签名信息】

H. 百度地图 android开发 合并两个demo功能

根据代码来实现功能就要考录局限性

I. 开发android怎么引入百度地图

首先需要在网络地图开发平台上下载所需要的文档和功能,由于最新版的3.0.0的不是很熟悉,我这里用的是稍旧一点的版本:2.4.1版的;这里是下载地址:http://developer..com/map/sdkandev-download.htm。我是在这个页面的右下角点击历史版本下载的2.4.1版的:

下载之后它里面有这样一个压缩文件:

解压开之后是这样的三个压缩包:

其中Sample是它的Demo,解压开之后是这样的:

打开之后里面是各种各样功能的demo;
工程配置
第一步:将开发包里的lib文件夹整个拷贝,然后粘贴到你的项目文件夹下,覆盖原有的文件,然后是这样的:

第二步:在工程属性->Java Build Path->Libraries中选择“Add External JARs”,选定mapapi_v2_4_1.jar,确定后返回。
通过以上两步操作后,您就可以正常使用网络地图SDK为您提供的全部功能了。
注意:由于adt插件升级,若您使用Eclipse adt 22的话,需要对开发环境进行相应的设置,方法如下:
1. 在Eclipse 中选中工程,右键选 Properties->Java Build Path->Order and Export 使 Android Private Libraries处于勾选状态;
2. Project -> clean-> clean all .
显示网络地图
网络地图SDK为开发者提供了便捷的显示网络地图数据的接口,通过以下几步操作,即可在您的应用中使用网络地图数据:
第一步:创建并配置工程(具体方法参见工程配置部分的介绍);
第二步:在AndroidManifest中添加开发密钥、所需权限等信息;
(1)在application中添加开发密钥
<application
<meta-data
android:name="com..lbsapi.API_KEY"
android:value="开发者 key" />
</application>
(2)添加所需权限
<uses-permission android:name="android.permission.GET_ACCOUNTS" />
<uses-permission android:name="android.permission.USE_CREDENTIALS" />
<uses-permission android:name="android.permission.MANAGE_ACCOUNTS" />
<uses-permission android:name="android.permission.AUTHENTICATE_ACCOUNTS" />
<uses-permission android:name="android.permission.ACCESS_NETWORK_STATE" />
<uses-permission android:name="android.permission.INTERNET" />
<uses-permission android:name="com.android.launcher.permission.READ_SETTINGS" />
<uses-permission android:name="android.permission.CHANGE_WIFI_STATE" />
<uses-permission android:name="android.permission.ACCESS_WIFI_STATE" />
<uses-permission android:name="android.permission.READ_PHONE_STATE" />
<uses-permission android:name="android.permission.WRITE_EXTERNAL_STORAGE" />
<uses-permission android:name="android.permission.BROADCAST_STICKY" />
<uses-permission android:name="android.permission.WRITE_SETTINGS" />
<uses-permission android:name="android.permission.READ_PHONE_STATE" />
第三步,在布局xml文件中添加地图控件;
<com..mapapi.map.MapView
android:id="@+id/bmapView"
android:layout_width="fill_parent"
android:layout_height="fill_parent"
android:clickable="true" />

第四步,加载配置项:

package com.example.mymap;
import com..mapapi.BMapManager;
import com..mapapi.MKGeneralListener;
import com..mapapi.map.MapController;
import com..mapapi.map.MapView;
import com..platform.comapi.basestruct.GeoPoint;
import android.os.Bundle;
import android.app.Activity;
import android.view.Menu;
public class MainActivity extends Activity implements MKGeneralListener{
private BMapManager mBMapMan = null;
private MapView mMapView = null;
private MapController mMapController = null;
protected void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
mBMapMan = new BMapManager(getApplication());
mBMapMan.init(this);
setContentView(R.layout.activity_main);
// 获取地图控件引用
mMapView = (MapView) findViewById(R.id.bmapView);
mMapView.setBuiltInZoomControls(true);//设置缩放
}

@Override
protected void onDestroy() {
super.onDestroy();
// 在activity执行onDestroy时执行mMapView.onDestroy(),实现地图生命周期管理
mMapView.destroy();
}

@Override
protected void onResume() {
super.onResume();
// 在activity执行onResume时执行mMapView. onResume (),实现地图生命周期管理
mMapView.onResume();
}

@Override
protected void onPause() {
super.onPause();
// 在activity执行onPause时执行mMapView. onPause (),实现地图生命周期管理
mMapView.onPause();
}

@Override
public void onGetNetworkState(int arg0) {
// TODO Auto-generated method stub
}

@Override
public void onGetPermissionState(int arg0) {
// TODO Auto-generated method stub
}
}
最后一步:运行你的app就可以看到网络地图了。

J. android百度地图怎么开发

网络地图

一、基本概念:
(一)、网络地图:
网络地图 Android SDK是一套基于Android 2.1及以上版本设备的应用程序接口。 您可以使用该套 SDK开发适用于Android系统移动设备的地图应用,通过调用地图SDK接口,您可以轻松访问网络地图服务和数据, 构建功能丰富、交互性强的地图类应用程序。
网络地图Android SDK提供的所有服务是免费的,接口使用无次数限制。您需申请密钥(key)后, 才可使用网络地图Android SDK。
(二)、LBS:(Location based Service)基于位置的服务
基于位置的服务,它是通过电信移动运营商的无线电通讯网络(如GSM网、CDMA网)或外部定位方式(如GPS)获取移动终端用户的位置信息(地理坐标,或大地坐标),在地理信息系统(外语缩写:GIS、外语全称:Geographic Information System)平台的支持下,为用户提供相应服务的一种增值业务。

二、网络地图使用步骤:【参照(http://developer..com/map/sdk-android.htm)】
(一)、HelloBaiMap:
1、第一步:申请网络地图密钥(API_KEY):
http://developer..com/map/sdk-android.htm

2、第二步:在工程里新建libs文件夹,将开发包里的mapapi_vX_X_X.jar拷贝到libs根目录下,将libBaiMapSDK_vX_X_X.so拷贝到libs\armeabi目录下(官网demo里已有这两个文件,如果要集成到自己的工程里,就需要自己添加),拷贝完成后的工程目录如下图所示;

注:liblocSDK3.so和locSDK_3.1.jar为网络定位SDK所使用资源,开发者可根据实际需求自行添加。

3、第三步:在AndroidManifest中添加开发密钥、所需权限等信息;
<application

<meta-data

android:name="com..lbsapi.API_KEY"

android:value="P3G69b5s87YG5M31f8A7oyLW"/>

</application>

<uses-permissionandroid:name="android.permission.GET_ACCOUNTS"/>

<uses-permissionandroid:name="android.permission.USE_CREDENTIALS"/>

<uses-permissionandroid:name="android.permission.MANAGE_ACCOUNTS"/>

<uses-permissionandroid:name="android.permission.AUTHENTICATE_ACCOUNTS"/>

<uses-permissionandroid:name="android.permission.ACCESS_NETWORK_STATE"/>

<uses-permissionandroid:name="android.permission.INTERNET"/>

<uses-permissionandroid:name="com.android.launcher.permission.READ_SETTINGS"/>

<uses-permissionandroid:name="android.permission.CHANGE_WIFI_STATE"/>

<uses-permissionandroid:name="android.permission.ACCESS_WIFI_STATE"/>

<uses-permissionandroid:name="android.permission.READ_PHONE_STATE"/>

<uses-permissionandroid:name="android.permission.WRITE_EXTERNAL_STORAGE"/>

<uses-permissionandroid:name="android.permission.BROADCAST_STICKY"/>

<uses-permissionandroid:name="android.permission.WRITE_SETTINGS"/>

<uses-permissionandroid:name="android.permission.READ_PHONE_STATE"/>
4、第四步:在布局文件中添加地图控件:
<com..mapapi.map.MapView

android:id="@+id/mapView"

android:layout_width="match_parent"

android:layout_height="match_parent"

android:clickable="true"/>
5、第五步:在应用程序创建时初始化 SDK引用的Context 全局变量:
protectedvoid onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
// 在使用SDK各组件之前初始化context信息,传入ApplicationContext
// 注意该方法要再setContentView方法之前实现
SDKInitializer.initialize(getApplicationContext());

// 装载布局文件
setContentView(R.layout.activity_main);
}
6、第六步:创建地图Activity,管理地图生命周期:
publicclass MainActivity extends Activity {

private MapView mapView;

@Override

protectedvoid onCreate(Bundle savedInstanceState) {

super.onCreate(savedInstanceState);

// 在使用SDK各组件之前初始化context信息,传入ApplicationContext

// 注意该方法要再setContentView方法之前实现

SDKInitializer.initialize(getApplicationContext());

// 装载布局文件

setContentView(R.layout.activity_main);

mapView = (MapView) findViewById(R.id.mapView);

}

@Override

protectedvoid onResume() {

super.onResume();

mapView.onResume();

}

@Override

protectedvoid onPause() {

super.onPause();

mapView.onPause();

}

@Override

protectedvoid onDestroy() {

super.onDestroy();

mapView.onDestroy();

}

}
(二)、基础地图:
1、实现基础地图的操作步骤:
布局文件中使用MapView;
初始化SDK,并检查Key的合法性;
SDKInitializer.initialize(getApplicationContext());
checkKEY();
初始化BaiMap对象;
对MapView进行findViewById();
MapView对象调用getMap(),返回BaiMap;
设置BaiMap;
setMapType();
setTrafficEnabled();
(三)、POI搜索:
1、实现POI搜索的操作步骤:
布局文件中使用fragment,用来实现对BaiMap的加载;
class="com..mapapi.map.SupportMapFragment"
当前Activity继承于FragementActivity;
初始化SDK,并检查Key的合法性;
SDKInitializer.initialize(getApplicationContext());
checkKEY();
备注:该两句话必须放在setContentView()之前。
初始化BaiMap对象;
Map = ((SupportMapFragment) getSupportFragmentManager() .findFragmentById(R.id.fragment_poi_map)).getBaiMap();
初始化PoiSearch对象;
PoiSearch.newInstance();
给PoiSearch对象设置监听器;
(),重写onGetPoiResult()方法;
自定义PoiOverlay类,实现对每个标记的单击监听;
通过onPoiClick()方法,获取每个PoiInfo中的信息。如果这个对象中包含有明细,可以打开一个新页面来展示兴趣点的详细介绍。
在AndroidManifest.xml文件中配置PlaceCaterActivity页面;
该页面是Bai提供的POI的明细介绍页面。
PoiSearch对象调用searchInBound()、searchInCity() 、 searchNearby()方法实现兴趣点查询。
【总结:】核心步骤:
实例化BaiMap,PoiSearch对象;
PoiSearch对象设置OnGetPoiSearchResultListener()监听;
PoiSearch对象调用searchInCity()方法触发监听。
(四)、线路规划:
1、实现路线规划的操作步骤:
布局文件中使用MapView,用来实现对BaiMap的加载;
初始化SDK,并检查Key的合法性;
SDKInitializer.initialize(getApplicationContext());
checkKEY();
初始化MapView;
调用findViewById()
初始化BaiMap对象;
Map = MapView对象.getMap();
初始化RoutePlanSearch对象;
RoutePlanSearch.newInstance();
给RoutePlanSearch对象设置监听器;
(),重写onGetWalkingRouteResult()、onGetTransitRouteResult()、onGetDrivingRouteResult()方法;
自定义三种RouteOverlay类(WalkingRouteOverlay、TransitRouteOverlay、DrivingRouteOvelray);
调用RoutePlanSearch对象的三种方法(drivingSearch()、transitSearch()、walkingSearch())实现路线规划。
【总结:】核心步骤:
实例化BaiMap,RoutePlanSearch对象;
RoutePlanSearch对象设置OnGetRoutePlanResultListener监听;
RoutePlanSearch对象调用drivingSearch()、transitSearch()、walkingSearch()方法触发监听。
(五)、公交查询:
1、实现公交查询的操作步骤:
布局文件中使用fragment,用来实现对BaiMap的加载;
class="com..mapapi.map.SupportMapFragment"
初始化SDK,并检查Key的合法性;
SDKInitializer.initialize(getApplicationContext());
checkKEY();
当前Activity继承于FragementActivity;
初始化BaiMap对象;
Map = ((SupportMapFragment) getSupportFragmentManager() .findFragmentById(R.id.fragment_poi_map)).getBaiMap();
初始化PoiSearch对象/初始化BusLineSearch对象;
PoiSearch.newInstance();
BusLineSearch.newInstance();
给BusLineSearch对象设置监听器;
(),重写onGetBusLineResult()方法;
给PoiSearch对象设置监听器;
(),重写onGetPoiResult()方法;
在这个监听器中调用BusLineSearch对象的searchBusLine()方法;
给按钮增加单击监听事件,实现PoiSearch对象的searchInBound()、searchInCity() 、 searchNearby()方法实现兴趣点查询。
【总结:】核心步骤:
实例化BaiMap、PoiSearch对象及BusLineSearch对象;
PoiSearch对象设置OnGetPoiSearchResultListener()监听;BusLineSearch对象设置监听;
在PoiSearch对象的监听回调方法onGetPoiResult()中调用busLineSearch对象的searchBusLine()方法;
PoiSearch对象调用searchInCity()方法触发整个监听。

【备注:】
整体思路:先调用POI查询,在POI查询中的监听器中执行BusLine查询。

热点内容
安卓手机如何关闭英文拼写 发布:2024-05-07 01:45:46 浏览:296
光介质存储 发布:2024-05-07 01:32:25 浏览:350
苹果平板ipad密码忘了怎么办 发布:2024-05-07 01:17:16 浏览:704
伏吟的算法 发布:2024-05-07 00:51:48 浏览:830
安卓手机上的照相键在哪里 发布:2024-05-07 00:51:45 浏览:606
ftp如何删除顽固文件 发布:2024-05-07 00:50:57 浏览:251
idea文件夹显示 发布:2024-05-07 00:30:04 浏览:250
怎么把ps存储为ai 发布:2024-05-07 00:30:03 浏览:274
参数内存缓存 发布:2024-05-07 00:28:54 浏览:747
android状态栏高度 发布:2024-05-07 00:24:42 浏览:242