空对象引用上的方法boolean java.lang.String.equals(java.lang.Object)'

时间:2018-09-13 11:25:20

标签: android

 if(response.isSuccessful())
               {
                   if(response.body().getSuccess().equalsIgnoreCase("1")||response.body().getSuccess().equalsIgnoreCase("2"))
                   {


                       String message = response.body().getMessage();
                       // Snackbar.make(parentView, message, Snackbar.LENGTH_SHORT).show();
                       Toast.makeText(Login.this,message,Toast.LENGTH_SHORT).show();
                       Intent i = new Intent(Login.this, DashBoard.class);
                       startActivity(i);
                       finish();
                       overridePendingTransition(R.anim.enter_from_right, R.anim.exit_out_right);
                   }
                   else if(response.body().getSuccess().equalsIgnoreCase("0"))
                   {
                       String message = response.body().getMessage();
                       // Snackbar.make(parentView, message, Snackbar.LENGTH_SHORT).show();
                       Toast.makeText(Login.this,message,Toast.LENGTH_SHORT).show();
                   }else {
                       Toast.makeText(Login.this, getString(R.string.unexpected_response), Toast.LENGTH_SHORT).show();
                   }

               }else {
                   Toast.makeText(Login.this, response.message(), Toast.LENGTH_LONG).show();
               }
           }

3 个答案:

答案 0 :(得分:0)

可能response.body().getSuccess()在这里返回null

更改您的逻辑。

 if(response.isSuccessful() && response.body().getSuccess() != null)
               {
..

编辑

以及根据安迪的答案

Toast.makeText(Login.this, response.message(), Toast.LENGTH_LONG).show();

如果为null,也可能导致异常。

答案 1 :(得分:0)

像这样更改您的相等条件,并且异常将自动处理

 if (response.isSuccessful()) {
        if ("1".equalsIgnoreCase(response.body().getSuccess()) || "2".equalsIgnoreCase(response.body().getSuccess())) {
            //do your work
        } else if ("0".equalsIgnoreCase(response.body().getSuccess())) {
            //do your work
        }else {
            //do your work
         // Toast.makeText(Login.this, getString(R.string.unexpected_response), Toast.LENGTH_SHORT).show();
        }
    } else {
        //do your work
    }

希望它对您有帮助。

答案 2 :(得分:0)

此代码在“未成功”时执行,这可能意味着您向烤面包机传递了null:

}else {
  Toast.makeText(Login.this, response.message(), Toast.LENGTH_LONG).show();
}