如何解决价值与LT; java.lang.String类型的BR不能转换为JSONObject的? [英] How to solve Value <br of type java.lang.String cannot be converted to JSONObject?
问题描述
我试图将数据发送到服务器和我的应用程序崩溃,并显示此错误任何一个可以帮我这个........
错误解析dataorg.json.JSONException:值&LT; BR java.lang.String类型的,不能被转换为JSONObject的
10月12日至10日:54:46.630:W / dalvikvm(870):主题ID = 11:螺纹未捕获的异常(组= 0x409961f8)退出
致命异常:AsyncTask的#1
了java.lang.RuntimeException:执行doInBackground发生错误()
在android.os.AsyncTask $ 3.done(AsyncTask.java:278)
在java.util.concurrent.FutureTask中$ Sync.innerSetException(FutureTask.java:273)
在java.util.concurrent.FutureTask.setException(FutureTask.java:124)
在java.util.concurrent.FutureTask中$ Sync.innerRun(FutureTask.java:307)
在java.util.concurrent.FutureTask.run(FutureTask.java:137)
在android.os.AsyncTask $ SerialExecutor $ 1.run(AsyncTask.java:208)
在java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1076)
在java.util.concurrent.ThreadPoolExecutor中的$ Worker.run(ThreadPoolExecutor.java:569)
在java.lang.Thread.run(Thread.java:856)
显示java.lang.NullPointerException:产生的原因
在info.androidhive.slidingmenu.RegistrationForm $ AttemptLogin.doInBackground(RegistrationForm.java:435)
在info.androidhive.slidingmenu.RegistrationForm $ AttemptLogin.doInBackground(RegistrationForm.java:1)
在android.os.AsyncTask $ 2.call(AsyncTask.java:264)
在java.util.concurrent.FutureTask中$ Sync.innerRun(FutureTask.java:305)
... 5个
活动info.androidhive.slidingmenu.RegistrationForm已泄漏,最初这里添加窗口com.android.internal.policy.impl.PhoneWindow$DecorView@41888e70
android.view.WindowLeaked:活动info.androidhive.slidingmenu.RegistrationForm渗漏,最初这里添加窗口com.android.internal.policy.impl.PhoneWindow$DecorView@41888e70
在android.view.ViewRootImpl&LT;&初始化GT;(ViewRootImpl.java:343)
在android.view.WindowManagerImpl.addView(WindowManagerImpl.java:245)
在android.view.WindowManagerImpl.addView(WindowManagerImpl.java:193)
在android.view.WindowManagerImpl $ CompatModeWrapper.addView(WindowManagerImpl.java:118)
在android.view.Window $ LocalWindowManager.addView(Window.java:537)
在android.app.Dialog.show(Dialog.java:274)
在info.androidhive.slidingmenu.RegistrationForm $ AttemptLogin.on preExecute(RegistrationForm.java:375)
在android.os.AsyncTask.executeOnExecutor(AsyncTask.java:561)
在android.os.AsyncTask.execute(AsyncTask.java:511)
在info.androidhive.slidingmenu.RegistrationForm.onClick(RegistrationForm.java:291)
在android.view.View.performClick(View.java:3480)
在android.view.View $ PerformClick.run(View.java:13983)
在android.os.Handler.handleCallback(Handler.java:605)
在android.os.Handler.dispatchMessage(Handler.java:92)
在android.os.Looper.loop(Looper.java:137)
在android.app.ActivityThread.main(ActivityThread.java:4340)
在java.lang.reflect.Method.invokeNative(本机方法)
在java.lang.reflect.Method.invoke(Method.java:511)
在com.android.internal.os.ZygoteInit $ MethodAndArgsCaller.run(ZygoteInit.java:784)
在com.android.internal.os.ZygoteInit.main(ZygoteInit.java:551)
在dalvik.system.NativeStart.main(本机方法)
在这里<一检查我的code href=\"http://stackoverflow.com/questions/27393384/how-to-send-data-from-android-to-php-server-using-json?noredirect=1#comment43233981_27393384\">How使用JSON在Android的数据发送到PHP服务器?
在logcat中的这一部分:
错误解析dataorg.json.JSONException:值
&LT; BR
java.lang.String类型不能
块引用>所有最喜欢你打一个突破标记
&LT; BR /&GT;
。问题是,你没有得到任何JSON
数据。您需要调查原因,可能的原因:
- 网络问题
- 权限问题
- 无效响应
类AttemptLogin扩展的AsyncTask&LT;字符串,字符串,字符串&GT; {
布尔失败= FALSE; @覆盖
在preExecute保护无效(){
super.on preExecute();
....
} @燮pressWarnings(未使用)
@覆盖
保护字符串doInBackground(字符串参数... args){
.....
尝试{
//大厦参数
..... JSON = jsonParser.makeHtt prequest(
LOGIN_URL,POST,则params);
Log.d(请求尝试,json.toString());
JSONObject的jobj =新的JSONObject(json.toString());
返回jobj; }赶上(JSONException E){
e.printStackTrace();
}
返回null;
} 保护无效onPostExecute(JSONObject的jobj){
pDialog.dismiss();
尝试{
如果(jobj.getString(TAG_SUCCESS)){
最后弦乐味精= jobj.getString(味精);
Toast.makeText(
getApplicationContext(),味精,Toast.LENGTH_LONG)
。显示();
}其他{
的System.out.println(FAIL !!);
} }赶上(JSONException E){
e.printStackTrace();
}
}
}I am trying to send data to server and my application crash and show this error can any one help me with this........
Error Parsing dataorg.json.JSONException: Value <br of type java.lang.String cannot be converted to JSONObject 12-10 10:54:46.630: W/dalvikvm(870): threadid=11: thread exiting with uncaught exception (group=0x409961f8) FATAL EXCEPTION: AsyncTask #1 java.lang.RuntimeException: An error occured while executing doInBackground() at android.os.AsyncTask$3.done(AsyncTask.java:278) at java.util.concurrent.FutureTask$Sync.innerSetException(FutureTask.java:273) at java.util.concurrent.FutureTask.setException(FutureTask.java:124) at java.util.concurrent.FutureTask$Sync.innerRun(FutureTask.java:307) at java.util.concurrent.FutureTask.run(FutureTask.java:137) at android.os.AsyncTask$SerialExecutor$1.run(AsyncTask.java:208) at java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1076) at java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:569) at java.lang.Thread.run(Thread.java:856) Caused by: java.lang.NullPointerException at info.androidhive.slidingmenu.RegistrationForm$AttemptLogin.doInBackground(RegistrationForm.java:435) at info.androidhive.slidingmenu.RegistrationForm$AttemptLogin.doInBackground(RegistrationForm.java:1) at android.os.AsyncTask$2.call(AsyncTask.java:264) at java.util.concurrent.FutureTask$Sync.innerRun(FutureTask.java:305) ... 5 more Activity info.androidhive.slidingmenu.RegistrationForm has leaked window com.android.internal.policy.impl.PhoneWindow$DecorView@41888e70 that was originally added here android.view.WindowLeaked: Activity info.androidhive.slidingmenu.RegistrationForm has leaked window com.android.internal.policy.impl.PhoneWindow$DecorView@41888e70 that was originally added here at android.view.ViewRootImpl.<init>(ViewRootImpl.java:343) at android.view.WindowManagerImpl.addView(WindowManagerImpl.java:245) at android.view.WindowManagerImpl.addView(WindowManagerImpl.java:193) at android.view.WindowManagerImpl$CompatModeWrapper.addView(WindowManagerImpl.java:118) at android.view.Window$LocalWindowManager.addView(Window.java:537) at android.app.Dialog.show(Dialog.java:274) at info.androidhive.slidingmenu.RegistrationForm$AttemptLogin.onPreExecute(RegistrationForm.java:375) at android.os.AsyncTask.executeOnExecutor(AsyncTask.java:561) at android.os.AsyncTask.execute(AsyncTask.java:511) at info.androidhive.slidingmenu.RegistrationForm.onClick(RegistrationForm.java:291) at android.view.View.performClick(View.java:3480) at android.view.View$PerformClick.run(View.java:13983) at android.os.Handler.handleCallback(Handler.java:605) at android.os.Handler.dispatchMessage(Handler.java:92) at android.os.Looper.loop(Looper.java:137) at android.app.ActivityThread.main(ActivityThread.java:4340) at java.lang.reflect.Method.invokeNative(Native Method) at java.lang.reflect.Method.invoke(Method.java:511) at com.android.internal.os.ZygoteInit$MethodAndArgsCaller.run(ZygoteInit.java:784) at com.android.internal.os.ZygoteInit.main(ZygoteInit.java:551) at dalvik.system.NativeStart.main(Native Method)
check my code here How to send data from android to php server using json?
解决方案This part of the logcat :
Error Parsing dataorg.json.JSONException: Value
<br
of type java.lang.String cannotAll most like you hit a break tag
<br />
. The issue is that you are not getting anyJSON
data.You need to investigate why, possible reasons:
- Network issue
- Permission issue
- Invalid response
class AttemptLogin extends AsyncTask<String, String, String> { boolean failure = false; @Override protected void onPreExecute() { super.onPreExecute(); .... } @SuppressWarnings("unused") @Override protected String doInBackground(String...args) { ..... try { //Building Parameters ..... json = jsonParser.makeHttpRequest ( LOGIN_URL, "POST", params); Log.d("Request attempt", json.toString()); JSONObject jobj = new JSONObject(json.toString()); return jobj; }catch (JSONException e) { e.printStackTrace(); } return null; } protected void onPostExecute(JSONObject jobj) { pDialog.dismiss(); try { if(jobj.getString(TAG_SUCCESS)){ final String msg = jobj.getString("msg"); Toast.makeText( getApplicationContext(),msg, Toast.LENGTH_LONG) .show(); }else{ System.out.println("FAIL !!"); } }catch (JSONException e) { e.printStackTrace(); } } }
这篇关于如何解决价值与LT; java.lang.String类型的BR不能转换为JSONObject的?的文章就介绍到这了,希望我们推荐的答案对大家有所帮助,也希望大家多多支持IT屋!