Introduction
Vk.com is the largest russian social network with a powerful api integration. It is also rapidly expanding in europe with a very large userbase.
Used SocialApi classes:
The samples archive contains:
Step-by-step new app tutorial (based on Sample1)
1. Add following code to your manifest:
2. Add following directives to your project's main file:
3. Select the SocialApi library from the list of the available libraries in the IDE. Declare a VkProvider and a SocialApiActivity object in Sub Process_Globals and Sub Globals respectively. Also initialize the VkProvider with your app-id.
4. Log app's unique HashKey in Sub Activity_Create because you will need this later. Then call the VkProvider.SetActivity method in your Sub Activity_Resume in order to bind the VkProvider instance to the current activity passing the name of the event that will be raised every time the Vk.com session changes.
5. Create the event handlers
6. Create the login/logout handlers. The login and logout actions are performed asynchronously
7. Do something and evaluate the result
Done! Now we have to setup our app in the Vk.com Developer Dashboard.
Set up our app in the Vk.com Developer Dashboard
Follow the instructions here: https://vk.com/editapp?act=create
Please test and post any feedback, questions, comments you may have!
That's all for now folks!~
Vk.com is the largest russian social network with a powerful api integration. It is also rapidly expanding in europe with a very large userbase.
Used SocialApi classes:
- VkProvider: A non activity object that must be declared in any Sub Process_Globals.
- SocialApiActivity: An activity object that can be only declared in a Sub Globals and is used to bind a VkProvider object to an activity through the VkProvider.SetActivity method.
- Download the latest socialapi package, extract it anywhere on your hard disk and note the folder name.
- Copy the wrapper files (jar + xml) in the socialapi folder into your B4A Libraries folder.
- Each sample in the socialapi\vk\samples folder has AdditionalRes and AdditionalJar directives that have to be changed. Change the C:\b4a-dev folder to where you have extracted the socialapi archive.
The samples archive contains:
- Sample1: Simple connect that can be used as a bare-bone template for your new apps
Step-by-step new app tutorial (based on Sample1)
1. Add following code to your manifest:
B4X:
AddApplicationText(
<activity
android:name="com.vk.sdk.VKOpenAuthActivity" />)
2. Add following directives to your project's main file:
B4X:
#AdditionalRes: <your-installation-folder>\socialapi\vk\sdk\res com.vk.sdk
#AdditionalJar: <your-installation-folder>\socialapi\vk\sdk\vksdk.jar
3. Select the SocialApi library from the list of the available libraries in the IDE. Declare a VkProvider and a SocialApiActivity object in Sub Process_Globals and Sub Globals respectively. Also initialize the VkProvider with your app-id.
B4X:
Sub Process_Globals
'These global variables will be declared once when the application starts.
'These variables can be accessed from all modules.
Dim Vk As VkProvider : Vk.Initialize("<your-app-id>")
End Sub
Sub Globals
'These global variables will be redeclared each time the activity is created.
'These variables can only be accessed from this module.
Dim ThisActivity As SocialApiActivity
End Sub
4. Log app's unique HashKey in Sub Activity_Create because you will need this later. Then call the VkProvider.SetActivity method in your Sub Activity_Resume in order to bind the VkProvider instance to the current activity passing the name of the event that will be raised every time the Vk.com session changes.
B4X:
Sub Activity_Create
Log(Vk.HashKey)
End Sub
Sub Activity_Resume
Vk.SetActivity(ThisActivity.Initialize("Vk")) 'The event prefix
End Sub
5. Create the event handlers
B4X:
Sub Vk_Event (Provider as SocialApiProvider)
BtnConnect.Enabled = Not(Provider.Connected)
BtnDisconnect.Enabled = Provider.Connected
End Sub
Sub Vk_Connected (Provider as SocialApiProvider)
Msgbox(Provider.Me, "JustConnected!")
End Sub
Sub Vk_Disconnected (Provider as SocialApiProvider)
Msgbox("Bye bye!", "JustDisconnected!")
End Sub
Sub Vk_Failed (Provider as SocialApiProvider)
If Msgbox2("Failed to actualize your details."&CRLF&CRLF&"Retry?", "Error", "Yes", "No", "", Null) = DialogResponse.POSITIVE Then
Provider.Retry
End If
End Sub
6. Create the login/logout handlers. The login and logout actions are performed asynchronously
B4X:
Sub BtnConnect_Click
Vk.Login(Array as String (VkConstants.Permissions.FRIENDS))
End Sub
Sub BtnDisconnect_Click
Vk.Logout
End Sub
7. Do something and evaluate the result
B4X:
Sub BtnMe_Click
Dim Result As VkResult = Vk.GetMe(Array As String(Vk.Constants.UserFields.BDATE))
If Result.Success Then
Msgbox(Result, "Success")
Else
Msgbox(Result.Message, "Error")
End If
End Sub
Done! Now we have to setup our app in the Vk.com Developer Dashboard.
Set up our app in the Vk.com Developer Dashboard
Follow the instructions here: https://vk.com/editapp?act=create
Please test and post any feedback, questions, comments you may have!
That's all for now folks!~
Attachments
Last edited: