百度地图开发的时候遇到的问题(一)

使用百度地图SDK,运行Demo还可以的,但是当用到自己的程序中就出现问题了:

报出异常如下:

  1. 07-27 10:31:59.501: E/AndroidRuntime(8282): FATAL EXCEPTION: main
  2. 07-27 10:31:59.501: E/AndroidRuntime(8282): java.lang.RuntimeException: Unable to start activity ComponentInfo{com.Casper.UI/com.Casper.subUI.Trans_Location}: android.view.InflateException: Binary XML file line #6: Error inflating class com.baidu.mapapi.map.MapView
  3. 07-27 10:31:59.501: E/AndroidRuntime(8282):     at android.app.ActivityThread.performLaunchActivity(ActivityThread.java:2306)
  4. 07-27 10:31:59.501: E/AndroidRuntime(8282):     at android.app.ActivityThread.handleLaunchActivity(ActivityThread.java:2358)
  5. 07-27 10:31:59.501: E/AndroidRuntime(8282):     at android.app.ActivityThread.access$600(ActivityThread.java:156)
  6. 07-27 10:31:59.501: E/AndroidRuntime(8282):     at android.app.ActivityThread$H.handleMessage(ActivityThread.java:1340)
  7. 07-27 10:31:59.501: E/AndroidRuntime(8282):     at android.os.Handler.dispatchMessage(Handler.java:99)
  8. 07-27 10:31:59.501: E/AndroidRuntime(8282):     at android.os.Looper.loop(Looper.java:153)
  9. 07-27 10:31:59.501: E/AndroidRuntime(8282):     at android.app.ActivityThread.main(ActivityThread.java:5297)
  10. 07-27 10:31:59.501: E/AndroidRuntime(8282):     at java.lang.reflect.Method.invokeNative(Native Method)
  11. 07-27 10:31:59.501: E/AndroidRuntime(8282):     at java.lang.reflect.Method.invoke(Method.java:511)
  12. 07-27 10:31:59.501: E/AndroidRuntime(8282):     at com.android.internal.os.ZygoteInit$MethodAndArgsCaller.run(ZygoteInit.java:833)
  13. 07-27 10:31:59.501: E/AndroidRuntime(8282):     at com.android.internal.os.ZygoteInit.main(ZygoteInit.java:600)
  14. 07-27 10:31:59.501: E/AndroidRuntime(8282):     at dalvik.system.NativeStart.main(Native Method)
  15. 07-27 10:31:59.501: E/AndroidRuntime(8282): Caused by: android.view.InflateException: Binary XML file line #6: Error inflating class com.baidu.mapapi.map.MapView
  16. 07-27 10:31:59.501: E/AndroidRuntime(8282):     at android.view.LayoutInflater.createView(LayoutInflater.java:613)
  17. 07-27 10:31:59.501: E/AndroidRuntime(8282):     at android.view.LayoutInflater.createViewFromTag(LayoutInflater.java:687)
  18. 07-27 10:31:59.501: E/AndroidRuntime(8282):     at android.view.LayoutInflater.rInflate(LayoutInflater.java:746)
  19. 07-27 10:31:59.501: E/AndroidRuntime(8282):     at android.view.LayoutInflater.inflate(LayoutInflater.java:489)
  20. 07-27 10:31:59.501: E/AndroidRuntime(8282):     at android.view.LayoutInflater.inflate(LayoutInflater.java:396)
  21. 07-27 10:31:59.501: E/AndroidRuntime(8282):     at android.view.LayoutInflater.inflate(LayoutInflater.java:352)
  22. 07-27 10:31:59.501: E/AndroidRuntime(8282):     at com.android.internal.policy.impl.PhoneWindow.setContentView(PhoneWindow.java:274)
  23. 07-27 10:31:59.501: E/AndroidRuntime(8282):     at android.app.Activity.setContentView(Activity.java:1881)
  24. 07-27 10:31:59.501: E/AndroidRuntime(8282):     at com.Casper.subUI.Trans_Location.onCreate(Trans_Location.java:51)
  25. 07-27 10:31:59.501: E/AndroidRuntime(8282):     at android.app.Activity.performCreate(Activity.java:5122)
  26. 07-27 10:31:59.501: E/AndroidRuntime(8282):     at android.app.Instrumentation.callActivityOnCreate(Instrumentation.java:1081)
  27. 07-27 10:31:59.501: E/AndroidRuntime(8282):     at android.app.ActivityThread.performLaunchActivity(ActivityThread.java:2270)
  28. 07-27 10:31:59.501: E/AndroidRuntime(8282):     ... 11 more
  29. 07-27 10:31:59.501: E/AndroidRuntime(8282): Caused by: java.lang.reflect.InvocationTargetException
  30. 07-27 10:31:59.501: E/AndroidRuntime(8282):     at java.lang.reflect.Constructor.constructNative(Native Method)
  31. 07-27 10:31:59.501: E/AndroidRuntime(8282):     at java.lang.reflect.Constructor.newInstance(Constructor.java:417)
  32. 07-27 10:31:59.501: E/AndroidRuntime(8282):     at android.view.LayoutInflater.createView(LayoutInflater.java:587)
  33. 07-27 10:31:59.501: E/AndroidRuntime(8282):     ... 22 more
  34. 07-27 10:31:59.501: E/AndroidRuntime(8282): Caused by: java.lang.IllegalStateException: you have not supplyed the global app context info from SDKInitializer.initialize(Context) function.
  35. 07-27 10:31:59.501: E/AndroidRuntime(8282):     at com.baidu.mapapi.a.b(Unknown Source)
  36. 07-27 10:31:59.501: E/AndroidRuntime(8282):     at com.baidu.mapapi.map.MapView.a(Unknown Source)
  37. 07-27 10:31:59.501: E/AndroidRuntime(8282):     at com.baidu.mapapi.map.MapView.<init>(Unknown Source)
  38. 07-27 10:31:59.501: E/AndroidRuntime(8282):     ... 25 more

