[Plugin] VkAPI (JS SDK, устаревший)

расширяем возможности Construct 2

Сообщение [Plugin] VkAPI (JS SDK, устаревший)
» 29 окт 2019, 00:57

Вроде как с 1 мая 2020 г. JavaScript SDK отменен, но всё ещё работает
https://vk.com/dev/communuty_apps_to_vkma


Плагин позволяет получить данные о пользователе и друзьях, установивших приложение. Приложение должно быть открыто во Вконтакте, а не по ссылке в браузере.

Значения плагина
В отличии от старого плагина, данные о пользователе и друзьях не нужно сохранять в массив.
 Данные о пользователе
  • Vk_User_ID - ID пользователя
  • Vk_User_FN - имя пользователя
  • Vk_User_LN - фамилия пользователя
  • Vk_User_Sex - пол пользователя: 0 - пользователя на своей странице не указал пол; 1 - женский; 2 - мужской
  • Vk_User_Pone - ссылка на фото 50х50
  • Vk_User_Ptwo - ссылка на фото 100х100
  • Vk_User_Pthree - ссылка на фото 200х200
  • Vk_User_BDate - дата рождения в формате дд.мм.гг
  • Vk_User_HT - родной город пользователя

 Данные о друзьях, установивших приложение
  • Vk_Friends_Count - Количество друзей, установивших приложение
  • Vk_Friends_FN - имя пользователя
  • Vk_Friends_ID - ID друга (в скобках укажите номер друга от 1 до 'Vk_Friends_Count')
  • Vk_Friends_FN - имя друга (в скобках укажите номер друга от 1 до 'Vk_Friends_Count')
  • Vk_Friends_LN - фамилия друга (в скобках укажите номер друга от 1 до 'Vk_Friends_Count')
  • Vk_Friends_Sex - пол друга: 0 - не указан; 1 - женский; 2 - мужской (в скобках укажите номер друга от 1 до 'Vk_Friends_Count')
  • Vk_Friends_Pone - ссылка на фото друга 50х50 (в скобках укажите номер друга от 1 до 'Vk_Friends_Count')
  • Vk_Friends_Ptwo - ссылка на фото друга 100х100 (в скобках укажите номер друга от 1 до 'Vk_Friends_Count')
  • Vk_Friends_Pthree - ссылка на фото друга 200х200 (в скобках укажите номер друга от 1 до 'Vk_Friends_Count')
  • Vk_Friends_BDate - Дата рождения друга в формате дд.мм.гг (в скобках укажите номер друга от 1 до 'Vk_Friends_Count')
  • Vk_Friends_HT - Родной город друга (в скобках укажите номер друга от 1 до 'Vk_Friends_Count')
Соответственно если мы будем менять текст Text - Set text - VkAPI.Vk_User_ID, то текст поменяется на ID пользователя. Если Text - Set text - VkAPI.Vk_Friends_ID(1)то текст поменяется на ID первого друга (если вместо 1 поставить 0, то текст поменяется на пустое значение).


Действия плагина
  • Connect user - Запрос данных о пользователе (при получении данных сработает 'On user connected')
  • Connect friends - Запрос данных о друзьях, установивших приложение (при получении данных сработает 'On friends connected')


Условия плагина
  • On user connected - Данные о пользователе получены (требуется действие 'Connect user')
  • On friends connected - Данные о друзьях получены (требуется действие 'Connect friends')


В архив добавил пример C2r272.
Плагин нужно перенести в папку программы: \Construct 2\exporters\html5\plugins\
Проверить работоспособность плагина можно по ссылке: https://vk.com/app5051482

Я не эксперт в плагинах и JavaScript API для Вконтакте, то этому возможны ошибки.


По возможности добавлю ещё функций. Но я не шарю в плагинах, этот кое как стабилен. По этому просить, например, добавить функции оплаты не надо.


 Если кто-то хочет и может починить старый плагин
Прикрепляю html-код, по которому проходит авторизация (загружал вместо приложения только файл index.html с этим кодом для проверки методов). В моём плагине авторизация примерно такая же.

