2
我認爲我遵循了所有必要的步驟來支持我的遊戲中的排行榜(並且它們在iOS上運行得很好),但是在tvOS上無法配置GKGameCenterViewController
以顯示特定排行榜,LeaderboardIdentifier
屬性很簡單失蹤(就像ViewState
):如何在tvOS上顯示GameCenter排行榜?
var leaderboardController = new GKGameCenterViewController();
// Unavailable on tvOS
/*
leaderboardController.ViewState = GKGameCenterViewControllerState.Default;
leaderboardController.LeaderboardIdentifier = "myLeaderboardId";
*/
leaderboardController.Finished += (sender, e) =>
{
leaderboardController.DismissViewController (true, null);
}
PresentViewController (leaderboardController, true, null);
而不是使用這些屬性,我跟着指示here。我注意到這會在最終的應用程序包中生成一個GKGameCenterContent.plist
文件。我雙重檢查內容:
<?xml version="1.0" encoding="UTF-8"?>
<!DOCTYPE plist PUBLIC "-//Apple//DTD PLIST 1.0//EN" "http://www.apple.com/DTDs/PropertyList-1.0.dtd">
<plist version="1.0">
<dict>
<key>GKLeaderboards</key>
<array>
<dict>
<key>identifier</key>
<string>myLeaderboardId</string>
<key>onDemandResourcesTag</key>
<string>com.apple.gamecenter.Leaderboard</string>
<key>posterImageName</key>
<string>Leaderboard/Poster</string>
</dict>
</array>
</dict>
</plist>
這看起來完全正確的,也是圖像是當然的捆綁。不過,使用上面的代碼來顯示遊戲中心控制器只會給我成就屏幕,沒有別的。
這就是我所做的。 – Krumelur
好的。我沒有關注這個鏈接。剛剛看到,這是我的問題 – Stefan
對我來說,它工作得很好。我想你已經成功創建了iTunesConnect中的排行榜,並且你在iOS和AppleTV遊戲中使用了相同的排行榜? – Stefan