-
사용자관리설정에서 이메일, 성별, 연령대를 동의선택으로 가져오게 설정해놨습니다.
필수로는 설정이 안되나봅니다. -
LoginActivity에서 세션콜백으로 UserManagement.getInstance().me()을 실행합니다.
-
onSuccess()에서 MainActivity로 넘거갑니다.
-
serManagement.getInstance().me()를 재실행해서 has_signed_up 을 확인합니다.
-
첫로그인일때는 FALSE여서 UserManagement.getInstance().requestSignup()을 실행합니다.
private void onClickSignup() {
UserManagement.getInstance().requestSignup(new ApiResponseCallback() {
@Override
public void onSuccess(Long result) {
Log.i(“Test”, “MainActivity onSuccess”);
requestMe();
}@Override public void onSessionClosed(final ErrorResult errorResult) { Log.i("Test", "MainActivity onSessionClosed"); } @Override public void onFailure(final ErrorResult errorResult) { Log.i("Test", "MainActivity onFailure ErrorResult = " + errorResult); } @Override public void onNotSignedUp() { Log.i("Test", "MainActivity onNotSignedUp"); } }, null);
}
-
사용자 정보를 업데이트 하기위해 requestUpdateProfile()를 실행합니다.
Map<String, String> properties = new HashMap<>();
properties.put(“nickname”, “카카오”);
properties.put(“age”, “남”);UserManagement.getInstance().requestUpdateProfile(new ApiResponseCallback<Long>() { @Override public void onSuccess(Long result) { Log.i("Test", "MainActivity onSuccess"); } @Override public void onSessionClosed(final ErrorResult errorResult) { Log.i("Test", "MainActivity onSessionClosed"); } @Override public void onFailure(final ErrorResult errorResult) { Log.i("Test", "MainActivity onFailure ErrorResult = " + errorResult); } @Override public void onNotSignedUp() { Log.i("Test", "MainActivity onNotSignedUp"); } }, properties);
ErrorResult{errorCode=-201, errorMessage=‘user property not found ([email , gender, age] for appId=209200)’, exception=‘com.kakao.network.response.ApiResponseStatusError: user property not found ([email , gender, age] for appId=209200)’}
nickname을 제외한 property를 넘길 수가 없습니다.
제가 잘못알고 잇는 부분이 있으니 제대로 결과를 못받는것 같은데 어느 부분일까요 ㅠ