Android:Retrofit Response似乎会触发IF语句,无论如何

时间:2016-01-24 06:55:53

标签: android string if-statement callback retrofit

所以我可以调用我的API并给出回复。

现在,如果我的回答不等于" 0",那么它应该执行onUserFailure()。

如果它等于" 0"然后它应该触发onUserSuccess()。

这是我的代码:

destinyAPI.getMembershipId(user, new Callback<MembershipIdResponse>() {

        @Override
        public void onResponse(Response<MembershipIdResponse> response, Retrofit retrofit) {

            String id = response.body().getResponse();

            Log.d("API_CALL", "MembershipId Response! " + "(ID = " + id + ")");

            if (id != "0") {

                membershipId = id;
                onUserSuccess();

            } else {

                onUserFailure(false);

            }
        }

        @Override
        public void onFailure(Throwable t) {

            onUserFailure(true);
            Log.d("API_CALL", "MembershipId Failure.");
            t.printStackTrace();

        }
    });

这是我的日志:

  

D / API_CALL:MembershipId响应! (ID = 0)

除非每次触发onUserSuccess()并启动Intent。

我很难过。

1 个答案:

答案 0 :(得分:0)

正确:

string1.equalsIgnoreCase("COMPARE_STRING")

不正确的

string1 == "COMPARE_STRING"

当我问这个问题时,它就打击了我。