2016-04-23 11 views
0

このチュートリアルはhttps://www.youtube.com/watch?v=mdAXqQoADt8(最後の部分)にあります。私は自分のローカルサーバーを参照している間、すべて正常に動作しています。オンラインサーバーからのjsonレスポンスが得られません

私は同じ方法で動作するかどうかをテストするためにオンラインサーバー/データベースに切り替えました。また、ここでは、jsonの応答を除いて、すべてが正常に動作しています。onPostExecuteです。私はもう登録やログインからメッセージを受け取っていません。私は本当にこの問題を解決する方法を理解することができず、オンラインサーバ/データベースに切り替えると同じように動作しない理由を理解できません。

ここの誰でも私に役立つことを願っています。私は下のコードをいくつか投稿しますが、誰かがチュートリアル全体をやっていなくても分かるかもしれません。

ありがとうございました!

@Override 
    protected void onPostExecute(String json) { 

     try { 
      Log.d("JSON-String",json+""); 
      progressDialog.dismiss(); 
      JSONObject jsonObject = new JSONObject(json); 
      JSONArray jsonArray = jsonObject.getJSONArray("server_response"); 
      JSONObject JO = jsonArray.getJSONObject(0); 
      String code = JO.getString("code"); 
      String message = JO.getString("message"); 
      if (code.equals("reg_true")) 
      { 
       showDialog("Registrierung erfolgt.", message, code); 
      } 
      else if (code.equals("reg_false")) 
      { 
       showDialog("Registrierung fehlgeschlagen", message, code); 
      } 

      else if(code.equals("login_true")) 
      { 
       Intent intent = new Intent(activity, Talkscreen.class);          //SPÄTER WIEDER RAUSNEHMEN 
       activity.startActivity(intent); 
       activity.finish(); 
      } 
      else if (code.equals("login_false")) 
      { 
       showDialog("Login fehlgeschlagen", message,code); 
      } 
     } catch (JSONException e) { 
      e.printStackTrace(); 
     } 


    } 
+0

onPostExecute'それは例外的なことですか?それとも出力になっているの?上記の関数でjson文字列をログに記録しようとしましたか? –

+0

@ Alokだから私はrelativlyアンドロイドプログラミングの新しいです。私はそれが例外になることはないと私は出力することは何も得ていないとあなたに伝えることができます。上記の関数でjson文字列を記録していれば、私は自分のコードを更新して自分で調べることができます。 – Ron

+0

使用しているすべてのIDEでデバッグログが表示されますか?ログの表示方法がわからない場合は、参照:http://developer.android.com/tools/debugging/debugging-studio.html#systemLogView –

答えて

1

サーバーから間違ったJSON文字列が表示されているようです。エラー上記

2905-2905/com.appmac.ron.testapp W/System.err: org.json.JSONException: Value <h3>DB< of type java.lang.String cannot be converted to JSONObject 
04-23 12:35:53.172 2905-2905/com.appmac.ron.testapp W/System.err:  at org.json.JSON.typeMismatch(JSON.java:111) 
04-23 12:35:53.172 2905-2905/com.appmac.ron.testapp W/System.err:  at org.json.JSONObject.<init>(JSONObject.java:160) 
04-23 12:35:53.172 2905-2905/com.appmac.ron.testapp W/System.err:  at org.json.JSONObject.<init>(JSONObject.java:173) 
04-23 12:35:53.172 2905-2905/com.appmac.ron.testapp W/System.err:  at com.appmac.ron.testapp.ServerKlassen.BackgroundTask.onPostExecute(BackgroundTask.java:172) 
04-23 12:35:53.172 2905-2905/com.appmac.ron.testapp W/System.err:  at com.appmac.ron.testapp.ServerKlassen.BackgroundTask.onPostExecute(BackgroundTask.java:39) 
04-23 12:35:53.172 2905-2905/com.appmac.ron.testapp W/System.err:  at android.os.AsyncTask.finish(AsyncTask.java:651) 
04-23 12:35:53.172 2905-2905/com.appmac.ron.testapp W/System.err:  at android.os.AsyncTask.-wrap1(AsyncTask.java) 
04-23 12:35:53.172 2905-2905/com.appmac.ron.testapp W/System.err:  at android.os.AsyncTask$InternalHandler.handleMessage(AsyncTask.java:668) 
04-23 12:35:53.172 2905-2905/com.appmac.ron.testapp W/System.err:  at android.os.Handler.dispatchMessage(Handler.java:102) 
04-23 12:35:53.172 2905-2905/com.appmac.ron.testapp W/System.err:  at android.os.Looper.loop(Looper.java:148) 
04-23 12:35:53.172 2905-2905/com.appmac.ron.testapp W/System.err:  at android.app.ActivityThread.main(ActivityThread.java:5417) 
04-23 12:35:53.172 2905-2905/com.appmac.ron.testapp W/System.err:  at java.lang.reflect.Method.invoke(Native Method) 
04-23 12:35:53.172 2905-2905/com.appmac.ron.testapp W/System.err:  at com.android.internal.os.ZygoteInit$MethodAndArgsCaller.run(ZygoteInit.java:726) 
04-23 12:35:53.172 2905-2905/com.appmac.ron.testapp W/System.err:  at com.android.internal.os.ZygoteInit.main(ZygoteInit.java:616) 

文字列はJSONオブジェクトに変換することができなかったことを示しています。

バグがないかサーバーコードを確認してください。

+0

あなたが言ったように、 'Log.d( "JSON-String"、json + "");'私のコードに問題を解決!どうもありがとう! – Ron

関連する問題