在网上查了一天的,没办法解决。

网上出现这样错误的原因有很多:

一、没有把百度的.jar包导进来,因为使用的百度地图是第三方的,需要把它写到一个自己创建的libs文件夹下,还有把里面的.os文件也放到下面。

二、在继承FragmentActivity的要使用android.support.v4.app.FragmentActivity;而不是使用android.app.FragmentActivity.

三、因为没有编译成功的原理,有时候需要将工程clean一下

四、没有将申请百度地图key放到Manifest.xml文件中,那样根本不可能使用的。

但是我的错误都不是上面的问题,在百度地图Demo中有一个Application的类,那是一个配置整个application的类,使用的时候一定要定义这个类,同时还要把这个类放到Manifest.xml文件中说明一下:

    1. <application
    2. android:name="com.Casper.ApplicationConfig.ApplicationConfig"
    3. android:debuggable="true"
    4. android:allowBackup="true"
    5. android:icon="@drawable/ic_launcher"
    6. android:label="@string/app_name"

android:theme="@style/AppTheme" >
遇到了和这个同样的问题 就把这个转载过来了:http://blog.csdn.net/u010428517/article/details/38168219?reload

时间: 2024-08-05 06:32:43

百度地图开发的时候遇到的问题(一)的相关文章

Android 百度地图开发(一)--- 申请API Key和在项目中显示百度地图

标签: Android百度地图API Key  分类: Android 百度地图开发(2)  最近自己想研究下地图,本来想研究google Map,但是申请API key比较坑爹,于是从百度地图入手,其实他们的用法都差不多,本篇文章就带领大家在自己的Android项目中加入百度地图的功能,接下来我会写一系列关于百度地图的文章,欢迎大家到时候关注!   一 申请API key 在使用百度地图之前,我们必须去申请一个百度地图的API key,申请地址http://lbsyun.baidu.com/a

android 百度地图开发实例(转载)

因为在我的寝室google基站定位返回的数据总是为空,所以换成百度地图,发现百度地图开发起来非常方便,提供了许多有用的工具,地图的加载速度也比google地图快许多. 为了加强记忆,写一点android 百度地图开发常用的方法. 1初始化 MapManager mBMapMan = new BMapManager(this);boolean isSuccess = mBMapMan.init(this.mStrKey, new MyGeneralListener()); isSuccess 的值

[安卓][地图] 1、高德或百度地图开发第一步(高手跳过)

>_<" 开发地图应用必须用地图供应商提供的API,这里我用了百度地图和高德地图,其流程基本上完全相似.关键点有三个: 一.申请KEY 二.下载提供商提供的API等资源 三.在工程里加载库 >_<" 具体详细过程可以参看他们的开发指南: 百度地图开发指南:http://developer.baidu.com/map/index.php?title=android-locsdk 高德地图开发指南:http://lbs.amap.com/api/android-sd

