2011-05-27 87 views
0

標題可能有點誤導,所以我會盡力以最好的方式解釋它。在我的Android應用程序中,我使用OAuth身份驗證。有一次,我需要打開一個瀏覽器窗口,以便用戶可以批准該應用程序。一旦他們批准它們,它們會被轉發到另一個具有一些地址參數的URL。我需要的是從其中一個參數中獲取值並將其反饋回我的應用程序。在瀏覽器中從網址獲取數據

我在尋找的是在步驟三和四在this Android & OAuth tutorial中描述的,我只是不完全確定是否應該按照文章中描述的方式。

感謝您的幫助!

回答

0

要通過JavaScript獲取URL參數在瀏覽器中,嘗試這樣的事情:

function getURLParameters() { 
    var keyValuePairs = location.search.split(/[&?]/g); 
    var params = {}; 
    for (var i = 0, n = keyValuePairs.length; i < n; ++i) { 
    var keyValuePair = keyValuePairs[i]; 
    var eqIndex = keyValuePair.indexOf("="); 
    if (eqIndex >= 0) { 
     params[decodeURIComponent(keyValuePair.substring(0, eqIndex))] 
     = decodeURIComponent(keyValuePair.substring(eqIndex + 1)); 
    } 
    } 
    return params; 
} 

如果指定了兩次相同的URL參數(通過名稱),那麼它只會出現一次在輸出中,但你可以改變它來返回一個像對象一樣的多圖。

+0

我怎麼能夠將它傳遞給Android應用程序? – Chiggins 2011-05-27 17:35:12

+0

@Chiggins,我現在明白了。您的應用程序不僅僅是應用程序的薄包裝。您*只*用於身份驗證。您是否使用'Intent.ACTION_WEB_SEARCH'來啓動瀏覽器? – 2011-05-27 17:45:03

+0

@Chiggins,如果你使用'WebView',你應該可以通過http://developer.android.com/reference/android/webkit/WebView.html#getUrl() – 2011-05-27 17:51:09