按照百度官网和网上一些文章复制粘贴的代码,android studio配置啥的应该没问题,因为用真机调试显示北京地图成功了。
第二步我想要定位,但是代码贴好后有红线。
mLocationClient = new LocationClient(getApplicationContext());就是这一行标红线。
加了try 和catch后红线没了,可以运行。但是真机运行后闪退。日志报错:
Caused by: java.lang.NullPointerException: Attempt to invoke virtual
method 'void com.baidu.location.LocationClient.setLocOption(com.baidu.location.LocationClientOption)' on a null object reference
at com.example.ditu.MainActivity.onCreate(MainActivity.java:45)
对应的是mLocationClient = new LocationClient(getApplicationContext());
我想应该是说LocationClient对象没有引用成功,但是不知道怎么解决。
请帮帮我!
在 调用前 增加 LocationClient.setAgreePrivacy(true);
把鼠标放红线上,看啥问题啊,再解决问题
直接用try catch也太粗暴了,很明显它必然会进入catch,mLocationClient 初始化必然会不成功,后面调用就空指针了。
getApplicationContext() 换成 MainActivity.this试试