Initialisation du kit SDK client Oracle Android dans votre application
Voici ce que vous devez savoir sur l'initialisation du SDK Android dans votre application.
Initialisez le kit SDK client Oracle Android dans votre classe Application
. La section Initialisation du kit SDK décrit les différentes méthodes que vous pouvez utiliser pour initialiser le kit SDK. La documentation JavaDoc incluse dans le kit SDK décrit toutes les classes disponibles.
false
en tant que deuxième paramètre à la fonction de constructeur BotsConfiguration.BotsConfigurationBuilder()
.import android.app.Application;
import oracle.cloud.bots.mobile.core.Bots;
import oracle.cloud.bots.mobile.core.BotsCallback;
import oracle.cloud.bots.mobile.core.BotsConfiguration;
import oracle.cloud.bots.mobile.core.BotsSDKException;
public class YourApplication extends Application {
@Override
public void onCreate() {
super.onCreate();
try {
BotsConfiguration botsConfiguration = new BotsConfiguration.BotsConfigurationBuilder(<SERVER_URI>, false, getApplicationContext()) // Configuration to initialize the SDK
.channelId(<CHANNEL_ID>)
.userId(<USER_ID>)
.build();
Bots.init(this, botsConfiguration, new BotsCallback() { // Initialize the SDK
@Override
public void onSuccess(Response paramResponse) {
// Handle init success
}
@Override
public void onFailure(Response paramResponse) {
// Handle init failure
}
});
} catch (BotsSDKException e) {
// Handle Exceptions thrown by SDK
}
}
}
Si vous vous connectez à un canal avec l'authentification client activée, vous devez apporter des modifications mineures : vous devez transmettre true
en tant que deuxième paramètre à la fonction de constructeur BotsConfiguration.BotsConfigurationBuilder()
, mais également définir la propriété authTokenProvider
avec l'instance de type AuthenticationTokenProvider
qui peut être utilisée pour générer et transmettre le jeton JWT.
AuthenticationTokenProvider
, qui remplace alors la fonction getAuthToken()
pour générer et renvoyer un jeton JWT. Cette fonction est utilisée par le kit SDK pour générer un nouveau jeton lorsqu'il a besoin d'établir une nouvelle connexion et que le jeton existant a expiré. Le code doit ressembler à ce qui suit :import android.app.Application;
import oracle.cloud.bots.mobile.core.AuthenticationTokenProvider;
import oracle.cloud.bots.mobile.core.Bots;
import oracle.cloud.bots.mobile.core.BotsCallback;
import oracle.cloud.bots.mobile.core.BotsConfiguration;
import oracle.cloud.bots.mobile.core.BotsSDKException;
public class YourApplication extends Application {
@Override
public void onCreate() {
super.onCreate();
try {
BotsConfiguration botsConfiguration = new BotsConfiguration.BotsConfigurationBuilder(<SERVER_URI>, true, getApplicationContext()) // Configuration to initialize the SDK
.authTokenProvider(new AuthTokenProvider())
.build();
Bots.init(this, botsConfiguration, new BotsCallback() { // Initialize the SDK
@Override
public void onSuccess(Response paramResponse) {
// Handle init success
}
@Override
public void onFailure(Response paramResponse) {
// Handle init failure
}
});
} catch (BotsSDKException e) {
// Handle Exceptions thrown by SDK
}
}
private class AuthTokenProvider implements AuthenticationTokenProvider {
@Override
public String getAuthToken() {
// Generate a new JWT Token and return
}
}
}
import oracle.cloud.bots.mobile.ui.ConversationActivity;
...
ConversationActivity.show(this);