Страница 4 из 7

Re: UnAPI - враппер функций ВКонтакте API для Unity

СообщениеДобавлено: 18 июл 2012, 10:24
pharaoh_d
(3A4OT) (3A4OT) (3A4OT)
Спасибо за врапер! Очень полезная штука! Правда как и у остальных secure функции не работают.... сделал через ПХП.

вот собсно результат:http://vk.com/app3024990_137554611?ref=9

во время работы добавил в JSCore пару полезных функций мож кому еще пригодится:

Синтаксис:
Используется csharp
                 public static void hideUnity()
        {
                        Application.ExternalEval(
                                " document.getElementById('unityPlayer').style.visibility = 'hidden';"
            );
        }
                public static void showUnity()
        {
                        Application.ExternalEval(
                                "document.getElementById('unityPlayer').style.visibility = 'visible';"
            );
        }
                public static void alert(string msg)
        {
            Application.ExternalEval(
                                ("alert(msg);").
                                Replace("msg","'Unity say:" + msg + "'"));
        }

первые две функции полезны при открытии вконтактовских Боксов (inviteBox PaymentBox и тп)
а последняя полезна при отладке в IFrame прям на вконтакте.

Re: UnAPI - враппер функций ВКонтакте API для Unity

СообщениеДобавлено: 09 окт 2012, 22:51
THRASHER
Огромное спасибо! взял за основу))

Re: UnAPI - враппер функций ВКонтакте API для Unity

СообщениеДобавлено: 23 ноя 2012, 16:47
Nick_Field
Можно ли написать что-нибудь на стене без добавления фото?
В методе VKWall.SavePost() нашел /*(photo == "" ? "" :*/ ";photo:" + photo/*)*/ которое говорит об обязательной фотографии. Можно ли в таком случае использовать фотографию со стороннего сервера. Ннемного странно грузить скажем одну и ту же картинку на стену пользователю каждый раз при посте на стенку.

Из документации по wall.post:
message - текст сообщения (является обязательным, если не задан параметр attachments). Апи позволяет постить без картинок.

Re: UnAPI - враппер функций ВКонтакте API для Unity

СообщениеДобавлено: 23 ноя 2012, 19:12
Nick_Field
При использовании метода UploadPhotoToWall вываливается следующая ошибка:
Error: Rejected because no crossdomain.xml policy file was found
Как правильно грузить фотографии на стену? URL для загрузки именно на стенку я получил. А тут крэш :-s

UPD: проблема ушла. Хостил на дропбоксе, а там нельзя положить в корень домена crossdomain.xml. Сейчас перехостил и положил файлик в нужное место, все работает. Фотку заливает

Re: UnAPI - враппер функций ВКонтакте API для Unity

СообщениеДобавлено: 26 ноя 2012, 14:59
alex89200
Nick_Field писал(а):Можно ли написать что-нибудь на стене без добавления фото?

Можно. Там либо есть метод, не принимающий вложений, либо просто не указываешь какие аттачменты добавлять. Давно не смотрел, поэтому точно не помню, но склоняюсь ко второму варианту, когда просто не указываешь аттачменты. SavePost() используется только при постинге с вложениями.

Nick_Field писал(а):Можно ли в таком случае использовать фотографию со стороннего сервера.

Нельзя. Апи контакта требует загрузки фото на свои сервера.

Re: UnAPI - враппер функций ВКонтакте API для Unity

СообщениеДобавлено: 26 ноя 2012, 19:11
Nick_Field
Метод wall.savePost оказывается уже запрещен.
Я добавил/изменил пару важных методов в VKWall:

