Sub Process_Globals
Dim AuthorizationCode, AccessToken As String, AccessSecret
Dim clientID="the key" As String
Dim clientSecret="the secret" As String
End Sub
Sub Globals
Dim provider As JavaObject
Dim consumer As JavaObject
End Sub
Sub Button1_Click
If AuthorizationCode = "" Then
consumer = CreateOAuthConsumer(clientID,clientSecret)
provider = CreateOAuthProvider("https://api.ravelry.com/oauth/request_token?scope=forum-write+m-write", _
"https://api.ravelry.com/oauth/access_token","https://api.ravelry.com/oauth/authorize")
provider.RunMethod("setOAuth10a", Array(True))
Dim url As String = provider.RunMethod("retrieveRequestToken", Array(consumer, "myapp://oauth"))
Dim scope As String
scope = "https://api.ravelry.com"
Dim wv As WebView
wv.Initialize("wv")
Activity.AddView(wv, 0, 0, 100%x, 100%y)
wv.LoadUrl(url )
Button1.Enabled = False
End If
End Sub
Sub CreateOAuthProvider(RequestUrl As String, AccessUrl As String, AuthorizeUrl As String) As JavaObject
provider.InitializeNewInstance("oauth.signpost.commonshttp.CommonsHttpOAuthProvider", Array(RequestUrl, _
AccessUrl, AuthorizeUrl))
Return provider
End Sub
Sub CreateOAuthConsumer(key As String, secret As String) As JavaObject
consumer.InitializeNewInstance("oauth.signpost.commonshttp.CommonsHttpOAuthConsumer", Array(clientID, _
clientSecret))
Return consumer
End Sub
Sub wv_PageFinished (url As String)
If url.StartsWith("myapp") Then
Dim i As Int
Dim keystr As String= "oauth_verifier="
Dim verifier As String
i=url.indexof(keystr)+keystr.Length
verifier = url.SubString(i)
provider.RunMethod("retrieveAccessToken", Array(consumer, verifier))
AccessToken=consumer.RunMethod("getToken",Null)
AccessSecret=consumer.RunMethod("getTokenSecret", Null)
StartActivity(getUser)
End If
End Sub