Twitter + OAuth Integration

Chiunque può aiutarti in Android + Twitter Integration utilizzando OAuth.

Ho già lavorato su http://github.com/brione/Brion-Learns-OAuth e ho trovato l'errore elencato di seguito, quando sto postando aggiornamento dello stato …

  • Vantaggio di ListFragment su un elenco di ListView o di un normale frammento
  • Fotocamera Android: intent di dati restituisce null
  • Come specificare le attività che sono solo per telefoni o tablet in Android
  • Perché Glass manca di Google Play Services?
  • Pulsante Android con text e image
  • Recyclerview all'interno della visualizzazione di scorrimento nidificato carica tutti i dati anziché call uno ad uno quando scorri
  • WARN/System.err(190): org.apache.http.client.HttpResponseException: Unauthorized WARN/System.err(190): at org.apache.http.impl.client.BasicResponseHandler.handleResponse(BasicResponseHandler.java:71) WARN/System.err(190): at org.apache.http.impl.client.BasicResponseHandler.handleResponse(BasicResponseHandler.java:59) WARN/System.err(190): at org.apache.http.impl.client.AbstractHttpClient.execute(AbstractHttpClient.java:657) WARN/System.err(190): at org.apache.http.impl.client.AbstractHttpClient.execute(AbstractHttpClient.java:627) WARN/System.err(190): at org.apache.http.impl.client.AbstractHttpClient.execute(AbstractHttpClient.java:616) WARN/System.err(190): at com.test.twitter.BLOA$PostTask.doInBackground(BLOA.java:343) WARN/System.err(190): at com.test.twitter.BLOA$PostTask.doInBackground(BLOA.java:1) WARN/System.err(190): at android.os.AsyncTask$2.call(AsyncTask.java:185) WARN/System.err(190): at java.util.concurrent.FutureTask$Sync.innerRun(FutureTask.java:256) WARN/System.err(190): at java.util.concurrent.FutureTask.run(FutureTask.java:122) WARN/System.err(190): at java.util.concurrent.ThreadPoolExecutor$Worker.runTask(ThreadPoolExecutor.java:648) WARN/System.err(190): at java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:673) WARN/System.err(190): at java.lang.Thread.run(Thread.java:1060) 

    Riesco con l'authentication di OAuth e ottenendo user_secret e user_token e memorizzati in preferenze …

    Quindi il problema è con l'invio di http utilizzando l'intestazione OAuth …

    e il mio metodo Post Http è come:

     private class PostTask extends AsyncTask<String, Void, JSONObject> { ProgressDialog postDialog; @Override protected void onPreExecute() { postDialog = ProgressDialog.show(BLOA.this, getText(R.string.tweet_progress_title), getText(R.string.tweet_progress_text), true, // indeterminate // duration false); // not cancel-able } @Override protected JSONObject doInBackground(String... params) { JSONObject jso = null; try { HttpPost post = new HttpPost( "http://twitter.com/statuses/update.json"); LinkedList<BasicNameValuePair> out = new LinkedList<BasicNameValuePair>(); out.add(new BasicNameValuePair("status", params[0])); post.setEntity(new UrlEncodedFormEntity(out, HTTP.UTF_8)); post.setParams(getParams()); // sign the request to authenticate mConsumer.sign(post); String response = mClient.execute(post, new BasicResponseHandler()); jso = new JSONObject(response); } catch (UnsupportedEncodingException e) { e.printStackTrace(); } catch (OAuthMessageSignerException e) { e.printStackTrace(); } catch (OAuthExpectationFailedException e) { e.printStackTrace(); } catch (OAuthCommunicationException e) { e.printStackTrace(); } catch (ClientProtocolException e) { e.printStackTrace(); } catch (IOException e) { e.printStackTrace(); } catch (JSONException e) { e.printStackTrace(); } finally { } return jso; } // This is in the UI thread, so we can mess with the UI protected void onPostExecute(JSONObject jso) { postDialog.dismiss(); if (jso != null) { // authorization succeeded, the json object // contains the user information mEditor.setText(""); mLast.setText(getCurrentTweet(jso)); } else { mLast.setText(getText(R.string.tweet_error)); } } } 

  • Genera impronta digitale SHA1 in studio Android 2.2
  • EditText, adjustPan, ScrollView in android
  • Come creare un'anteprima video in android?
  • Android TextWatcher.afterTextChanged vs TextWatcher.onTextChanged
  • Rete Android Wi-Fi diretta
  • Non funziona con Jackson
  • 4 Solutions collect form web for “Twitter + OAuth Integration”

    Descrivi quale Client / Consumatore / Provider stai utilizzando, devono essere DefaultHttpClient / CommonsHttpOAuthConsumer / CommonsHttpOAuthProvider per funzionare correttamente.

    Assicurarsi di call consumer.setTokenWithSecret(oToken, oTokenSecret); prima di call questo codice.

    Inoltre, è post.getParams().setBooleanParameter(CoreProtocolPNames.USE_EXPECT_CONTINUE, false); esiste nel tuo post params?

    Qual è la ragione per utilizzare BasicResponseHandler vuoto, non gestisce nulla e può essere omesso nella chiamata di execute , suppongo.

    E, potrebbe essere una domanda stupida, potrebbe essere che sovrascrivi i params quando chiama setParams(...) dopo setEntity(...)

    Anche se si è ricevuto con successo user_secret e user_token in onResume (), siete sicuri che gli oggetti originali siano ancora uguali? Ho avuto questo problema nella mia applicazione Android. Vorrei creare gli oggetti, ma quando è stato chiamato onResume () è stata un'istanza totalmente nuova dell'attività perché è stata liberata dalla memory quando il browser è stato lanciato. Quindi, quando ho cercato di impostare la coppia di segreto / token restituito, non functionrebbe. Ciò è più probabile su un dispositivo con memory limitata. Alcune persone scelgono di persistere le informazioni necessarie tra le chiamate e gli altri decidono di non avviare l'intento del browser predefinito, ma ospitano invece una visualizzazione web incorporata in modo che i loro oggetti di segnaletica-oauth originali non vadano fuori field.

    Stato dell'istanza OAuth in Android

    Non sono sicuro se questo è il problema, ma forse vale la pena dare un'occhiata.

    È necessario aggiungere le informazioni di oauth alle intestazioni della richiesta http utilizzando post.addHeader (). Per sapere quali cose da aggiungere alle intestazioni, date un'occhiata qui: http://dev.twitter.com/pages/auth

    Ho 2 tutorial per 2 libelle Java diverse. La prima (data) è qui, e la seconda qui con Scribe. È per LinkedIn ma sarebbe molto facile passare a Twitter. Vorrei andare con # 2

    L'Android è un fan Android di Google, tutto su telefoni Android, Android Wear, Android Dev e applicazioni Android Games e così via.