public final class SinchVerification
extends java.lang.Object
// Create a configuration
Config config = SinchVerification.config().applicationKey("your-app-key").context(getApplicationContext()).build();
// Create the verification process listener
VerificationListener listener = new VerificationListener() {
@Override
public void onInitiated(InitiationResult result) {
// Update UI here if needed to show verification progress.
}
@Override
public void onInitiationFailed(Exception e) {
if (e instanceof InvalidInputException) {
// Incorrect number provided, ask the user to input number again.
} else if (e instanceof ServiceErrorException) {
// Another service error, please report the error message to the developers.
} else {
// Other system error.
}
}
@Override
public void onVerified() {
// Update UI for the successful case here.
}
@Override
public void onVerificationFailed(Exception e) {
if (e instanceof InvalidInputException) {
// Incorrect number or code provided, ask the user to input number again.
} else if (e instanceof CodeInterceptionException) {
// Intercepting the verification code automatically failed, try to verify manually.
verification.verify(userTypedCode);
} else if (e instanceof IncorrectCodeException) {
// The verification code provided was incorrect. Ask the user to type it again.
verification.verify(userTypedCode);
} else if (e instanceof ServiceErrorException) {
// Another service error, please report the error message to the developers.
} else {
// Other system error.
}
}
}
// Create sms verification
Verification verification = SinchVerification.createSmsVerification(config, phoneNumber, listener);
// Or create a flash call verification
Verification verification = SinchVerification.createFlashCallVerification(config, phoneNumber, listener);
// Initiate the verification process.
// If initiation is successful, the callback method onInitiated() will be executed and the verification
// code interceptor will be started automatically. When it receives a call or sms, it will try to call
// verify() with that code and in case of success execute the callback onVerified().
verification.initiate();
Constructor and Description |
---|
SinchVerification() |
Modifier and Type | Method and Description |
---|---|
static ConfigBuilder |
config()
Creates a config builder.
|
static Verification |
createFlashCallVerification(Config config,
java.lang.String number,
java.lang.String custom,
VerificationListener listener)
Creates a flash call verification object.
|
static Verification |
createFlashCallVerification(Config config,
java.lang.String number,
java.lang.String custom,
VerificationListener listener,
boolean allowFallback)
Creates a flash call verification object.
|
static Verification |
createFlashCallVerification(Config config,
java.lang.String number,
VerificationListener listener)
Creates a flash call verification object.
|
static Verification |
createFlashCallVerification(Config config,
java.lang.String number,
VerificationListener listener,
boolean allowFallback)
Creates a flash call verification object.
|
static Verification |
createSmsVerification(Config config,
java.lang.String number,
java.lang.String custom,
java.util.List<java.lang.String> languageTags,
VerificationListener listener)
Creates an sms verification object.
|
static Verification |
createSmsVerification(Config config,
java.lang.String number,
java.lang.String custom,
java.util.List<java.lang.String> languageTags,
VerificationListener listener,
boolean allowFallback)
Creates an sms verification object.
|
static Verification |
createSmsVerification(Config config,
java.lang.String number,
java.lang.String custom,
VerificationListener listener)
Creates an sms verification object.
|
static Verification |
createSmsVerification(Config config,
java.lang.String number,
java.lang.String custom,
VerificationListener listener,
boolean allowFallback)
Creates an sms verification object.
|
static Verification |
createSmsVerification(Config config,
java.lang.String number,
VerificationListener listener)
Creates an sms verification object.
|
static Verification |
createSmsVerification(Config config,
java.lang.String number,
VerificationListener listener,
boolean allowFallback)
Creates an sms verification object.
|
static java.lang.String |
getVersion() |
static void |
setLogger(Logger logger)
Provide an external logger.
|
public static ConfigBuilder config()
ConfigBuilder
object.public static Verification createSmsVerification(Config config, java.lang.String number, VerificationListener listener)
config
- a Config
number
- the number to be verifiedlistener
- a VerificationListener
Verification
object for sms verification.java.lang.IllegalArgumentException
- if number is null or if listener is null.public static Verification createSmsVerification(Config config, java.lang.String number, VerificationListener listener, boolean allowFallback)
config
- a Config
number
- the number to be verifiedlistener
- a VerificationListener
Verification
object for sms verification.java.lang.IllegalArgumentException
- if number is null or if listener is null.public static Verification createSmsVerification(Config config, java.lang.String number, java.lang.String custom, VerificationListener listener)
config
- a Config
number
- the number to be verifiedcustom
- opaque data that will be passed in any callbacks from the Sinch backend to the applications
backendlistener
- a VerificationListener
Verification
object for sms verification.java.lang.IllegalArgumentException
- if number is null or if listener is null.public static Verification createSmsVerification(Config config, java.lang.String number, java.lang.String custom, VerificationListener listener, boolean allowFallback)
config
- a Config
number
- the number to be verifiedcustom
- opaque data that will be passed in any callbacks from the Sinch backend to the applications
backendlistener
- a VerificationListener
Verification
object for sms verification.java.lang.IllegalArgumentException
- if number is null or if listener is null.public static Verification createSmsVerification(Config config, java.lang.String number, java.lang.String custom, java.util.List<java.lang.String> languageTags, VerificationListener listener)
config
- a Config
number
- the number to be verifiedcustom
- opaque data that will be passed in any callbacks from the Sinch backend to the applications
backendlanguageTags
- a list of IETF language tags to be used in sms. See the User Guide for language selection
rules information.listener
- a VerificationListener
Verification
object for sms verification.java.lang.IllegalArgumentException
- if number is null or if listener is null.public static Verification createSmsVerification(Config config, java.lang.String number, java.lang.String custom, java.util.List<java.lang.String> languageTags, VerificationListener listener, boolean allowFallback)
config
- a Config
number
- the number to be verifiedcustom
- opaque data that will be passed in any callbacks from the Sinch backend to the applications
backendlanguageTags
- a list of IETF language tags to be used in sms. See the User Guide for language selection
rules information.listener
- a VerificationListener
Verification
object for sms verification.java.lang.IllegalArgumentException
- if number is null or if listener is null.public static Verification createFlashCallVerification(Config config, java.lang.String number, VerificationListener listener)
config
- a Config
number
- the number to be verifiedlistener
- a VerificationListener
Verification
object for flash call verification.java.lang.IllegalArgumentException
- if number is null or if listener is null.public static Verification createFlashCallVerification(Config config, java.lang.String number, VerificationListener listener, boolean allowFallback)
config
- a Config
number
- the number to be verifiedlistener
- a VerificationListener
Verification
object for flash call verification.java.lang.IllegalArgumentException
- if number is null or if listener is null.public static Verification createFlashCallVerification(Config config, java.lang.String number, java.lang.String custom, VerificationListener listener)
config
- a Config
number
- the number to be verifiedcustom
- opaque data that will be passed in any callbacks from the Sinch backend to the applications
backendlistener
- a VerificationListener
Verification
object for flash call verification.java.lang.IllegalArgumentException
- if number is null or if listener is null.public static Verification createFlashCallVerification(Config config, java.lang.String number, java.lang.String custom, VerificationListener listener, boolean allowFallback)
config
- a Config
number
- the number to be verifiedcustom
- opaque data that will be passed in any callbacks from the Sinch backend to the applications
backendlistener
- a VerificationListener
Verification
object for flash call verification.java.lang.IllegalArgumentException
- if number is null or if listener is null.public static java.lang.String getVersion()
public static void setLogger(Logger logger)
Log
.
Note that a provided logger will be considered to be global, i.e. it will be used by multiple verifications
and must be thread-safe. If it is desired that an external logger should be used, this method should be called
before any verification instances are created as this logger will be considered global.logger
- logger