在Androidstudio上看着视频教学和API文档做了个小demo,单独运行AuthService.getAuth(); 是可以获取token的,但是运行FaceDetect.detect();时就一直获取token失败。
求大神指点。
收藏
点赞
0
个赞
请登录后评论
TOP
切换版块
估计是版本问题吧.
问题描述:
总是获取不到access_token值,但是能获取到token值(json数据)。
之前用的方法:
// result为获取的token值
JSONObject jsonObject = new JSONObject(result);
String access_token = jsonObject.getString("access_token");
解决的方法:
JSONObject jsonObject = JSONObject.fromObject(result);
String access_token = jsonObject.optString("access_token");
总结:这两种方法所用的JSONObject 不是同一个类。第一个用的是org.json.JSONObject这个包,第二个是用的net.sf.json.JSONObject包
用第二个方法要导入的6个包(https://pan.baidu.com/s/1c27Uyre)
最好找到了Android.jar 下的org.json 的JSONObject类下的getString方法(如下图),这个方法有问题但不能修改,最后解决办法在console中复制获取的access_token到代码中运行。如果大神有更好的解决办法请指教。
跟进:
经过调试得到问题出在这:
JSONObject jsonObject = new JSONObject(result);
String access_token = jsonObject.getString("access_token");
在json对象获取指定名字的值时,但是为什么会出错呢?还待解决。
您好,感谢您使用百度AI社区,如果有志同道合的小伙伴遇到过相似问题并解决了会给您答复,同时我们也内部再跟进您这个问题,会尽快给您具体答复