Почему не работает старый плагин (не только по этому, но в том числе):
Если приложение открывается во Вконтакте, то ID пользователя приложение получает автоматически, и для вызовов методов можно отправить пустой user_ids="" и серверная часть ВК автоматически подставит нужный (https://vk.com/dev/users.get тут внизу есть пример запроса, если очистите user_ids, то получите себя). Но если в плагине оставлять user_ids="", то ничего не получается, а если вообще не отправлять user_ids (удалить в коде), то всё работает. Далее, при вызове метода users.get в ответ автоматически придёт 5 параметров. Соответственно вызывать их не надо (в приложеном html-коде видно, что вызываю только "photo_50" (ссылку на фото 50х50), а получаю в массив 6 элементов.

Также прикрепляю старый плагин (ссылка на тему плагина viewtopic.php?t=578 ). Этот плагин имеет больше функций. Если кто-то сможет починить его - буду благодарен (у меня не получилось починить).
Код: Выделить всё
<html>
<head>
<script src="https://vk.com/js/api/xd_connection.js?2"  type="text/javascript"></script>
</head>
<body>
<script type="text/javascript" language="javascript">
  VK.init(function() {
                VK.api("users.get", {
                    "fields": "photo_50"},
               function(data) {
                  var arr = '';
                        var val = data.response[0];
                        var JsonAr2Constract = new Object();
                        var inner = [];
                        JsonAr2Constract["c2array"] = 1;

                        inner["0"] = [[val["id"]], [val["first_name"]], [val["last_name"]], [val["id_closed"]], [val["can_access_closed"]], [val["photo_50"]]];

                        JsonAr2Constract["data"] = inner;
                        JsonAr2Constract["size"] = ['1', '6', '1'];

                        arr = JSON.stringify(JsonAr2Constract);
               alert(arr);
                });
  }, function() {
     alert ("no")
}, '5.102');
</script>
</body>
</html>
vk_api_reviver200.rar
(215.99 КБ) Скачиваний: 279
Новый плагин. Версия 2.0
AquaBarbus-c2-vkapi.zip
(716.27 КБ) Скачиваний: 189
Старый плагин (не рабочий)
Аватара пользователя

Модератор
Сообщений: 5331
Я тут с 18 сен 2015
Откуда: Екатеринбург
Двиг: С2/С3
Лицензия: Personal
Репутация 804 [ ? ]

Сообщение [Plugin] VkAPI v2.0
» 03 ноя 2019, 17:44

Обновление плагина.
Нововведения:
  • Добавлены данные о друзьях, установивших приложение;
  • Добавлены действия и условия по запросу данных о пользователе и друзьях.
Более подробную информацию смотрите в первом сообщении.
Аватара пользователя

Модератор
Сообщений: 5331
Я тут с 18 сен 2015
Откуда: Екатеринбург
Двиг: С2/С3
Лицензия: Personal
Репутация 804 [ ? ]

Сообщение [Plugin] VkAPI v2.0
» 04 ноя 2019, 14:38

Добрый день. Увидел у вас добавленный и исправленный плагин для VK. viewtopic.php?f=18&t=15578
Вы пишите:
"Плагин позволяет получить данные о пользователе и друзьях, установивших приложение. Приложение должно быть открыто во Вконтакте, а не по ссылке в браузере"
Вот у меня как раз возникла проблема в установке приложения. Чуть больше пол года назад, игра экспортировалась и загружалась в VK iFrame. И работало на всех устройствах. Но теперь политика в вк загружает игры через систему VK Connect. В итоге на компе работает, а на телефонах только экран загрузки. Подскажите как можно решить проблему. В подгруппе для разработчиков в вк только нашел вот такое сообщение:
Обратите внимание! Мы завершаем поддержку Mobile SDK.
С 1 ноября мы прекратим принимать в каталог игры, которые интегрированы с Direct Games через Mobile SDK. В каталоге будут опубликованы только игры с интеграцией через VK Connect.
https://vk.com/dev/vk_connect_events
Может быть сможете помочь, что нужно сделать после экспорта игры из c2 перед загрузкой игры в vk.
Аватара пользователя

Участник
Сообщений: 5
Я тут с 27 апр 2019
Репутация 0 [ ? ]

Сообщение [Plugin] VkAPI v2.0
» 04 ноя 2019, 18:12

Мой плагин работает на JavaScript SDK (его не отменяют, но и в магазин игр твоё приложение не добавят, по этому распространять лучше как приложение группы), пока что можешь его использовать. Попробую переделать на VK Connect (схожая система, но библиотеки и методы разные), но не быстро, т.к. не шарю в VkAPI и плагинах и делаю всё методом тыка.
Аватара пользователя

Модератор
Сообщений: 5331
Я тут с 18 сен 2015
Откуда: Екатеринбург
Двиг: С2/С3
Лицензия: Personal
Репутация 804 [ ? ]

Сообщение [Plugin] VkAPI v2.0
» 05 ноя 2019, 13:03

Почитал, посмотрел видосики. Чтобы подключить VK Connect нужно умерь работать с React, чтобы конвертировать приложение. Так что тут не плагин нужен, а туториал. Для меня VK Connect откладывается в долгий ящик.
Аватара пользователя

Модератор
Сообщений: 5331
Я тут с 18 сен 2015
Откуда: Екатеринбург
Двиг: С2/С3
Лицензия: Personal
Репутация 804 [ ? ]

Сообщение [Plugin] VkAPI v2.0
» 05 ноя 2019, 23:33

Ну вот. А уж начал надеяться) Неужели выложить игру в VK как приложение стало так геморно. Год назад можно просто было вставить ссылку.
Аватара пользователя

