Java org.json.JSONTokener:没有来自Reader的构造函数

Java org.json.JSONTokener:没有来自Reader的构造函数,java,android,org.json,Java,Android,Org.json,在Android(API 30,但也有API 26)Java项目中,我在build.gradle中有这种依赖关系: implementation group: 'org.json', name: 'json', version: '20210307' 但以下操作失败,因为它找不到请求的构造函数(org.json.JSONTokener(Reader…),并且它坚持认为唯一的构造函数具有字符串: Reader reader = new InputStreamReader(responseBody

在Android(API 30,但也有API 26)Java项目中,我在
build.gradle
中有这种依赖关系:

implementation group: 'org.json', name: 'json', version: '20210307'
但以下操作失败,因为它找不到请求的构造函数(
org.json.JSONTokener(Reader…
),并且它坚持认为唯一的构造函数具有
字符串

Reader reader = new InputStreamReader(responseBody.byteStream());
org.json.JSONTokener jst = new org.json.JSONTokener(reader);

我使用的是缺少此功能的特定org.json实现,还是我做错了什么?

你忽略了谷歌将org.json作为android框架的一部分这一事实。。。因此,如果不重新打包,您就无法使用与android上不同的版本。事实上,即使不添加依赖项,org.json也无法找到。这很好,所以android版本只有字符串构造函数?那么,从
responseBody.byteStream()
(与改型的响应主体一起使用)生成自己的JSON令牌的最佳方法是什么呢?谢谢你的提示,也许这对其他人有帮助:我最终做的是,将其名称空间修改为
org.json.XYZ
,并将已编译的JAR作为依赖项添加到我的项目中。还有一种可能是gradle插件来隐藏名称空间,我没有尝试过,但在我的其他评论中的链接中提到了。谢谢你给我指明了正确的方向。
error: incompatible types: Reader cannot be converted to String