Android studio 百度地图开发(5)查询周边服务(加油站)

email:[email protected] 开发环境:win7 64位,Android Studio,请注意是Android Studio,使用的导航SDK版本:3.1.0. 百度地图应用(1):Android studio 百度地图开发(1)配置工程.显示地图 百度地图应用(2):Android studio 百度地图开发(2)地图定位 百度地图应用(3):Android studio 百度地图开发(3)地图导航 百度地图应用(4):Android studio 百度地图开发(4)触摸选点

百度地图开发(二)之添加覆盖物 + 地理编码和反地理编码

之前写过一篇关于百度地图开发的blog,主要介绍了百度地图的基本地图的显示. 详见:Android百度地图开发(一)之初体验 下面来看一下地图上覆盖物的添加,以及地理编码和反地理编码. 添加覆盖物 在地图上添加覆盖物,一般需要以下几个步骤: 1. 定义坐标点,有可能是一个,有可能是多个(比如:多边形覆盖物). 2. 构造OverlayOptions(地图覆盖物选型基类). 3. 在地图上添加覆盖物. 4. 添加相应的监听事件. 在API中可以看到,BaiDuMap类中有一个方法: 这个方法就是用

[android] 百度地图开发 (三).定位当前位置及getLastKnownLocation获取location总为空问题

       前一篇百度地图开发讲述"(二).定位城市位置和城市POI搜索",主要通过监听对象MKSearchListener类实现城市兴趣点POI(Point of Interest)搜索.该篇讲述定位当前自己的位置及使用getLastKnownLocation获取location总时为空值的问题. 一. 定位当前位置的原理及实现       定位当前位置可以通过LBS(Location Based Service,基于位置的服务),主要工作原理是利用无线网络Network或GPS定

[android] 百度地图开发 (二).定位城市位置和城市POI搜索

一. 百度地图城市定位和POI搜索知识       上一篇文章"百度地图开发(一)"中讲述了如何申请百度APIKey及解决显示空白网格的问题.该篇文章主要讲述如何定位城市位置.定位自己的位置和进行城市兴趣点POI(Point of Interest)搜索.那么如何在百度地图上定位某一个位置呢?       通过类GeoPoint可以定义经纬度,它存放着纬度值和经度值,通过getLastKnownLocation()方法可以获取Location对象,再定位经纬度设置其为地图中心即可显示当

Android 百度地图开发之一(Hello BaiDu Map)

之前也接触过百度地图的开发,但那是在网上找的案例或代码,而且是比较老的版本.打算重新学习一下百度地图的开发. 本次使用的百度地图的版本是 Android SDK v3.0.0 本篇文章主要讲述百度地图开发的准备和地图的成功显示即可. 首先建议大家先申请注册一个百度账号. 申请密钥(要想实现百度地图的相关服务必须申请密钥),网址:http://lbsyun.baidu.com/apiconsole/key 需要注意的是:应用名称不要重复或无效,安全码的输入详情请查看:http://develope

android百度地图开发之自动定位所在位置与固定位置进行驾车,步行,公交路线搜索

最近跟着百度地图API学地图开发,先是学了路径搜索,对于已知坐标的两点进行驾车.公交.步行三种路径的搜索(公交路径运行没效果,待学习中),后来又 学了定位功能,能够获取到自己所在位置的经纬度,但当将两者合起来先自动获取自己所在位置的经纬度然后与固定地点进行路径搜索时却弄不出来了,因为刚开始 写的两者在两个类中总是取不到经纬度值,后来将两者写到同一个类中去了,终于取到经纬度值了,也运行出来了.需要 在 BDLocationListener的onReceiveLocation里获取到经纬度值,因为已

记录我在百度地图开发和ArcGIS for Android开发时出现的一些错误及解决方案(后续更新)

[1]The import com.baidu.mapapi.map.Geometry conflicts with a type defined in the same file 解决:百度api包下的Geometry和某个类名相冲突,将类名换成另外的名字,不要和百度相关类里面的类名相同 [2]java.lang.ClassCastException: 解决:类型转换错误.查看Test_Geometry项目的Mainfest.xml清单文件,在<applicaiton>标签里面少了对Myap