Vidéo: CREER UNE APPLICATION ANDROID #3 ? ONCLICK & NOUVELLE ACTIVITE 2025
Il existe plusieurs étapes pour développer une application Twitter qui fonctionnera sur les appareils Android. Une chose que vous devrez aborder est l'activité principale de l'application. Le code suivant contient le code Java de l'application Twitter.
package com. allmycode. gazouillement; importer Android. app. Activité; importer Android. os. AsyncTask; importer Android. os. Paquet; importer Android. texte. Modifiable; importer Android. texte. TextWatcher; importer Android. texte. méthode. ScrollingMovementMethod; importer Android. vue. Vue; importer Android. widget. Éditer le texte; importer Android. widget. Affichage; importer Java. util. Liste; importer twitter4j. Gazouillement; importer twitter4j. TwitterException; importer twitter4j. TwitterFactory; importer twitter4j. conf. ConfigurationBuilder; classe publique MainActivity extends Activity {TextView textViewCountChars, textViewTimeline; EditText editTextTweet, editTextUsername; Twitter twitter; @Override protégé void onCreate (Bundle savedInstanceState) {super. onCreate (savedInstanceState); setContentView (disposition R., activité_main); editTextTweet = (EditText) findViewById (id de R. editTextTweet); editTextTweet. addTextChangedListener (nouveau MyTextWatcher ()); textViewCountChars = (TextView) findViewById (id de R. textViewCountChars); editTextUsername = (EditText) findViewById (id de R. editTextUsername); textViewTimeline = (TextView) findViewById (id de R. textViewTimeline); textViewTimeline. setMovementMethod (nouveau ScrollingMovementMethod ()); ConfigurationBuilder builder = nouveau ConfigurationBuilder (); constructeur. setOAuthConsumerKey ("01qedaqsdtdemrVJIkU1dg"). setOAuthConsumerSecret ("TudeMgXgh37Ivq173SNWnRIhI"). setOAuthAccessToken ("1385541-ueSEFeFgJ8vUpfy6LBv6"). setOAuthAccessTokenSecret ("G2FXeXYLSHI7XlVdMsS2e"); Usine TwitterFactory = nouveau TwitterFactory (constructeur, build ()); twitter = usine. getInstance ();} // Bouton click listeners public void onTweetButtonClick (Voir la vue) {new MyAsyncTaskTweet (). execute (editTextTweet. getText (). toString ());} public void onTimelineButtonClick (Voir la vue) {new MyAsyncTaskTimeline (). execute (editTextUsername.getText (). toString ());} // Compter les caractères dans la classe de champ Tweet MyTextWatcher implémente TextWatcher {@Overide public void afterTextChanged (Modifiable s) {textViewCountChars.setText ("" + editTextTweet. getText (). length ()); @Override public void beforeTextChanged (CharSequence s, int début, nombre d'int, int après) {} @Ouverture public void onTextChanged (CharSequence s, int start, int before, int count) {}} // La classe publique des classes AsyncTask MyAsyncTaskTweet extends AsyncTask {@Override protected Chaîne doInBackground (String … tweet) {String result = ""; essayez {twitter. updateStatus (tweet [0]); résultat = getResources (). getString (chaîne de caractères R. succès);} catch (TwitterException twitterException) {result = getResources (). getString (chaîne R., twitter_failure);} catch (Exception e) {resultat = getResources (). getString (chaîne R. general_failure);} résultat de retour;} @Override protected void onPostExecute (résultat de chaîne) {editTextTweet. setHint (résultat); editTextTweet. setText ("");}} Classe publique MyAsyncTaskTimeline extends AsyncTask {@Override protected Chaîne doInBackground (String … nom d'utilisateur) {String result = new String (""); Liste des statuts = null; essayez {statuses = twitter. getUserTimeline (nom d'utilisateur [0]);} catch (TwitterException twitterException) {result = getResources (). getString (chaîne R., twitter_failure);} catch (Exception e) {resultat = getResources (). getString (chaîne R. general_failure);} for (twitter4j Statut d'état: statuts) {resultat + = statut. getText (); résultat + = "n";} résultat de retour;} @Override protected void onPostExecute (résultat de la chaîne) {editTextUsername. Définir le texte(""); textViewTimeline. setText (résultat);}}}
Les protocoles réseau de Twitter exigent que l'appareil qui exécute la plupart des applications soit réglé à l'heure correcte. Cela pourrait vous causer beaucoup de problèmes lors de l'exécution de l'application sur les émulateurs. Si vous rencontrez ce problème, le message d'erreur provenant de Twitter (indiquant généralement un défi d'authentification nul) n'est pas utile. Ainsi, vous pouvez éviter beaucoup de tracas en évitant les émulateurs lorsque vous testez ce code. Réglez simplement votre téléphone ou votre tablette pour obtenir automatiquement l'heure du réseau. Ensuite, exécutez l'application sur cet appareil.
Lorsque vous exécutez l'application, vous voyez deux zones. Une zone contient un bouton Tweet; l'autre zone contient un bouton Timeline.
Dans cette image, le texte des deux champs de texte est gris clair. Cela arrive parce que les attributs android: hint sont utilisés dans le code. Un indice est un groupe de caractères qui n'apparaissent que lorsqu'un champ de texte est vide. Lorsque l'utilisateur clique dans le champ de texte ou tape du texte dans le champ de texte, l'indicateur disparaît.
Tapez un tweet dans le champ de texte en haut; puis appuyez sur le bouton Tweet.
Si votre tentative de tweeter est réussie, le message Succès! remplace le tweet dans le champ de texte.
Si, pour une raison ou une autre, votre tweet ne peut pas être publié, un message tel que "Échec du tweet" remplace le tweet dans le champ de texte.
Ensuite, tapez un nom d'utilisateur dans le champ de texte inférieur et cliquez sur Chronologie.Si tout se passe bien, une liste des tweets les plus récents de l'utilisateur apparaît sous le bouton Chronologie. Vous pouvez faire défiler la liste pour voir plus de tweets de l'utilisateur.
