API графика Facebook: оценка параметра должна быть целым числом

Я использую SDK версии 7.4, когда я отправляю счет, я получаю эту ошибку

оценка, отправленная в fb{"error":{"message":"(#100) Оценка параметра должна быть целым числом","type":"OAuthException","code":100,"fbtrace_id":"ElqTb0bxXz4"} }

Соответствующий код

var scoreData = new Dictionary<string ,string> ();
    scoreData ["score"] = UnityEngine.Random.Range (10f, 500f).ToString();
    FB.API("/me/scores?fields=",HttpMethod.POST,delegate(IGraphResult result){
    Debug.Log("score posted to the fb"+result.RawResult.ToString());


    },scoreData);

Любое предложение или ответ приветствуется


person dreamer1989    schedule 08.04.2016    source источник


Ответы (2)


У меня была такая же ошибка, и я исправил ее сегодня.

Проблема в том, что я не преобразовывал целочисленный класс в строку. Проблема может заключаться в том, что ваши результаты сохраняются как числа с плавающей запятой, и когда вы конвертируете их в ToString, они преобразуются как 2.00, таким образом, не являясь целым числом, как Facebook. Запросы.

Я создал переменную:

int intScore = (int)myScore.

А потом просто добавил его в свой диктант.

var dict = new Dictionary<string, string>();
dict["score"] = myScore.ToString;

Это работало безупречно.

person Emilio Estrada    schedule 04.01.2018

person    schedule
comment
не пробовал, просто догадался из сообщения об ошибке - person Nika Kasradze; 08.04.2016
comment
аргумент #4' cannot convert System.Collections.Generic.Dictionary‹string,int›» выражение для типа «UnityEngine.WWWForm» - person dreamer1989; 08.04.2016
comment
о, хорошо, тогда попробуйте это: var scoreData = new Dictionary‹string ,string› (); scoreData [счет] = UnityEngine.Random.Range (10, 500).ToString(); - person Nika Kasradze; 08.04.2016
comment
единственная разница в том, что Random(10f, 500f) может возвращать 395,46, что не является целым числом, в то время как Random(10, 500) даст вам только целые числа - person Nika Kasradze; 08.04.2016
comment
Хорошо, похоже, работает, просто выдает ошибку. Требуется расширенное разрешение. - person dreamer1989; 08.04.2016