Ошибка в разборе Json? - PullRequest
1 голос
/ 05 мая 2011

Я новичок в Android, поэтому я не ошибаюсь во всех ошибках. Вот ошибка, которую я получаю (блок недостижимого для JSONException блока. Это исключение никогда не выдается из тела оператора try) в моем catch пункт при разборе JSON.Может ли кто-нибудь, пожалуйста, скажите, что мне делать. Спасибо здесь мой код:

if (usernameEditText == null || passwordEditText == null)
{
  Toast.makeText(HelloAndroid.this, "Please enter your username & password",Toast.LENGTH_SHORT).show();
}
else
{
  // display the username and the password in string format
  try 
  {
    showBusyCursor(true);
    progress = ProgressDialog.show(this,"Please wait...", "Login in process", true);

    Log.i(DEB_TAG, "Username: " + sUserName + "nPassword: " + sPassword);
    Log.i(DEB_TAG, "Requesting to "+address);

    JSONObject json = RestJsonClient.connect(address);
  }
  catch (JSONException e) 
  {
    e.printStackTrace();
    showBusyCursor(false);
  }
}

Ответы [ 3 ]

1 голос
/ 05 мая 2011

Ваша ошибка означает, что
1. либо код в вашем блоке try никогда не выдает JSONException,
2. или JSONException перехватывается перед блоком catch (JSONException e), поэтому ваш блок try-catch может выглядеть следующим образом:

try {
    [...]
}
catch (Exception e) {
    // some code
}
catch (JSONException e) {
    //some other code...
}

Здесь блок catch (Exception e) вызывается до JSONException, а поскольку JSONException расширяет класс Exception, он никогда не будет введен.

В этом случае вам следует изменить порядок блоков захвата, и вы сможете обрабатывать два типа исключений по-разному.

0 голосов
/ 05 мая 2011

У меня есть полная реализация catch для разбора строки JSON: http://pastebin.com/5ZYw5wND

0 голосов
/ 05 мая 2011

Используйте эту ссылку, чтобы получить более полное представление о том, как выполнять анализ JSON в Android:

http://www.androidcompetencycenter.com/2009/10/json-parsing-in-android/

Plus предоставьте журнал вашей ошибки, которую вы получаете, и код, который выИспользуем.Без журнала ошибок и кода никто не может сказать, что не так.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...