2012-02-22 16 views
6

Mam działającą implementację twitter4j, ale proces OAuth do autoryzacji aplikacji opuszcza przeglądarkę systemu Android uruchomioną za aplikacją. Chciałbym spróbować wdrożyć własną przeglądarkę internetową w uruchomionej działalności, aby móc ją zakończyć() lub przynajmniej wyczyścić po mojej aplikacji. Problem polega na tym, że teraz muszę wymyślić, w jaki sposób zwrócić authURL do mojej głównej działalności.Android i Twitter4j: Obsługa OAuth za pomocą widżetu Webview?

Jaki jest najlepszy sposób, aby zwrócić authURL? Podklasowałem widget widżetu internetowego i eksperymentuję z metodą zwracania authURL w funkcji onPageFinished(), ale jeszcze jej tam nie ma.

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); 
    } 
} 

Odpowiedz

0

Here jest ładny przykład kodu integracji Twitter z Androidem, Używałem go sobie z modyfikacjami jak za potrzebne ...

+0

Dziękuję, ale naprawdę szukam rozwiązania za pomocą twitter4j. – wufoo

+1

well infact dany przykład także używa biblioteki twitter4j –

+0

Och, mój błąd wtedy. Nie widziałem twitter4j w imporcie. Będę się bliżej przyjrzeć. – wufoo

5

TwitterOAuthView jest podklasą WebView dedykowane na Twitterze OAuth na Androida, używając twitter4j.

Twitter OAuth Zobacz na Androidzie używając twitter4j
http://darutk-oboegaki.blogspot.jp/2012/07/twitter-oauth-view-for-android-using.html

Ponieważ jest zaimplementowany jako podklasy widzenia, może być zintegrowany z systemem Android układ bezproblemowo. Dzięki temu TwitterOAuthView staje się łatwym do wielokrotnego użycia elementem interfejsu użytkownika.

Jego użycie jest bardzo proste. Po prostu wywołaj metodę 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); 
) i otrzymaj wynik przez interfejs TwitterOAuthView.Listener.

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

Przykład realizacji działania za pomocą TwitterOAuthView można znaleźć pod adresem GitHub TwitterOAuthView.

Powiązane problemy