2012-02-22 3 views
6

Tengo una implementación en funcionamiento de twitter4j pero el proceso de OAuth para autorizar la aplicación deja el navegador web de Android ejecutándose detrás de la aplicación. Me gustaría intentar implementar mi propia vista web en una actividad lanzada para poder terminarla o al menos limpiarla después de mi aplicación. El problema es que ahora tengo que descubrir cómo devolver authURL a mi actividad principal.Android y Twitter4j: ¿se maneja OAuth con un widget de vista web?

¿Cuál es la mejor manera de devolver el authURL? He subclasificado un widget de vista web y estoy experimentando con una forma de devolver el authURL en onPageFinished() pero todavía no está allí.

private class myWebViewClient extends WebViewClient 
{ 
    @Override 
    public void onPageFinished (WebView view, String url) 
    { 
    Log.d (TAG, "onPageFinished"); 
     super.onPageFinished (view, url); 

     if (url.contains (TwitterLibActivity.CALLBACK_URL) == true) 
     { 
     /* 
     mRetIntent = new Intent(); 
     mRetIntent.putExtra ("verifed", url); 
     setResult (RESULT_OK, mRetIntent); 
     */ 
     Log.d (TAG, "have auth url:" + url); 
     finish(); 
     } 
    } 


    @Override 
    public boolean shouldOverrideUrlLoading (WebView view, String url) 
    { 
     Log.d (TAG, "myWebViewClient url:" + url); 
     //return super.shouldOverrideUrlLoading (view, url); 
     return (false); 
    } 
} 

Respuesta

0

Here es el ejemplo de código de buena integración de Twitter con androide, que he utilizado yo mismo con modificaciones como sea necesario por ...

+0

Gracias, pero realmente estoy buscando una solución usando twitter4j. – wufoo

+1

bien de hecho el ejemplo dado también usa la biblioteca twitter4j –

+0

Oh, mi error entonces. No vi twitter4j en las importaciones. Voy a echarle un vistazo más de cerca. – wufoo

5

TwitterOAuthView es una subclase vista web dedicado para Twitter OAuth en Android, usando twitter4j.

Twitter OAuth Ver para Android usando Twitter4J
http://darutk-oboegaki.blogspot.jp/2012/07/twitter-oauth-view-for-android-using.html

Desde que se implementa como una subclase de vista, se puede integrar en el sistema de diseño de Android sin problemas. Este hecho hace que TwitterOAuthView sea un componente UI fácilmente reutilizable.

Su uso es muy simple. Simplemente llame al método start()

// Start Twitter OAuth process. Getting a request token, opening Twitter's 
// authorization page, and getting an access token are performed. 
view.start(CONSUMER_KEY, CONSUMER_SECRET, CALLBACK_URL, true, listener); 

y reciba su resultado a través de la interfaz TwitterOAuthView.Listener.

// Definition of TwitterOAuthView.Listener interface. 
void onSuccess(TwitterOAuthView view, AccessToken accessToken); 
void onFailure(TwitterOAuthView view, TwitterOAuthView.Result result); 

Un ejemplo de ejecución de la actividad utilizando TwitterOAuthView se puede encontrar en GitHub TwitterOAuthView.

Cuestiones relacionadas