Warning: file_get_contents(/data/phpspider/zhask/data//catemap/3/android/214.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Android/Java-JSONException,Java.util.HashMap无法转换为JSONObject API<;21_Android_Json_Hashmap - Fatal编程技术网

Android/Java-JSONException,Java.util.HashMap无法转换为JSONObject API<;21

Android/Java-JSONException,Java.util.HashMap无法转换为JSONObject API<;21,android,json,hashmap,Android,Json,Hashmap,我在运行API=21的设备上,我将使用以下示例代码 jsonObject.getJSONObject("tuesday") 它成功地返回了一个JSONObject,但是,在运行API

我在运行API<21的设备上遇到了一个非常奇怪的问题

我有以下JSONObject

{  
   "saturday":"{notes=Walk-Ins Only, open=2016-01-16T08:00:00-05:00, close=2016-01-16T15:00:00-05:00}",
   "wednesday":"{notes=Walk-Ins Only, open=2016-01-20T09:00:00-05:00, close=2016-01-20T18:45:00-05:00}",
   "tuesday":"{notes=Walk-Ins Only, open=2016-01-19T09:00:00-05:00, close=2016-01-19T18:45:00-05:00}",
   "friday":"{notes=Walk-Ins Only, open=2016-01-22T09:00:00-05:00, close=2016-01-22T18:45:00-05:00}",
   "thursday":"{notes=Appointments & Walk-Ins, open=2016-01-21T09:00:00-05:00, close=2016-01-21T18:45:00-05:00}",
   "monday":"{notes=null, open=null, close=null}",
   "sunday":"{notes=null, open=null, close=null}"
}
在尝试获取给定日期的JSONObject时,在运行API>=21的设备上,我将使用以下示例代码

jsonObject.getJSONObject("tuesday")
它成功地返回了一个JSONObject,但是,在运行API<21的设备上,抛出的是相同的代码

Value {notes=Walk-Ins Only, open=2016-01-19T09:00:00-05:00, close=2016-01-19T18:45:00-05:00} at tuesday of type java.util.HashMap cannot be converted to JSONObject
为什么会这样

编辑:我的映射代码没有什么特别之处-

JSONObject loungeHours = new JSONObject(ParseCloud.<Map>callFunction(STORE_HOURS_ENDPOINT, new HashMap<String, Object>()));
全堆栈跟踪

W/System.err: org.json.JSONException: Value {notes=Walk-Ins Only, open=2016-01-19T09:00:00-05:00, close=2016-01-19T18:45:00-05:00} at tuesday of type java.util.HashMap cannot be converted to JSONObject
W/System.err:     at org.json.JSON.typeMismatch(JSON.java:100)
W/System.err:     at org.json.JSONObject.getJSONObject(JSONObject.java:573)
W/System.err:     at com.hitchtech.adamsbarberlounge.parse.ParseDelegate.getOpenHours(ParseDelegate.java:127)
W/System.err:     at com.hitchtech.adamsbarberlounge.application.main.LoungeDetailFragment$LoungeInfoCardController.populateHours(LoungeDetailFragment.java:247)
W/System.err:     at com.hitchtech.adamsbarberlounge.application.main.LoungeDetailFragment$LoungeInfoCardController.<init>(LoungeDetailFragment.java:105)
W/System.err:     at com.hitchtech.adamsbarberlounge.application.main.LoungeDetailFragment.setupLoungeInfoCardController(LoungeDetailFragment.java:73)
W/System.err:     at com.hitchtech.adamsbarberlounge.application.main.LoungeDetailFragment.onViewCreated(LoungeDetailFragment.java:64)
W/System.err:     at android.support.v4.app.FragmentManagerImpl.moveToState(FragmentManager.java:1086)
W/System.err:     at android.support.v4.app.FragmentManagerImpl.moveToState(FragmentManager.java:1248)
W/System.err:     at android.support.v4.app.BackStackRecord.run(BackStackRecord.java:738)
W/System.err:     at android.support.v4.app.FragmentManagerImpl.execPendingActions(FragmentManager.java:1613)
W/System.err:     at android.support.v4.app.FragmentController.execPendingActions(FragmentController.java:330)
W/System.err:     at android.support.v4.app.FragmentActivity.onResume(FragmentActivity.java:441)
W/System.err:     at android.app.Instrumentation.callActivityOnResume(Instrumentation.java:1185)
W/System.err:     at android.app.Activity.performResume(Activity.java:5182)
W/System.err:     at android.app.ActivityThread.performResumeActivity(ActivityThread.java:2732)
W/System.err:     at android.app.ActivityThread.handleResumeActivity(ActivityThread.java:2771)
W/System.err:     at android.app.ActivityThread.handleLaunchActivity(ActivityThread.java:2235)
W/System.err:     at android.app.ActivityThread.access$600(ActivityThread.java:141)
W/System.err:     at android.app.ActivityThread$H.handleMessage(ActivityThread.java:1234)
W/System.err:     at android.os.Handler.dispatchMessage(Handler.java:99)
W/System.err:     at android.os.Looper.loop(Looper.java:137)
W/System.err:     at android.app.ActivityThread.main(ActivityThread.java:5041)
W/System.err:     at java.lang.reflect.Method.invokeNative(Native Method)
W/System.err:     at java.lang.reflect.Method.invoke(Method.java:511)
W/System.err:     at com.android.internal.os.ZygoteInit$MethodAndArgsCaller.run(ZygoteInit.java:793)
W/System.err:     at com.android.internal.os.ZygoteInit.main(ZygoteInit.java:560)
W/System.err:     at dalvik.system.NativeStart.main(Native Method)
W/System.err:org.json.JSONException:Value{notes=Walk-Ins Only,open=2016-01-19T09:00:00-05:00,close=2016-01-19T18:45:00-05:00}周二的java.util.HashMap类型无法转换为JSONObject
W/System.err:at org.json.json.typemissmatch(json.java:100)
W/System.err:org.json.JSONObject.getJSONObject(JSONObject.java:573)
W/System.err:com.hitchtech.adamsbarberlounge.parse.ParseDelegate.getOpenHours(ParseDelegate.java:127)
W/System.err:com.hitchtech.adamsbarberlounge.application.main.LoungeDetailFragment$LoungeInfoCardController.populateHours(LoungeDetailFragment.java:247)
W/System.err:com.hitchtech.adamsbarberlounge.application.main.LoungeDetailFragment$LoungeInfoCardController。(LoungeDetailFragment.java:105)
W/System.err:com.hitchtech.adamsbarberlounge.application.main.LoungeDetailFragment.setupLoungeInfoCardController(LoungeDetailFragment.java:73)
W/System.err:com.hitchtech.adamsbarberlounge.application.main.LoungeDetailFragment.onViewCreated(LoungeDetailFragment.java:64)
W/System.err:at-android.support.v4.app.FragmentManagerImpl.moveToState(FragmentManager.java:1086)
W/System.err:at-android.support.v4.app.FragmentManagerImpl.moveToState(FragmentManager.java:1248)
W/System.err:at-android.support.v4.app.BackStackRecord.run(BackStackRecord.java:738)
W/System.err:at-android.support.v4.app.FragmentManagerImpl.execPendingActions(FragmentManager.java:1613)
W/System.err:at-android.support.v4.app.FragmentController.execPendingActions(FragmentController.java:330)
W/System.err:at-android.support.v4.app.FragmentActivity.onResume(FragmentActivity.java:441)
W/System.err:at-android.app.Instrumentation.callActivityOnResume(Instrumentation.java:1185)
W/System.err:at-android.app.Activity.performResume(Activity.java:5182)
W/System.err:位于android.app.ActivityThread.performResumeActivity(ActivityThread.java:2732)
W/System.err:at-android.app.ActivityThread.handleResumeActivity(ActivityThread.java:2771)
W/System.err:at-android.app.ActivityThread.handleLaunchActivity(ActivityThread.java:2235)
W/System.err:android.app.ActivityThread.access$600(ActivityThread.java:141)
W/System.err:at-android.app.ActivityThread$H.handleMessage(ActivityThread.java:1234)
W/System.err:at-android.os.Handler.dispatchMessage(Handler.java:99)
W/System.err:at-android.os.Looper.loop(Looper.java:137)
W/System.err:at-android.app.ActivityThread.main(ActivityThread.java:5041)
W/System.err:at java.lang.reflect.Method.invokenactive(本机方法)
W/System.err:at java.lang.reflect.Method.invoke(Method.java:511)
W/System.err:com.android.internal.os.ZygoteInit$MethodAndArgsCaller.run(ZygoteInit.java:793)
W/System.err:com.android.internal.os.ZygoteInit.main(ZygoteInit.java:560)
W/System.err:at-dalvik.System.NativeStart.main(本机方法)

post您的映射代码类似于json对象。{Key:“value”,Key:“value2”}错误是什么trace@sector11堆栈跟踪posted@QuangDoan你说得对,仔细看,它确实是无效的。。它缺少引用。为什么API<21不引用它,而API>=21引用它?
W/System.err: org.json.JSONException: Value {notes=Walk-Ins Only, open=2016-01-19T09:00:00-05:00, close=2016-01-19T18:45:00-05:00} at tuesday of type java.util.HashMap cannot be converted to JSONObject
W/System.err:     at org.json.JSON.typeMismatch(JSON.java:100)
W/System.err:     at org.json.JSONObject.getJSONObject(JSONObject.java:573)
W/System.err:     at com.hitchtech.adamsbarberlounge.parse.ParseDelegate.getOpenHours(ParseDelegate.java:127)
W/System.err:     at com.hitchtech.adamsbarberlounge.application.main.LoungeDetailFragment$LoungeInfoCardController.populateHours(LoungeDetailFragment.java:247)
W/System.err:     at com.hitchtech.adamsbarberlounge.application.main.LoungeDetailFragment$LoungeInfoCardController.<init>(LoungeDetailFragment.java:105)
W/System.err:     at com.hitchtech.adamsbarberlounge.application.main.LoungeDetailFragment.setupLoungeInfoCardController(LoungeDetailFragment.java:73)
W/System.err:     at com.hitchtech.adamsbarberlounge.application.main.LoungeDetailFragment.onViewCreated(LoungeDetailFragment.java:64)
W/System.err:     at android.support.v4.app.FragmentManagerImpl.moveToState(FragmentManager.java:1086)
W/System.err:     at android.support.v4.app.FragmentManagerImpl.moveToState(FragmentManager.java:1248)
W/System.err:     at android.support.v4.app.BackStackRecord.run(BackStackRecord.java:738)
W/System.err:     at android.support.v4.app.FragmentManagerImpl.execPendingActions(FragmentManager.java:1613)
W/System.err:     at android.support.v4.app.FragmentController.execPendingActions(FragmentController.java:330)
W/System.err:     at android.support.v4.app.FragmentActivity.onResume(FragmentActivity.java:441)
W/System.err:     at android.app.Instrumentation.callActivityOnResume(Instrumentation.java:1185)
W/System.err:     at android.app.Activity.performResume(Activity.java:5182)
W/System.err:     at android.app.ActivityThread.performResumeActivity(ActivityThread.java:2732)
W/System.err:     at android.app.ActivityThread.handleResumeActivity(ActivityThread.java:2771)
W/System.err:     at android.app.ActivityThread.handleLaunchActivity(ActivityThread.java:2235)
W/System.err:     at android.app.ActivityThread.access$600(ActivityThread.java:141)
W/System.err:     at android.app.ActivityThread$H.handleMessage(ActivityThread.java:1234)
W/System.err:     at android.os.Handler.dispatchMessage(Handler.java:99)
W/System.err:     at android.os.Looper.loop(Looper.java:137)
W/System.err:     at android.app.ActivityThread.main(ActivityThread.java:5041)
W/System.err:     at java.lang.reflect.Method.invokeNative(Native Method)
W/System.err:     at java.lang.reflect.Method.invoke(Method.java:511)
W/System.err:     at com.android.internal.os.ZygoteInit$MethodAndArgsCaller.run(ZygoteInit.java:793)
W/System.err:     at com.android.internal.os.ZygoteInit.main(ZygoteInit.java:560)
W/System.err:     at dalvik.system.NativeStart.main(Native Method)