Синтаксис:
Используется csharp
        /// <summary>
        /// Возвращает адрес сервера для загрузки фотографии на стену пользователя. Возвращает объект с единственным полем upload_url
        /// </summary>
        /// <param name="callback">Функция-обработчик результата</param>
        public static void GetPhotoUploadServer(ResponseCallback callback)
        {
            string s = callback.Method.ToString().Remove(0, 5);
            JSCore.Api("photos.getWallUploadServer", "", s.Substring(0, s.IndexOf('(')));
        }

        /// <summary>
        /// Сохраняет фотографию для размещения её на стене пользователя.
        /// </summary>
        /// <param name="uid">id пользователя, на стене которого размещается запись.</param>
        /// <param name="server">параметр, возвращаемый в результате загрузки изображения на сервер.</param>
        /// <param name="photo">параметр, возвращаемый в результате загрузки изображения на сервер.</param>
        /// <param name="hash">параметр, возвращаемый в результате загрузки изображения на сервер.</param>
        /// <param name="callback">Функция-обработчик результата</param>
        public static void SaveWallPhoto(int uid, int server, string photo, string hash, ResponseCallback callback)
        {
            string s = callback.Method.ToString().Remove(0, 5);

            string prs = "uid:" + uid +
                         ";server:" + server +
                         ";photo:" + photo +
                         ";hash:" + hash;

            JSCore.Api("photos.saveWallPhoto", prs, s.Substring(0, s.IndexOf('(')));
        }

        /// <summary>
        /// Сохраняет запись на стене пользователя.
        /// </summary>
        /// <param name="owner_id">Id стены, на которой будет размещен пост</param>
        /// <param name="message">Сообщение</param>
        /// <param name="callback">Функция-обработчик результата</param>
        public static void Post(int owner_id, string message, ResponseCallback callback)
        {
            string s = callback.Method.ToString().Remove(0, 5);

            string prs = "owner_id:" + owner_id +
            (message == "" ? " " : ";message:" + message);
            JSCore.HideUnity();
            JSCore.Api("wall.post", prs, s.Substring(0, s.IndexOf('(')));
        }

        /// <summary>
        /// Сохраняет запись с картинкой на стене пользователя.
        /// </summary>
        /// <param name="owner_id">Id стены, на которой будет размещен пост</param>
        /// <param name="message">Сообщение</param>
        /// <param name="photo_id">Идентификатор фотографии, который представляет собой идущие через знак подчеркивания id пользователя, разместившего фотографию, и id самой фотографии. Пример значения photo_id: 6492_135055734</param>
        /// <param name="callback">Функция-обработчик результата</param>
        public static void PostWithImage(int owner_id, string message, string photo_id, ResponseCallback callback)
        {
            string s = callback.Method.ToString().Remove(0, 5);
            string prs = "owner_id:" + owner_id +
                         ";message:" + message +
                         ";attachments:"+photo_id;
            JSCore.HideUnity();
            JSCore.Api("wall.post", prs, s.Substring(0, s.IndexOf('(')));
        }

Re: UnAPI - враппер функций ВКонтакте API для Unity

