Как получить подробности об ошибке от FBResult в Facebook Unity SDK

Есть ли способ получить информацию об ошибке из вызова FB.API() в Facebook Unity SDK? Этот код

FB.API(
  query: "/me/achievements",
  callback: response => {
    if (!string.IsNullOrEmpty(response.Error)) {
      Logger.LogError("FB ReportProgress Error: " + response.Error);
    } else {
      Logger.Log("FB ReportProgress response: " + response.Text);
    }
  },
  method: Facebook.HttpMethod.POST,
  formData: new Dictionary<string, string>() {{"achievement", url}}
);

логи "400 Bad Request" и больше ничего.

1 ответ

Сначала вы должны включить отладчик MonoDevelop:

  • В MonoDevelop зайдите в Настройки, затем Unity > Debugger
  • Снимите флажок "Создать проект в MonoDevelop" и нажмите "ОК".
  • Run > Attach To Process...
  • Выбрать Unity Editorнажмите ОК

Затем установите точку останова внутри обратного вызова. Выберите эту строку в своем коде и выберите Run > New Breakpoint...

Logger.LogError("FB ReportProgress Error: " + response.Error);

Затем нажмите Play в Unity и активируйте ошибку (точку останова). Это переключится на MonoDevelop. Вниз в Locals окно отладки (которое должно быть где-то во вкладке, в противном случае View > Debug Windows > Locals) расширить FBResult объект. Фактическое сообщение об ошибке (которое, я полагаю, вам нужно) можно найти под FBResult > data > responseHeaderString,

Дополнительная информация об отладке MonoDevelop: http://unitygems.com/debugging-game-monodevelop/

Другие вопросы по тегам