Участник
Сообщений: 5
Я тут с 27 апр 2019
Репутация 0 [ ? ]

Сообщение [Plugin] VkAPI v2.0
» 06 ноя 2019, 07:02

Сейчас тоже можно просто вставить ссылку, его сможет устанавить любой пользователь. Но в Direct Games не добавят, и на телефоне не будет отображаться.
Аватара пользователя

Модератор
Сообщений: 5331
Я тут с 18 сен 2015
Откуда: Екатеринбург
Двиг: С2/С3
Лицензия: Personal
Репутация 804 [ ? ]

Сообщение [Plugin] VkAPI v2.0
» 06 ноя 2019, 20:41

ReviveR200, Добрый вечер, подскажите, пожалуйста, а возможно сделать функцию "запостить себе на стену"?
Аватара пользователя

Участник
Сообщений: 121
Я тут с 05 дек 2013
Репутация 0 [ ? ]

Сообщение [Plugin] VkAPI v2.0
» 06 ноя 2019, 21:43

В будущем добавлю эту функцию
Аватара пользователя

Модератор
Сообщений: 5331
Я тут с 18 сен 2015
Откуда: Екатеринбург
Двиг: С2/С3
Лицензия: Personal
Репутация 804 [ ? ]

Сообщение [Plugin] VkAPI v2.0
» 07 ноя 2019, 21:41

Сейчас тоже можно просто вставить ссылку, его сможет устанавить любой пользователь. Но в Direct Games не добавят, и на телефоне не будет отображаться.

Чтоб на самом телефоне на экране было приложение(мини игра) не нужно. И в каталог соц сети не нужно.
Просто на телефоне в вк зайти нажать и поигать, без рейтинга и тп. То есть установка только в личный аккаунт, без каталога.
Проблема в том, что на компьютере все работает хорошо со всеми настройками и приблудами. А на телефоне только экран загрузки и всё(см приложенную картинку). Хотя пол года работало на ура на любой оси.
tSAsUrHCcvw.jpg
Аватара пользователя

Участник
Сообщений: 5
Я тут с 27 апр 2019
Репутация 0 [ ? ]



Вернуться в Плагины и Дополнения для Construct 2

Сейчас эту тему просматривают

Зарегистрированные пользователи: нет зарегистрированных пользователей

Наверх