为什么我的百度地图检索Poi出错

E/AndroidRuntime: FATAL EXCEPTION: main
    Process: cn.edu.zut.mapsat, PID: 5571
    java.lang.NullPointerException: Attempt to invoke interface method 'java.util.Iterator java.util.List.iterator()' on a null object reference
        at cn.edu.zut.mapsat.MainActivity$1.onGetPoiResult(MainActivity.java:45)
        at com.baidu.platform.core.c.g.a(Unknown Source)
        at com.baidu.platform.base.c.run(Unknown Source)
        at android.os.Handler.handleCallback(Handler.java:739)
        at android.os.Handler.dispatchMessage(Handler.java:95)
        at android.os.Looper.loop(Looper.java:135)
        at android.app.ActivityThread.main(ActivityThread.java:5293)
        at java.lang.reflect.Method.invoke(Native Method)
        at java.lang.reflect.Method.invoke(Method.java:372)
        at com.android.internal.os.ZygoteInit$MethodAndArgsCaller.run(ZygoteInit.java:903)
        at com.android.internal.os.ZygoteInit.main(ZygoteInit.java:698)
如上报上面的错误
  • 在监听对象的方法里面打印出错误类型(只粘出来部分代码)
OnGetPoiSearchResultListener poiListener = new OnGetPoiSearchResultListener(){
            public void onGetPoiResult(PoiResult result){
                System.out.println(result.error);
            }

错误类型:PERMISSION_UNFINISHED

  • 百度了一下,原来是pio检索代码不能直接写在onCreate函数里面。
  • 在布局文件里定义一个button,把检索代码写在onClick方法里面就可以了。
@Override
    public void onClick(View v) {
        mPoiSearch.searchInCity(new PoiCitySearchOption()
                .city("信阳") //必填
                .keyword("信阳农林学院平桥区").pageNum(1));
    }

在这里插入图片描述

猜你喜欢

转载自blog.csdn.net/jdq8576/article/details/90727715