Skip to content

Commit 32898fa

Browse files
author
Oleg Smirnov
committed
version 2.7.0
1 parent 10b750d commit 32898fa

File tree

175 files changed

+5513
-373
lines changed

Some content is hidden

Large Commits have some content hidden by default. Use the searchbox below for content that may be hidden.

175 files changed

+5513
-373
lines changed

dependencies.gradle

Lines changed: 10 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -31,15 +31,18 @@ ext.sdkVersions = [
3131
compileSdk : '29',
3232
buildTools : '29.0.3',
3333

34-
kotlin : '1.4.0',
34+
kotlin : '1.4.30',
3535
androidX : '1.1.0',
3636
okHttp : '4.5.0',
3737

3838
picasso : '2.71828',
3939

4040
androidGradlePlugin : '3.6.0',
4141

42-
gson : '2.8.5',
42+
gson : '2.8.6',
43+
44+
junit : '4.12',
45+
mockito : '1.6.0',
4346
]
4447

4548
ext.sdkLibraries = [
@@ -57,6 +60,11 @@ ext.sdkLibrariesSupport = [
5760
collection : "androidx.collection:collection:$sdkVersions.androidX",
5861
]
5962

63+
ext.testLibraries = [
64+
junit : "junit:junit:$sdkVersions.junit",
65+
mockito : "com.nhaarman:mockito-kotlin:$sdkVersions.mockito",
66+
]
67+
6068
ext.sdkGradlePlugins = [
6169
android : "com.android.tools.build:gradle:$sdkVersions.androidGradlePlugin",
6270
kotlinGradle : "org.jetbrains.kotlin:kotlin-gradle-plugin:$sdkVersions.kotlin",

samples/app/sdk/src/build.gradle

Lines changed: 0 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -53,7 +53,6 @@ android {
5353
}
5454

5555
dependencies {
56-
implementation fileTree(dir: 'libs', include: '*.jar')
5756
implementation sdkLibraries.kotlin
5857
implementation sdkLibrariesSupport.recyclerView
5958
implementation sdkLibrariesSupport.appCompat

samples/app/sdk/src/main/res/values/strings.xml

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -2,7 +2,7 @@
22
<resources>
33
<string name="login">Войти</string>
44
<string name="logout">Выйти</string>
5-
<string name="share_to_wall">Отправить на стену</string>
5+
<string name="share_to_wall">Post on wall</string>
66
<string name="message_hint">Ваше сообщение</string>
77
<string name="wall_ok">Posted</string>
88
</resources>

vk-sdk-api/src/main/java/com/vk/sdk/api/GsonHolder.kt

Lines changed: 38 additions & 8 deletions
Original file line numberDiff line numberDiff line change
@@ -37,6 +37,8 @@ object GsonHolder {
3737

3838
private fun makeBuilder(): GsonBuilder {
3939
val builder = GsonBuilder()
40+
builder.registerTypeAdapter(com.vk.sdk.api.calls.dto.CallsEndState::class.java,
41+
com.vk.sdk.api.calls.dto.CallsEndState.Serializer())
4042
builder.registerTypeAdapter(com.vk.sdk.api.ads.dto.AdsGetStatisticsStatsFields::class.java,
4143
com.vk.sdk.api.ads.dto.AdsGetStatisticsStatsFields.Serializer())
4244
builder.registerTypeAdapter(com.vk.sdk.api.ads.dto.AdsGetStatisticsPeriod::class.java,
@@ -133,16 +135,36 @@ object GsonHolder {
133135
com.vk.sdk.api.wall.dto.WallReportCommentReason.Serializer())
134136
builder.registerTypeAdapter(com.vk.sdk.api.messages.dto.MessagesGetHistoryAttachmentsMediaType::class.java,
135137
com.vk.sdk.api.messages.dto.MessagesGetHistoryAttachmentsMediaType.Serializer())
138+
builder.registerTypeAdapter(com.vk.sdk.api.messages.dto.MessagesChatSettingsPermissions.ChangeInfo::class.java,
139+
com.vk.sdk.api.messages.dto.MessagesChatSettingsPermissions.ChangeInfo.Serializer())
140+
builder.registerTypeAdapter(com.vk.sdk.api.messages.dto.MessagesChatSettingsPermissions.Call::class.java,
141+
com.vk.sdk.api.messages.dto.MessagesChatSettingsPermissions.Call.Serializer())
142+
builder.registerTypeAdapter(com.vk.sdk.api.messages.dto.MessagesChatSettingsPermissions.UseMassMentions::class.java,
143+
com.vk.sdk.api.messages.dto.MessagesChatSettingsPermissions.UseMassMentions.Serializer())
144+
builder.registerTypeAdapter(com.vk.sdk.api.messages.dto.MessagesChatSettingsPermissions.ChangePin::class.java,
145+
com.vk.sdk.api.messages.dto.MessagesChatSettingsPermissions.ChangePin.Serializer())
146+
builder.registerTypeAdapter(com.vk.sdk.api.messages.dto.MessagesChatSettingsPermissions.ChangeAdmins::class.java,
147+
com.vk.sdk.api.messages.dto.MessagesChatSettingsPermissions.ChangeAdmins.Serializer())
148+
builder.registerTypeAdapter(com.vk.sdk.api.messages.dto.MessagesChatSettingsPermissions.Invite::class.java,
149+
com.vk.sdk.api.messages.dto.MessagesChatSettingsPermissions.Invite.Serializer())
150+
builder.registerTypeAdapter(com.vk.sdk.api.messages.dto.MessagesChatSettingsPermissions.SeeInviteLink::class.java,
151+
com.vk.sdk.api.messages.dto.MessagesChatSettingsPermissions.SeeInviteLink.Serializer())
136152
builder.registerTypeAdapter(com.vk.sdk.api.messages.dto.MessagesConversation.SpecialServiceType::class.java,
137153
com.vk.sdk.api.messages.dto.MessagesConversation.SpecialServiceType.Serializer())
138154
builder.registerTypeAdapter(com.vk.sdk.api.messages.dto.MessagesConversationPeerType::class.java,
139155
com.vk.sdk.api.messages.dto.MessagesConversationPeerType.Serializer())
156+
builder.registerTypeAdapter(com.vk.sdk.api.messages.dto.MessagesGetIntentUsersIntent::class.java,
157+
com.vk.sdk.api.messages.dto.MessagesGetIntentUsersIntent.Serializer())
140158
builder.registerTypeAdapter(com.vk.sdk.api.messages.dto.MessagesGetHistoryRev::class.java,
141159
com.vk.sdk.api.messages.dto.MessagesGetHistoryRev.Serializer())
142160
builder.registerTypeAdapter(com.vk.sdk.api.messages.dto.MessagesKeyboardButton.Color::class.java,
143161
com.vk.sdk.api.messages.dto.MessagesKeyboardButton.Color.Serializer())
162+
builder.registerTypeAdapter(com.vk.sdk.api.messages.dto.MessagesChatSettingsState::class.java,
163+
com.vk.sdk.api.messages.dto.MessagesChatSettingsState.Serializer())
144164
builder.registerTypeAdapter(com.vk.sdk.api.messages.dto.MessagesSendIntent::class.java,
145165
com.vk.sdk.api.messages.dto.MessagesSendIntent.Serializer())
166+
builder.registerTypeAdapter(com.vk.sdk.api.messages.dto.MessagesSetActivityType::class.java,
167+
com.vk.sdk.api.messages.dto.MessagesSetActivityType.Serializer())
146168
builder.registerTypeAdapter(com.vk.sdk.api.messages.dto.MessagesTemplateActionTypeNames::class.java,
147169
com.vk.sdk.api.messages.dto.MessagesTemplateActionTypeNames.Serializer())
148170
builder.registerTypeAdapter(com.vk.sdk.api.messages.dto.MessagesGetConversationsFilter::class.java,
@@ -185,10 +207,14 @@ object GsonHolder {
185207
com.vk.sdk.api.fave.dto.FaveAddTagPosition.Serializer())
186208
builder.registerTypeAdapter(com.vk.sdk.api.fave.dto.FaveBookmarkType::class.java,
187209
com.vk.sdk.api.fave.dto.FaveBookmarkType.Serializer())
210+
builder.registerTypeAdapter(com.vk.sdk.api.fave.dto.FaveRemoveClassifiedItemSource::class.java,
211+
com.vk.sdk.api.fave.dto.FaveRemoveClassifiedItemSource.Serializer())
188212
builder.registerTypeAdapter(com.vk.sdk.api.fave.dto.FaveSetTagsItemType::class.java,
189213
com.vk.sdk.api.fave.dto.FaveSetTagsItemType.Serializer())
190214
builder.registerTypeAdapter(com.vk.sdk.api.fave.dto.FaveGetItemType::class.java,
191215
com.vk.sdk.api.fave.dto.FaveGetItemType.Serializer())
216+
builder.registerTypeAdapter(com.vk.sdk.api.fave.dto.FaveAddClassifiedItemSource::class.java,
217+
com.vk.sdk.api.fave.dto.FaveAddClassifiedItemSource.Serializer())
192218
builder.registerTypeAdapter(com.vk.sdk.api.polls.dto.PollsGetByIdNameCase::class.java,
193219
com.vk.sdk.api.polls.dto.PollsGetByIdNameCase.Serializer())
194220
builder.registerTypeAdapter(com.vk.sdk.api.polls.dto.PollsBackground.Type::class.java,
@@ -507,28 +533,32 @@ object GsonHolder {
507533
com.vk.sdk.api.stats.dto.StatsGetInterval.Serializer())
508534
builder.registerTypeAdapter(com.vk.sdk.api.widgets.dto.WidgetsCommentMediaType::class.java,
509535
com.vk.sdk.api.widgets.dto.WidgetsCommentMediaType.Serializer())
510-
builder.registerTypeAdapter(com.vk.sdk.api.newsfeed.dto.NewsfeedItemDigestFooterButton.Style::class.java,
511-
com.vk.sdk.api.newsfeed.dto.NewsfeedItemDigestFooterButton.Style.Serializer())
536+
builder.registerTypeAdapter(com.vk.sdk.api.store.dto.StoreProduct.Type::class.java,
537+
com.vk.sdk.api.store.dto.StoreProduct.Type.Serializer())
512538
builder.registerTypeAdapter(com.vk.sdk.api.newsfeed.dto.NewsfeedItemWallpostFeedbackType::class.java,
513539
com.vk.sdk.api.newsfeed.dto.NewsfeedItemWallpostFeedbackType.Serializer())
514540
builder.registerTypeAdapter(com.vk.sdk.api.newsfeed.dto.NewsfeedItemDigest.Template::class.java,
515541
com.vk.sdk.api.newsfeed.dto.NewsfeedItemDigest.Template.Serializer())
516-
builder.registerTypeAdapter(com.vk.sdk.api.newsfeed.dto.NewsfeedItemDigestHeader.Style::class.java,
517-
com.vk.sdk.api.newsfeed.dto.NewsfeedItemDigestHeader.Style.Serializer())
518542
builder.registerTypeAdapter(com.vk.sdk.api.newsfeed.dto.NewsfeedNewsfeedItemType::class.java,
519543
com.vk.sdk.api.newsfeed.dto.NewsfeedNewsfeedItemType.Serializer())
520-
builder.registerTypeAdapter(com.vk.sdk.api.newsfeed.dto.NewsfeedItemWallpostType::class.java,
521-
com.vk.sdk.api.newsfeed.dto.NewsfeedItemWallpostType.Serializer())
522544
builder.registerTypeAdapter(com.vk.sdk.api.newsfeed.dto.NewsfeedUnsubscribeType::class.java,
523545
com.vk.sdk.api.newsfeed.dto.NewsfeedUnsubscribeType.Serializer())
524-
builder.registerTypeAdapter(com.vk.sdk.api.newsfeed.dto.NewsfeedItemDigestFooter.Style::class.java,
525-
com.vk.sdk.api.newsfeed.dto.NewsfeedItemDigestFooter.Style.Serializer())
526546
builder.registerTypeAdapter(com.vk.sdk.api.newsfeed.dto.NewsfeedFilters::class.java,
527547
com.vk.sdk.api.newsfeed.dto.NewsfeedFilters.Serializer())
548+
builder.registerTypeAdapter(com.vk.sdk.api.newsfeed.dto.NewsfeedItemDigestButton.Style::class.java,
549+
com.vk.sdk.api.newsfeed.dto.NewsfeedItemDigestButton.Style.Serializer())
550+
builder.registerTypeAdapter(com.vk.sdk.api.newsfeed.dto.NewsfeedItemDigestHeader.Style::class.java,
551+
com.vk.sdk.api.newsfeed.dto.NewsfeedItemDigestHeader.Style.Serializer())
552+
builder.registerTypeAdapter(com.vk.sdk.api.newsfeed.dto.NewsfeedItemWallpostType::class.java,
553+
com.vk.sdk.api.newsfeed.dto.NewsfeedItemWallpostType.Serializer())
554+
builder.registerTypeAdapter(com.vk.sdk.api.newsfeed.dto.NewsfeedItemDigestFooter.Style::class.java,
555+
com.vk.sdk.api.newsfeed.dto.NewsfeedItemDigestFooter.Style.Serializer())
528556
builder.registerTypeAdapter(com.vk.sdk.api.newsfeed.dto.NewsfeedGetBannedNameCase::class.java,
529557
com.vk.sdk.api.newsfeed.dto.NewsfeedGetBannedNameCase.Serializer())
530558
builder.registerTypeAdapter(com.vk.sdk.api.newsfeed.dto.NewsfeedCommentsFilters::class.java,
531559
com.vk.sdk.api.newsfeed.dto.NewsfeedCommentsFilters.Serializer())
560+
builder.registerTypeAdapter(com.vk.sdk.api.newsfeed.dto.NewsfeedItemDigestFullItem.Style::class.java,
561+
com.vk.sdk.api.newsfeed.dto.NewsfeedItemDigestFullItem.Style.Serializer())
532562
builder.registerTypeAdapter(com.vk.sdk.api.newsfeed.dto.NewsfeedIgnoreItemType::class.java,
533563
com.vk.sdk.api.newsfeed.dto.NewsfeedIgnoreItemType.Serializer())
534564
return builder

vk-sdk-api/src/main/java/com/vk/sdk/api/account/dto/AccountPushConversationsItem.kt

Lines changed: 8 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -35,12 +35,19 @@ import kotlin.Int
3535
* @param disabledUntil Time until that notifications are disabled in seconds
3636
* @param peerId Peer ID
3737
* @param sound Information whether the sound are enabled
38+
* @param disabledMentions Information whether the mentions are disabled
39+
* @param disabledMassMentions Information whether the mass mentions (like '@all', '@online') are
40+
* disabled. Can be affected by 'disabled_mentions'
3841
*/
3942
data class AccountPushConversationsItem(
4043
@SerializedName(value="disabled_until")
4144
val disabledUntil: Int,
4245
@SerializedName(value="peer_id")
4346
val peerId: Int,
4447
@SerializedName(value="sound")
45-
val sound: BaseBoolInt
48+
val sound: BaseBoolInt,
49+
@SerializedName(value="disabled_mentions")
50+
val disabledMentions: BaseBoolInt? = null,
51+
@SerializedName(value="disabled_mass_mentions")
52+
val disabledMassMentions: BaseBoolInt? = null
4653
)

vk-sdk-api/src/main/java/com/vk/sdk/api/ads/dto/AdsAdLayout.kt

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -56,7 +56,7 @@ data class AdsAdLayout(
5656
@SerializedName(value="description")
5757
val description: String,
5858
@SerializedName(value="id")
59-
val id: Int,
59+
val id: String,
6060
@SerializedName(value="image_src")
6161
val imageSrc: String,
6262
@SerializedName(value="link_url")

vk-sdk-api/src/main/java/com/vk/sdk/api/ads/dto/AdsMusician.kt

Lines changed: 4 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -34,10 +34,13 @@ import kotlin.String
3434
/**
3535
* @param id Targeting music artist ID
3636
* @param name Music artist name
37+
* @param avatar Music artist photo
3738
*/
3839
data class AdsMusician(
3940
@SerializedName(value="id")
4041
val id: Int,
4142
@SerializedName(value="name")
42-
val name: String
43+
val name: String,
44+
@SerializedName(value="avatar")
45+
val avatar: String? = null
4346
)
Lines changed: 50 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,50 @@
1+
/**
2+
* The MIT License (MIT)
3+
*
4+
* Copyright (c) 2019 vk.com
5+
*
6+
* Permission is hereby granted, free of charge, to any person obtaining a copy
7+
* of this software and associated documentation files (the "Software"), to deal
8+
* in the Software without restriction, including without limitation the rights
9+
* to use, copy, modify, merge, publish, distribute, sublicense, and/or sell
10+
* copies of the Software, and to permit persons to whom the Software is
11+
* furnished to do so, subject to the following conditions:
12+
*
13+
* The above copyright notice and this permission notice shall be included in all
14+
* copies or substantial portions of the Software.
15+
*
16+
* THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
17+
* IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
18+
* FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE
19+
* AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER
20+
* LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,
21+
* OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE
22+
* SOFTWARE.
23+
*/
24+
// *********************************************************************
25+
// THIS FILE IS AUTO GENERATED!
26+
// DO NOT EDIT UNLESS YOU ARE SURE THAT YOU KNOW WHAT YOU ARE DOING.
27+
// *********************************************************************
28+
package com.vk.sdk.api.ads.methods
29+
30+
import com.vk.sdk.api.ApiRequestBase
31+
import com.vk.sdk.api.GsonHolder
32+
import com.vk.sdk.api.ads.dto.AdsGetMusiciansResponseDto
33+
import com.vk.sdk.api.ads.responses.AdsGetMusiciansResponse
34+
import kotlin.Int
35+
import kotlin.collections.List
36+
import org.json.JSONObject
37+
38+
/**
39+
* @param ids
40+
*/
41+
class AdsGetMusiciansByIds(
42+
private val ids: List<Int>
43+
) : ApiRequestBase<AdsGetMusiciansResponseDto>(methodName = "ads.getMusiciansByIds") {
44+
init {
45+
addParam("ids", ids)
46+
}
47+
48+
override fun parse(r: JSONObject): AdsGetMusiciansResponseDto =
49+
GsonHolder.gson.fromJson(r.toString(), AdsGetMusiciansResponse::class.java).response
50+
}
Lines changed: 42 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,42 @@
1+
/**
2+
* The MIT License (MIT)
3+
*
4+
* Copyright (c) 2019 vk.com
5+
*
6+
* Permission is hereby granted, free of charge, to any person obtaining a copy
7+
* of this software and associated documentation files (the "Software"), to deal
8+
* in the Software without restriction, including without limitation the rights
9+
* to use, copy, modify, merge, publish, distribute, sublicense, and/or sell
10+
* copies of the Software, and to permit persons to whom the Software is
11+
* furnished to do so, subject to the following conditions:
12+
*
13+
* The above copyright notice and this permission notice shall be included in all
14+
* copies or substantial portions of the Software.
15+
*
16+
* THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
17+
* IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
18+
* FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE
19+
* AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER
20+
* LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,
21+
* OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE
22+
* SOFTWARE.
23+
*/
24+
// *********************************************************************
25+
// THIS FILE IS AUTO GENERATED!
26+
// DO NOT EDIT UNLESS YOU ARE SURE THAT YOU KNOW WHAT YOU ARE DOING.
27+
// *********************************************************************
28+
package com.vk.sdk.api.apps.dto
29+
30+
import com.google.gson.annotations.SerializedName
31+
import kotlin.String
32+
33+
/**
34+
* @param privacyPolicy URL of the app's privacy policy
35+
* @param terms URL of the app's terms
36+
*/
37+
data class AppsGetMiniAppPoliciesResponseDto(
38+
@SerializedName(value="privacy_policy")
39+
val privacyPolicy: String? = null,
40+
@SerializedName(value="terms")
41+
val terms: String? = null
42+
)
Lines changed: 42 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,42 @@
1+
/**
2+
* The MIT License (MIT)
3+
*
4+
* Copyright (c) 2019 vk.com
5+
*
6+
* Permission is hereby granted, free of charge, to any person obtaining a copy
7+
* of this software and associated documentation files (the "Software"), to deal
8+
* in the Software without restriction, including without limitation the rights
9+
* to use, copy, modify, merge, publish, distribute, sublicense, and/or sell
10+
* copies of the Software, and to permit persons to whom the Software is
11+
* furnished to do so, subject to the following conditions:
12+
*
13+
* The above copyright notice and this permission notice shall be included in all
14+
* copies or substantial portions of the Software.
15+
*
16+
* THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
17+
* IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
18+
* FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE
19+
* AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER
20+
* LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,
21+
* OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE
22+
* SOFTWARE.
23+
*/
24+
// *********************************************************************
25+
// THIS FILE IS AUTO GENERATED!
26+
// DO NOT EDIT UNLESS YOU ARE SURE THAT YOU KNOW WHAT YOU ARE DOING.
27+
// *********************************************************************
28+
package com.vk.sdk.api.apps.dto
29+
30+
import com.google.gson.annotations.SerializedName
31+
import kotlin.String
32+
33+
/**
34+
* @param hash Uploading hash
35+
* @param image Uploaded photo data
36+
*/
37+
data class AppsImageUploadResponseDto(
38+
@SerializedName(value="hash")
39+
val hash: String? = null,
40+
@SerializedName(value="image")
41+
val image: String? = null
42+
)

0 commit comments

Comments
 (0)