Les utilisateurs qui viennent de télécharger votre application Android seront beaucoup plus heureux si vous leur permettez de se connecter à l’aide d’un service de réseau social populaire au lieu de leur demander de remplir un formulaire d’inscription. Dans cette astuce rapide, vous allez découvrir comment permettre à vos utilisateurs de se connecter à votre application avec leurs comptes Twitter.
Conditions préalables
Pour suivre, vous devez avoir la configuration suivante:
- la dernière version de Studio Android
- une Twitter Compte
- une en tissu Compte
Fabric est le cadre de Twitter pour le développement d’applications mobiles. Il fournit un ensemble d’outils pour rendre le développement mobile plus facile et plus rationalisé. Cela inclut les rapports de plantage, la distribution bêta, l’analyse mobile, etc. Si vous n’avez pas encore de compte Fabric, vous devrez demander une invitation et attendre un jour ou deux.
1. Enregistrez votre application
Toute application qui doit interagir avec les API de Twitter doit être enregistrée à l’aide du Gestion des applications Twitter console. Utilisez votre compte Twitter pour vous connecter.
Clique sur le Créer une nouvelle application et remplissez le formulaire. Entrez des valeurs significatives dans le Nom et La description champs, car ils seront affichés aux utilisateurs de votre application. Nous n’aurons pas besoin du Site Internet et URL de rappel pour ce didacticiel, mais vous ne pouvez pas les laisser vides. Si vous avez votre propre site Web, vous pouvez utiliser son adresse ici. Sinon, vous pouvez simplement taper http://example.com.


Acceptez l’accord et soumettez le formulaire. Votre application est maintenant enregistrée.
Clique sur le Clés et jetons d’accès onglet et notez votre La clé du consommateur et Secret du consommateur. Nous en aurons besoin plus tard.


2. Installer Fabric pour Android Studio
Connectez-vous à votre compte Fabric et téléchargez le plugin pour Android Studio.


Une fois le téléchargement terminé, démarrez Android Studio et sélectionnez Configurer> Plugins.


Clique sur le Installer le plugin à partir du disque et sélectionnez le fichier que vous venez de télécharger. Une fois installé, vous devriez pouvoir voir Fabric pour Android Studio dans la liste des plugins.


3. Utilisez le plugin Fabric
Créez un nouveau projet (ou ouvrez-en un existant) et cliquez sur l’icône Fabric. Connectez-vous à votre compte Fabric et sélectionnez Twitter pour installer Twitter Kit pour votre projet.


Comme nous n’utiliserons Twitter Kit que pour nous connecter à Twitter, choisissez Connectez-vous avec Twitter dans l’écran suivant.


Enfin, vous verrez les modifications de code que vous devez apporter à votre projet. Tout d’abord, vous verrez les modifications que vous devez apporter dans le build.grade fichier. Vous pouvez simplement copier et coller ces modifications.


Ensuite, lorsque vous choisissez l’onglet pour AndroidManifest.xml, vous verrez que deux ajouts doivent être faits:
- Pour interagir avec les serveurs de Twitter, le
android.permission.INTERNET
l’autorisation doit être demandée. - La clé API générée automatiquement doit être mentionnée sous la forme de
meta-data
. Encore une fois, vous pouvez simplement copier et coller le code affiché par le plugin.


Vous verrez qu’un nouveau fichier nommé fabric.properties a été créé dans votre app annuaire. Ouvrez le fichier et ajoutez-y la même clé API comme indiqué ci-dessous.
apiKey=21212qu6q5izhayqwywqwz1ghyuiopqwq211wqqwq12341
4. Créer une activité
Dans ce tutoriel, nous allons créer un très simple Activity
qui affiche un bouton de connexion et un TextView
qui affiche le résultat de la tentative de connexion.
Étape 1: définir la disposition
Créez un nouveau format XML appelé login_activity.xml dans le res / layout annuaire. Ajouter un TwitterLoginButton
à l’aide de l’extrait de code suivant:
<com.twitter.sdk.android.core.identity.TwitterLoginButton android:id="@+id/twitter_login_button" android:layout_width="wrap_content" android:layout_height="wrap_content" android:layout_centerInParent="true"/>
Ensuite, ajoutez un TextView
pour afficher les résultats de la tentative de connexion.
<TextView android:layout_width="wrap_content" android:layout_height="wrap_content" android:id="@+id/status" android:layout_alignParentTop="true" android:layout_alignParentLeft="true" android:textSize="20sp" />
Étape 2: créer la classe
Créez une nouvelle classe Java qui étend le Activity
classe et écraser sa onCreate
méthode. Utilisation setContentView
pour utiliser le format XML que nous avons créé à l’étape précédente.
Récupérez les widgets définis dans le XML à l’aide du findViewById
méthode. Vous pouvez laisser le TextView
vide, mais je vais utiliser le setText
méthode et afficher un String
ça dit “Statut: Prêt”.
À ce stade, votre classe doit contenir le code suivant:
public class LoginActivity extends Activity { private TwitterLoginButton loginButton; private TextView status; @Override protected void onCreate(Bundle savedInstanceState) { super.onCreate(savedInstanceState); setContentView(R.layout.login_activity); loginButton = (TwitterLoginButton)findViewById(R.id.twitter_login_button); status = (TextView)findViewById(R.id.status); status.setText("Status: Ready"); } }
Lorsque vous cliquez à nouveau sur l’icône du plugin et cliquez sur l’onglet pour Commencer l’activité, vous trouverez le code qui doit être ajouté pour initialiser Fabric. Copiez et collez ce code dans le onCreate
méthode, avant l’appel à setContentView
.
TwitterAuthConfig authConfig = new TwitterAuthConfig(TWITTER_KEY, TWITTER_SECRET); Fabric.with(this, new Twitter(authConfig));
Le plugin génère ses propres valeurs pour la clé du consommateur et le secret du consommateur. Bien que vous puissiez utiliser ces valeurs, nous utiliserons les valeurs que nous avons obtenues lorsque nous avons enregistré notre application sur Twitter. Gestion des applications console plus tôt. Le code pour utiliser ces valeurs doit ressembler à ceci:
private static final String TWITTER_KEY = "qweYTYiqer5tTeqiq1"; private static final String TWITTER_SECRET = "wuquUUwy1626661719qw8wwWQHEJQ";
Cliquez sur le bouton de connexion pour démarrer un Activity
qui renvoie un résultat. Pour capturer ce résultat, remplacez le onActivityResult
méthode de la Activity
et transmettez les arguments reçus au onActivityResult
méthode du bouton:
@Override protected void onActivityResult(int requestCode, int resultCode, Intent data) { super.onActivityResult(requestCode, resultCode, data); loginButton.onActivityResult(requestCode, resultCode, data); }
Pour traiter le résultat de la tentative de connexion, vous devez créer un Callback
. Créez une classe interne nommée LoginHandler qui s’étend Callback<TwitterSession>
, et remplace toutes ses méthodes abstraites.
Les noms des méthodes de cette classe sont très intuitifs. En cas de connexion réussie, le success
méthode est appelée. Sinon, le failure
méthode est appelée.
private class LoginHandler extends Callback<TwitterSession> { @Override public void success(Result<TwitterSession> twitterSessionResult) { } @Override public void failure(TwitterException e) { } }
Pour le TwitterLoginButton
pour utiliser ce rappel personnalisé, dans le onCreate
méthode de la Activity
, passez une instance de LoginHandler
aux boutons setCallback
méthode.
loginButton.setCallback(new LoginHandler());
En cas de tentative de connexion réussie, affichez le nom de l’utilisateur connecté et le jeton d’authentification. Les deux valeurs sont disponibles à partir du data
domaine de Result<TwitterSession>
. Pour obtenir le nom d’utilisateur de l’utilisateur connecté, utilisez getUsername
. De même, pour obtenir le jeton d’authentification, utilisez getAuthToken
. Ajoutez le code suivant au success
méthode:
String output = "Status: " + "Your login was successful " + twitterSessionResult.data.getUserName() + "nAuth Token Received: " + twitterSessionResult.data.getAuthToken().token; status.setText(output);
En cas d’échec de la tentative de connexion, affichez un message indiquant “Échec de la connexion”. Ajoutez ce qui suit au failure
méthode:
status.setText("Status: Login Failed");
Étape 3: mettre à jour le manifeste
Définir les Activity
que vous venez de créer dans le manifeste de votre projet. S’il s’agit de la première de votre application Activity
, créez un filtre d’intention pour qu’il réponde à android.intent.action.MAIN
. Ajoutez le code suivant à votre fichier:
<activity android:name=".LoginActivity"> <intent-filter> <action android:name="android.intent.action.MAIN"/> <category android:name="android.intent.category.LAUNCHER"/> </intent-filter> </activity>
5. Construire et exécuter
Votre application est maintenant prête à être exécutée. Lorsque vous le construisez et l’exécutez sur votre appareil Android, vous serez accueilli avec l’écran suivant:


Si vous appuyez sur le bouton de connexion, vous serez redirigé vers Twitter. Notez que le nom et la description de l’application que vous avez spécifiés dans la première étape de ce didacticiel sont affichés sur cette page.


Lorsque vous appuyez sur le Autoriser l’App , la tentative de connexion est considérée comme réussie et vous êtes redirigé vers votre application. Vous verrez que le TextView
est mis à jour pour afficher le nom d’utilisateur et le jeton d’authentification.


Conclusion
Dans cette astuce rapide, vous avez appris comment permettre aux utilisateurs de votre application de se connecter à l’aide de Twitter. Vous avez également appris comment installer le plugin Fabric pour Android Studio et comment l’utiliser pour ajouter Twitter Kit à votre projet. Pour en savoir plus sur Fabric et Twitter Kit, reportez-vous au Twitter Kit pour la documentation Android.
Laisser un commentaire