СообщениеДобавлено: 03 дек 2012, 22:04
mfedorov
Задача: после прохождения уровня вывести на стену в ВК сообщение. Третий день бьюсь. Есть ли какие то способы сделать запись на стену, не используя JS и WebView ? Если послать в запрос (https://login.vk.com/?act=login&email=МЫЛО&pass=ПАРОЛЬ в ответе responseHeaders - Dictonary приходят пары без tokien. Как быть с официальным запросом (http://oauth.vk.com/authorize?client_id=ИД ПРИЛОЖЕНИЯ&scope=ЗАПРОС НА ДОСТУП&display=page&redirect_uri=https://oauth.vk.com/blank.html&response_type=token) на android проекте вообще не понятно. Буду признателен за любую помощь.

Re: UnAPI - враппер функций ВКонтакте API для Unity

СообщениеДобавлено: 14 янв 2013, 22:27
pie
Здравствуйте!
Как можно получить JSON ответ от VK вместо XML.
В настройках VKRequests ставлю JSON.
Далее есть код:
Синтаксис:
Используется csharp
using UnityEngine;
using VK.Core;
using VK.VKApi;

public class Profile : MonoBehaviour {
        public string vkId;
        public string name;
       
        public void Start() {
                JSCore.GameObjName = gameObject.name;
                VKUsers.GetProfiles(vkId, UsrFields.photo_medium, NameCase.nom_Default, OnGetProfiles);
        }

        public void OnGetProfiles(string Response) {
                name = Response;
        }
       
        public void OnGUI() {
                GUI.Label(new Rect(0, 0, Screen.width, Screen.height), name);
        }


Ответ приходит в XML. Спасибо!

Re: UnAPI - враппер функций ВКонтакте API для Unity

СообщениеДобавлено: 30 мар 2013, 12:18
Huruffus
Здравствуйте. Можно ли использовать VK api где-нибудь кроме веб версии (к примеру авторизация с помощью VK в игре для PC)?

Re: UnAPI - враппер функций ВКонтакте API для Unity

СообщениеДобавлено: 02 май 2013, 12:55
JIeo_NEED
Nick_Field писал(а):Метод wall.savePost оказывается уже запрещен.
Я добавил/изменил пару важных методов в VKWall:

Синтаксис:
Используется csharp
        /// <summary>
        /// Возвращает адрес сервера для загрузки фотографии на стену пользователя. Возвращает объект с единственным полем upload_url
        /// </summary>
        /// <param name="callback">Функция-обработчик результата</param>
        public static void GetPhotoUploadServer(ResponseCallback callback)
        {
            string s = callback.Method.ToString().Remove(0, 5);
            JSCore.Api("photos.getWallUploadServer", "", s.Substring(0, s.IndexOf('(')));
        }

        /// <summary>
        /// Сохраняет фотографию для размещения её на стене пользователя.
        /// </summary>
        /// <param name="uid">id пользователя, на стене которого размещается запись.</param>
        /// <param name="server">параметр, возвращаемый в результате загрузки изображения на сервер.</param>
        /// <param name="photo">параметр, возвращаемый в результате загрузки изображения на сервер.</param>
        /// <param name="hash">параметр, возвращаемый в результате загрузки изображения на сервер.</param>
        /// <param name="callback">Функция-обработчик результата</param>
        public static void SaveWallPhoto(int uid, int server, string photo, string hash, ResponseCallback callback)
        {
            string s = callback.Method.ToString().Remove(0, 5);

            string prs = "uid:" + uid +
                         ";server:" + server +
                         ";photo:" + photo +
                         ";hash:" + hash;

            JSCore.Api("photos.saveWallPhoto", prs, s.Substring(0, s.IndexOf('(')));
        }

        /// <summary>
        /// Сохраняет запись на стене пользователя.
        /// </summary>
        /// <param name="owner_id">Id стены, на которой будет размещен пост</param>
        /// <param name="message">Сообщение</param>
        /// <param name="callback">Функция-обработчик результата</param>
        public static void Post(int owner_id, string message, ResponseCallback callback)
        {
            string s = callback.Method.ToString().Remove(0, 5);

            string prs = "owner_id:" + owner_id +
            (message == "" ? " " : ";message:" + message);
            JSCore.HideUnity();
            JSCore.Api("wall.post", prs, s.Substring(0, s.IndexOf('(')));
        }

        /// <summary>
        /// Сохраняет запись с картинкой на стене пользователя.
        /// </summary>
        /// <param name="owner_id">Id стены, на которой будет размещен пост</param>
        /// <param name="message">Сообщение</param>
        /// <param name="photo_id">Идентификатор фотографии, который представляет собой идущие через знак подчеркивания id пользователя, разместившего фотографию, и id самой фотографии. Пример значения photo_id: 6492_135055734</param>
        /// <param name="callback">Функция-обработчик результата</param>
        public static void PostWithImage(int owner_id, string message, string photo_id, ResponseCallback callback)
        {
            string s = callback.Method.ToString().Remove(0, 5);
            string prs = "owner_id:" + owner_id +
                         ";message:" + message +
                         ";attachments:"+photo_id;
            JSCore.HideUnity();
            JSCore.Api("wall.post", prs, s.Substring(0, s.IndexOf('(')));
        }


Подскажите, пожалуйста, почему пост на стене размещается, а callback не идет?
Не возвращает ничегошеньки!

Re: UnAPI - враппер функций ВКонтакте API для Unity

СообщениеДобавлено: 07 май 2013, 13:13
alex89200
JIeo_NEED писал(а):Подскажите, пожалуйста, почему пост на стене размещается, а callback не идет?
Не возвращает ничегошеньки!

Возможно изменилась структура возвращаемых данных. Покопайтесь в JavaScript коде враппера.

Re: UnAPI - враппер функций ВКонтакте API для Unity

СообщениеДобавлено: 09 май 2013, 17:09
Good1101
JIeo_NEED писал(а):
Nick_Field писал(а):Метод wall.savePost оказывается уже запрещен.
Я добавил/изменил пару важных методов в VKWall:

Синтаксис:
Используется csharp
        /// <summary>
        /// Возвращает адрес сервера для загрузки фотографии на стену пользователя. Возвращает объект с единственным полем upload_url
        /// </summary>
        /// <param name="callback">Функция-обработчик результата</param>
        public static void GetPhotoUploadServer(ResponseCallback callback)
        {
            string s = callback.Method.ToString().Remove(0, 5);
            JSCore.Api("photos.getWallUploadServer", "", s.Substring(0, s.IndexOf('(')));
        }

        /// <summary>
        /// Сохраняет фотографию для размещения её на стене пользователя.
        /// </summary>
        /// <param name="uid">id пользователя, на стене которого размещается запись.</param>
        /// <param name="server">параметр, возвращаемый в результате загрузки изображения на сервер.</param>
        /// <param name="photo">параметр, возвращаемый в результате загрузки изображения на сервер.</param>
        /// <param name="hash">параметр, возвращаемый в результате загрузки изображения на сервер.</param>
        /// <param name="callback">Функция-обработчик результата</param>
        public static void SaveWallPhoto(int uid, int server, string photo, string hash, ResponseCallback callback)
        {
            string s = callback.Method.ToString().Remove(0, 5);

            string prs = "uid:" + uid +
                         ";server:" + server +
                         ";photo:" + photo +
                         ";hash:" + hash;

            JSCore.Api("photos.saveWallPhoto", prs, s.Substring(0, s.IndexOf('(')));
        }

        /// <summary>
        /// Сохраняет запись на стене пользователя.
        /// </summary>
        /// <param name="owner_id">Id стены, на которой будет размещен пост</param>
        /// <param name="message">Сообщение</param>
        /// <param name="callback">Функция-обработчик результата</param>
        public static void Post(int owner_id, string message, ResponseCallback callback)
        {
            string s = callback.Method.ToString().Remove(0, 5);

            string prs = "owner_id:" + owner_id +
            (message == "" ? " " : ";message:" + message);
            JSCore.HideUnity();
            JSCore.Api("wall.post", prs, s.Substring(0, s.IndexOf('(')));
        }

        /// <summary>
        /// Сохраняет запись с картинкой на стене пользователя.
        /// </summary>
        /// <param name="owner_id">Id стены, на которой будет размещен пост</param>
        /// <param name="message">Сообщение</param>
        /// <param name="photo_id">Идентификатор фотографии, который представляет собой идущие через знак подчеркивания id пользователя, разместившего фотографию, и id самой фотографии. Пример значения photo_id: 6492_135055734</param>
        /// <param name="callback">Функция-обработчик результата</param>
        public static void PostWithImage(int owner_id, string message, string photo_id, ResponseCallback callback)
        {
            string s = callback.Method.ToString().Remove(0, 5);
            string prs = "owner_id:" + owner_id +
                         ";message:" + message +
                         ";attachments:"+photo_id;
            JSCore.HideUnity();
            JSCore.Api("wall.post", prs, s.Substring(0, s.IndexOf('(')));
        }


Подскажите, пожалуйста, почему пост на стене размещается, а callback не идет?
Не возвращает ничегошеньки!

У меня возвращает сейчас проверял

Re: UnAPI - враппер функций ВКонтакте API для Unity

СообщениеДобавлено: 28 июн 2013, 13:08
Nicloay
кто будет работать на маке и столкнется с проблемой кодировки, следующая команда конвертнет файлы в utf-8 запускать из папки пакета. правда JSEvents сразу в utf поэтому его конвертить не надо

Синтаксис:
Используется csharp
for filename in $(find . -name *.cs); do iconv -f cp1251 -t utf-8 $filename > $filename.tmp ; mv -f $filename.tmp $filename;done
 


п.с. уже сконверченый прикреплен зааплоадил сюда.

Re: UnAPI - враппер функций ВКонтакте API для Unity

СообщениеДобавлено: 06 июл 2013, 18:43
D.Silver
Мужики, если кого не затруднит.

Помогите разобраться с этим связыванием юньки и апи вк.
Может ли кто-то, просто мне на пальцах по шагово объяснить, на яве, как обратится к апи к с запросом параметров профиля. Врапер этот конечно классный, но хочется понять всю суть (базу) и на яве.

п.с Изрыл десятки страниц гугла, не нашел нормально объяснения для "нубов" как юнити взаимодействует с вк апи. 90% инфы это "возьмите это и скопируйте!"
Что я пока (по-нубски) понял, это то что юнити посредством Application.ExternalEval вызывает ява скрипт, но дальше без вашей помощи добрые люди не могу проехать =) Объясните принципы пожалуйста.

Re: UnAPI - враппер функций ВКонтакте API для Unity

СообщениеДобавлено: 06 июл 2013, 23:24
Kayler
D.Silver писал(а):Мужики, если кого не затруднит.

Помогите разобраться с этим связыванием юньки и апи вк.
Может ли кто-то, просто мне на пальцах по шагово объяснить, на яве, как обратится к апи к с запросом параметров профиля. Врапер этот конечно классный, но хочется понять всю суть (базу) и на яве.

п.с Изрыл десятки страниц гугла, не нашел нормально объяснения для "нубов" как юнити взаимодействует с вк апи. 90% инфы это "возьмите это и скопируйте!"
Что я пока (по-нубски) понял, это то что юнити посредством Application.ExternalEval вызывает ява скрипт, но дальше без вашей помощи добрые люди не могу проехать =) Объясните принципы пожалуйста.


там вроде в пакете есть небольшая документация