2013-07-27 5 views
0

Я пытаюсь внедрить Game Center в свою игру, но у меня проблемы с ним.Проблема с игровым центром на Monotouch

Вот мой Main.cs код:

namespace iosgame 
{  
    public class Application 
    { 
     [Register ("AppDelegate")] 
     public partial class AppDelegate : IOSApplication { 

      MainViewController mainViewController; 

      public AppDelegate(): base(new Game(new StaticsDatabase(),new StoreDatabase(),new InappPurchase(),new Social(),new MissionsDatabase()), getConfig()) { 

      } 

      internal static IOSApplicationConfiguration getConfig() { 
       IOSApplicationConfiguration config = new IOSApplicationConfiguration(); 
       config.orientationLandscape = true; 
       config.orientationPortrait = false; 
       config.useAccelerometer = false; 
       config.useMonotouchOpenTK = true; 
       config.useObjectAL = true; 
       return config; 
      } 

      // 
      // This method is invoked when the application has loaded and is ready to run. In this 
      // method you should instantiate the window, load the UI into it and then make the window 
      // visible. 
      // 
      // You have 17 seconds to return from this method, or iOS will terminate your application. 
      // 
      public override bool FinishedLaunching (UIApplication app, NSDictionary options) 
      { 
       base.FinishedLaunching(app,options); 
       UIViewController controller = ((IOSApplication)Gdx.app).getUIViewController(); 
       mainViewController = new MainViewController(); 
       controller.View.Add(mainViewController.View); 



       return true; 
      } 

      private bool isGameCenterAPIAvailable() 
      { 
       return UIDevice.CurrentDevice.CheckSystemVersion (4, 1); 
      } 
     } 

     static void Main (string[] args) 
     { 
      UIApplication.Main (args, null, "AppDelegate"); 
     } 
    } 
} 

А вот суперкласс что Main.cs: https://github.com/libgdx/libgdx/blob/master/backends/gdx-backend-iosmonotouch/src/com/badlogic/gdx/backends/ios/IOSApplication.java

Я пытаюсь использовать этот https://github.com/xamarin/monotouch-samples/blob/master/GameCenterSample/GameCenterSample/MainViewController.cs пример, но я не могу видеть любое окно проверки подлинности в моей игре. Я могу видеть уведомление «Добро пожаловать назад, имя», но после того, как я выхожу из приложения gamecenter и снова открою свою игру, но я не вижу окна проверки подлинности.

Как я могу это исправить?

Заранее спасибо

ответ

2

Просто позвоните это в FinishedLaunching:

if (!GKLocalPlayer.LocalPlayer.Authenticated) { 
    GKLocalPlayer.LocalPlayer.Authenticate (error => { 
     if (error != null) 
      Console.WriteLine("Error: " + error.LocalizedDescription); 
    }); 
} 

Это должно отображать Game Center "тост", говоря "Добро пожаловать, Игрок 1".

Вот некоторые идеи, если это не работает:

  • Убедитесь, что вы настроили новый пакет идентификатор на портале для разработчиков, и объявить его в Info.plist
  • Начните заполнять свои данные приложения в iTunes connect (минимальное описание, ключевые слова, значок, 1 снимок экрана), и обязательно включите Game Center и добавьте новую игру в группу
  • Войти с помощью пользователя iTunes в Game Center (создайте в ITC) или логин, связанный с вашей учетной записью разработчика

PS - Я бы не стал беспокоиться о проверке iOS 4.1, просто нацеленной на iOS 5.0 и выше в эти дни.

+0

Спасибо за ваш ответ. Я уже делаю это в своем коде приложения. Но у меня другая проблема. Иногда я вижу «приветствовать назад, игрок 1», но я не могу видеть окно входа в систему, когда я выхожу из системы из приложения Game Center. У меня нет проблемы с образцом приложения. Вероятно, в настоящее время представлен вид входа, но он находится ниже моего собственного контроллера uiview. Как окно auth в игровом центре знает, что он будет использовать какой uiview для отображения этого входа в систему? – droidmachine

+0

любое представление об этом? – droidmachine

+0

Вы видите что-нибудь напечатанное на консоли из моего примера выше? Любые другие ошибки в консоли? – jonathanpeppers

Смежные вопросы