When a client attempts to connect to a host (like a relay server), this connection is authenticated with a basic authentication challenge.To setup a HTTP basic authentication, the application registers a listener with the OData SDK. If the IODPHTTPAuthChallengeListener is not registered, an HTTP_AUTH_FAILURE error is returned when a challenge is received.
public static void setODPHTTPAuthChallengeListener(ODPClientListeners.IODPHTTPAuthChallengeListener listener) throws ODPException;
ODPUserManager.enableHTTPS(true); ODPUserManager.setODPHTTPAuthChallengeListener(this);
public class UserRegistration implements IODPHTTPAuthChallengeListener
{
      .
      .
     public void startUserRegistration(){
         ODPUserManager.initialize(appID);
         ODPUserManager.setConnectionProfile(serverIP,serverPort,farmID);
         ODPUserManager.enableHTTPS(true);
         ODPUserManager.setODPHTTPAuthChallengeListener(this);
         ODPUserManager.registerUser(username,activationCode,false);
}
// callback method for HTTP authentication 401 challenge 
public ODPHTTPAuthChallengeCredentials getCredentials(String sHostName,String oldUserName, String realm) {
// query the user for credentials, username and password for sHostName
		.
		.
		.
// return the credentials in ODPHTTPAuthChallengeCredentials structure.
			.
return new ODPHTTPAuthChallengeCredentials(username,password);
			
		}