1. 使用如下帖子中的办法检查了AK没有问题:
http://bbs.lbsyun.baidu.com/archiver/?tid-5294.html
2. 自测试了DEMO运行也没有问题;
3. 代码在oncreate之后加入的
@Override
public void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
//SDKInitializer.initialize(getApplicationContext());
SDKInitializer.initialize(this.getApplicationContext());
也没有问题;
4. 于是,问题来了,为啥报了标题上的错误;
找了半天,发现,在此方法执行之前,一些资源类的加载都无法进行;
OverLayDemo.java中,在oncreate前边有如下这样一段:
// 初始化全局 bitmap 信息,不用时及时 recycle
BitmapDescriptor bdA = BitmapDescriptorFactory
.fromResource(R.drawable.icon_marka);
BitmapDescriptor bdB = BitmapDescriptorFactory
.fromResource(R.drawable.icon_markb);
BitmapDescriptor bdC = BitmapDescriptorFactory
.fromResource(R.drawable.icon_markc);
BitmapDescriptor bdD = BitmapDescriptorFactory
.fromResource(R.drawable.icon_markd);
BitmapDescriptor bd = BitmapDescriptorFactory
.fromResource(R.drawable.icon_gcoding);
BitmapDescriptor bdGround = BitmapDescriptorFactory
.fromResource(R.drawable.ground_overlay);
此段代码使用了获取资源文件;
于是将这里的定义全部改为Null,然后在onCreate方法中的 SDKInitializer.initialize(this.getApplicationContext()); 执行之后,再将它们赋值;
问题解决;
demo为什么没问题,因为人家的application总类里边已经将环境初始化好咯;