0

Androidのログインページでは、php webserviceを使用してサーバーデータベースに接続しています。PHPサービスからの応答を文字列に保存しました。応答は、成功または失敗のいずれかになります。しかし、成功も失敗も返さない場合があります。したがって、その時点でヌルポインタ例外が表示されています。以下のように試しましたが、行にヌルポインタ例外が表示されています

if (!response.equals(null) && response.equals("SUCCESS"))

応答が空の場合。この問題を解決するにはどうすればよいですか。この点で私を助けてください。

if (!response.equals(null) && response.equals("SUCCESS")) {
        Intent howis = new Intent(Login.this, Homepage.class);
        startActivity(in);
}
else if (response.equals("FAILED")) {
        new AlertDialog.Builder(Login1.this)
                .setMessage(
                        "Sorry!! Incorrect Username or Password")
                .setCancelable(false).setPositiveButton("OK", null)
                .show();
        password.setText("");
        username.requestFocus();
} else if (response.equals(null)) {
        new AlertDialog.Builder(Login1.this)
            .setMessage("Invalid email or password")
            .setCancelable(false).setPositiveButton("OK", null)
            .show();
        password.setText("");
        username.requestFocus();
} else {
        new AlertDialog.Builder(Login1.this)
            .setMessage("Please Try Again..")
            .setCancelable(false).setPositiveButton("OK", null)
            .show();
        password.setText("");
        username.requestFocus();
}
4

5 に答える 5

2

空の(何も入っていない) 文字列をチェックしている場合、条件は次のようになります。

if (response == null) {

} else if (response != null) {

}

nullのString をチェックしている場合(文字列に値 null が含まれている場合)、条件は次のようになります。

if (response.equals("null")) {

} else {

}
于 2013-05-31T07:37:30.287 に答える
0

使用することもできます

if(TextUtils.isEmpty(response))
{
// response is either null or empty
}

ドキュメントから:

public static boolean isEmpty (CharSequence str)
Returns true if the string is null or 0-length.
于 2013-05-31T07:56:40.163 に答える
0

あなたは単に使用することができます..

if (!response.equals("") && response.equals("SUCCESS"))
{
...
}
于 2013-05-31T07:57:38.600 に答える