Hjem Sosiale medier Android App Utvikling: Slik håndterer du Twitter applikasjonens hovedaktivitet - dummies

Android App Utvikling: Slik håndterer du Twitter applikasjonens hovedaktivitet - dummies

Video: 182nd Knowledge Seekers Workshop, Thursday, July 27, 2017 2024

Video: 182nd Knowledge Seekers Workshop, Thursday, July 27, 2017 2024
Anonim

Det er flere stadier å utvikle en Twitter-app som vil fungere på Android-enheter. En ting du må adressere er søknadens hovedaktivitet. Følgende kode inneholder Twitter-appens Java-kode.

pakke com. allmycode. twitter; importere android. app. Aktivitet; importere android. os. AsyncTask; importere android. os. Bunt; importere android. tekst. redigerbar; importere android. tekst. TextWatcher; importere android. tekst. metode. ScrollingMovementMethod; importere android. utsikt. Utsikt; importere android. widget. EditText; importere android. widget. TextView; importer java. util. Liste; importer twitter4j. Twitter; importer twitter4j. TwitterException; importer twitter4j. TwitterFactory; importer twitter4j. conf. ConfigurationBuilder; offentlig klasse MainActivity utvider Aktivitet {TextView textViewCountChars, textViewTimeline; EditText editTextTweet, editTextUsername; Twitter twitter; @Override protected void onCreate (Bundle savedInstanceState) {super. onCreate (savedInstanceState); setContentView (R. layout. activity_main); editTextTweet = (EditText) findViewById (R. id. editTextTweet); editTextTweet. addTextChangedListener (ny MyTextWatcher ()); textViewCountChars = (TextView) findViewById (R. id. textViewCountChars); editTextUsername = (EditText) findViewById (R. id. editTextUsername); textViewTimeline = (TextView) findViewById (R. id. textViewTimeline); textViewTimeline. setMovementMethod (new ScrollingMovementMethod ()); ConfigurationBuilder builder = ny ConfigurationBuilder (); bygger. setOAuthConsumerKey (“01qedaqsdtdemrVJIkU1dg”). setOAuthConsumerSecret (“TudeMgXgh37Ivq173SNWnRIhI”). setOAuthAccessToken (“1385541-ueSEFeFgJ8vUpfy6LBv6”). setOAuthAccessTokenSecret (“G2FXeXYLSHI7XlVdMsS2e”); TwitterFactory fabrikk = ny TwitterFactory (byggmester. Bygge ()); twitter = fabrikk. getInstance ();} // Knapp klikk lyttere offentlig tomgang onTweetButtonClick (Vis visning) {new MyAsyncTaskTweet (). utfør (editTextTweet. getText (). toString ());} offentlig tomgang onTimelineButtonClick (Vis visning) {new MyAsyncTaskTimeline (). utfør (editTextUsername. getText ().StString ()); // // Telle tegn i Tweet-feltet klassen MyTextWatcher implementerer TextWatcher {@Override public void afterTextChanged (Editable s) {textViewCountChars.setText () + editTextTweet. getText ().lengde ());} @Override public void beforeTextChanged (CharSequence s, int start, int count, int etter) {} @Override public void onTextChanged (CharSequence s, int start, int før, int count) {}} // AsyncTask klassen offentlig klasse MyAsyncTaskTweet utvider AsyncTask {@Override protected String doInBackground (String … tweet) {String resultat = ""; prøv {twitter. updateStatus (tweet [0]); result = getResources (). getString (R. streng. suksess);} catch (TwitterException twitterException) {result = getResources (). getString (R. streng, twitter_failure);} fangst (Unntak e) {result = getResources (). getString (R. streng. general_failure);} returresultat;} @Override protected void onPostExecute (Stringresultat) {editTextTweet. setHint (resultat); editTextTweet. setText ("");}} offentlig klasse MyAsyncTaskTimeline utvider AsyncTask {@Override protected String doInBackground (String … brukernavn) {String result = new String (""); Liste statuses = null; prøv {statuses = twitter. getUserTimeline (brukernavn [0]);} catch (TwitterException twitterException) {result = getResources (). getString (R. streng, twitter_failure);} fangst (Unntak e) {result = getResources (). getString (R. streng. general_failure);} for (twitter4j. Status status: statuser) {result + = status. GetText (); resultat + = "n";} returresultat;} @Override protected void onPostExecute (Stringresultat) {editTextUsername. setText (““); textViewTimeline. setText (result);}}}

Twitters nettverksprotokoller krever at enheten som kjører de fleste apper, er satt til riktig tid. Dette kan muligens føre til at du har mange problemer med å kjøre appen på emulatorer. Hvis du møter dette problemet, er feilmeldingen som kommer tilbake fra Twitter (vanligvis angi en nullautentiseringsutfordring) ikke nyttig. Så du kan unngå mye stress ved å unngå emulatorer når du tester denne koden. Bare sett telefonen eller nettbrettet for å få nettverkstid automatisk. Kjør deretter appen på den enheten.

Når du kjører appen, ser du to områder. Ett område inneholder en Tweet-knapp; Det andre området inneholder en tidslinjeknapp.

Hovedaktiviteten i sin uberørte tilstand.

I dette bildet er teksten i begge tekstfeltene lysegrå. Dette skjer fordi android: hintattributter blir brukt i koden. Et hint er en haug med tegn som bare vises når et tekstfelt ellers er tomt. Når brukeren klikker inne i tekstfeltet, eller skriver inn tekst i tekstfeltet, forsvinner hinten.

Skriv en tweet i tekstfeltet øverst; trykk deretter på Tweet-knappen.

Brukeren skriver en tweet.

Hvis forsøket på tweet er vellykket, vil meldingen Suksess! erstatter tweet i tekstfeltet.

appen indikerer en vellykket tweet.

Hvis tweetet av en eller annen grunn ikke kan bli lagt ut, erstatter en melding som "Feil å tweet" tweet i tekstfeltet.

Appen bringer dårlige meldinger til brukeren.

Skriv deretter inn et brukernavn i nedre tekstfeltet og klikk på Tidslinje.Hvis alt går bra, vises en liste over brukerens siste tweets under Tidslinjeknappen. Du kan bla i listen for å se flere av brukerens tweets.

En brukers tidslinje.

Android App Utvikling: Slik håndterer du Twitter applikasjonens hovedaktivitet - dummies

Redaktørens valg

Bruk skjermfeltet til å endre QuickBooks 2014 Rapporter - dummies

Bruk skjermfeltet til å endre QuickBooks 2014 Rapporter - dummies

Skjermbildet i QuickBooks Modify Report dialogboksen lar deg kontrollere rapportintervalldatoen, rapportgrunnlaget, kolonnene og en annen formatering. Bokstavene Rapporter datoområde - Datoer, Fra og Til - gjør det samme som Datoer, Fra og Til bokser i Rapportvinduet. Disse boksene lar ...

Bruk skjermfeltet til å modifisere QuickBooks 2013 Rapporter - dummies

Bruk skjermfeltet til å modifisere QuickBooks 2013 Rapporter - dummies

Hvis du klikker Tilpass rapport, QuickBooks viser dialogboksen Endre rapport, som du kan bruke til å tilpasse en rapport. Når du tilpasser en rapport, endrer du rapportens utseende, layout og informasjonen som den oppsummerer. Dialogboksen Endre rapport ser annerledes ut for ulike rapporttyper. Likevel, hvis du ser forbi ...

Bruk fanen Filtre til å modifisere QuickBooks 2014 Rapporter - dummies

Bruk fanen Filtre til å modifisere QuickBooks 2014 Rapporter - dummies

Filtrene kategorien er trolig den mest interessante og en nyttig kategori som er levert av dialogboksen QuickBooks Modify Report. Filtre-fanen lar deg sette opp filtre som du kan bruke til å angi hvilken informasjon som oppsummeres i rapporten. For å bruke Filtrer-fanen velger du først feltet du vil ha ...

Redaktørens valg

Administrere Cloud Computing Resources - dummies

Administrere Cloud Computing Resources - dummies

I teorien bør cloud computing-tjenester ikke være forskjellig fra ressursene i din eget miljø, bortsett fra at de bor eksternt. Ideelt sett har du en komplett visning av cloud computing-ressursene du bruker i dag, eller vil kanskje bruke i fremtiden. I de fleste skymiljøer kan kunden bare få tilgang til ...

Tips for Going Cloud med datanettverkene dine - dummies

Tips for Going Cloud med datanettverkene dine - dummies

Beregning med datanettverket ditt kan være, hva skal du gjøre for å ta nettverket ditt mot skyen? Her er noen anbefalinger: Ikke stole på en dårlig Internett-tilkobling. Først og fremst, før du tar noen av nettverksoperasjonene i skyen, gjør du ...

Nettverkstjenester levert gjennom Cloud Computing - dummies

Nettverkstjenester levert gjennom Cloud Computing - dummies

Tre forskjellige typer nettverkstjenester kan leveres via skyen: applikasjoner , plattformer og tjenester (infrastruktur). I de følgende avsnittene beskrives disse tre typer skyttjenester i større detalj. Programmer i skyen Vanligvis kalt Software as a Service (SaaS), fullt funksjonelle applikasjoner kan leveres via skyen. En av ...

Redaktørens valg

10 Hadoop Ressurser verdt en bokmerke - dummies

10 Hadoop Ressurser verdt en bokmerke - dummies

Følgende er ti fantastiske Hadoop-ressurser som er verdige til å skape en bokmerke i nettleseren din. Disse ressursene hjelper deg med å skape en livslang læringsplan for Hadoop. Sentralnervesystemet: Apache. org Apache Software Foundation (ASF) er det sentrale fellesskapet for open source-programvareprosjekter. Ikke bare et prosjekt kan være et Apache-prosjekt - ...

Data transformasjon i Hadoop - dummies

Data transformasjon i Hadoop - dummies

Ideen om Hadoop-inspirerte ETL motorer har fått mye trekkraft de siste årene. Hadoop er trods alt en fleksibel datalagrings- og behandlingsplattform som kan støtte store mengder data og operasjoner på dataene. Samtidig er det feiltolerant, og det gir mulighet for kapital- og programvarekostnad ...

Datablokker i Hadoop Distributed File System (HDFS) - dummier

Datablokker i Hadoop Distributed File System (HDFS) - dummier

Når du lagrer en fil i HDFS, bryter systemet det ned i et sett med individuelle blokker og lagrer disse blokkene i forskjellige slave noder i Hadoop-klyngen. Dette er en helt vanlig ting å gjøre, da alle filsystemer bryter filer ned i blokker før de lagres til disk. HDFS har ingen ...