public class OobModule extends Object
Modifier and Type | Method and Description |
---|---|
static OobModule |
create()
Create OobModule object.
|
OobManager |
createOobManager(URL oobUrl,
String domain,
String applicationId,
byte[] rsaExponent,
byte[] rsaModulus)
Create OobManager object.
|
OobManager |
createOobManager(URL oobUrl,
String domain,
String applicationId,
RSAPublicKey publicKey)
Create OobManager object.
|
Set<String> |
getClientIDs(String applicationId)
Retrieve the Set of clientIds for given application ID
|
boolean |
isMigrationNeededForAndroidQ(String applicationId)
Check if the migration is needed for Android Q with the given application identifier.
|
void |
migrateForAndroidQ(String applicationId)
Migrate the old data to be compatible with Android Q.
|
boolean |
reset(String applicationId)
Cleanup the data associated with Oob module.
|
public static OobModule create()
public OobManager createOobManager(URL oobUrl, String domain, String applicationId, byte[] rsaExponent, byte[] rsaModulus)
oobUrl
- the URL of the OOB server.domain
- the domain to use for requests to the OOB server. It must be compliant with server configuration on back-end side.applicationId
- the application identifier to use for requests to the OOB server.rsaExponent
- the RSA public exponent to use to communicate with the OOB server.rsaModulus
- the RSA modules to use to communicate with the OOB server.OobManager
.public OobManager createOobManager(URL oobUrl, String domain, String applicationId, RSAPublicKey publicKey)
oobUrl
- the URL of the OOB server.domain
- the domain to use for requests to the OOB server. It must be compliant with server configuration on back-end side.applicationId
- the application identifier to use for requests to the OOB server.publicKey
- The RSA public key to communicate with OOB server.OobManager
.public boolean reset(String applicationId)
applicationId
- the applicationId.IdpCore.reset()
public boolean isMigrationNeededForAndroidQ(String applicationId)
migrateForAndroidQ(String)
.
NOTE: This API should be called during the application startup to make sure that the permission popup, if any, will not interfere with other business flow.
For more information on Android Q privacy changes, refer to https://developer.android.com/preview/privacy/data-identifiers#device-ids
applicationId
- The application ID.migrateForAndroidQ(String)
public void migrateForAndroidQ(String applicationId) throws OobException
For more information on Android Q privacy changes, refer to https://developer.android.com/preview/privacy/data-identifiers#device-ids
applicationId
- The application ID.OobException
- When database operation failed.isMigrationNeededForAndroidQ(String)
public Set<String> getClientIDs(String applicationId) throws OobException
applicationId
- The application ID.OobException
- When the SDK is not able to retrieve the clientIDs. It can be caused by Database IO exception, passwordManager not logged in, or invalid DeviceFingerprint.