Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/ios/115.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Corona sdk-游戏网络&x2B;游戏中心iOs不工作_Ios_Lua_Coronasdk_Game Center - Fatal编程技术网

Corona sdk-游戏网络&x2B;游戏中心iOs不工作

Corona sdk-游戏网络&x2B;游戏中心iOs不工作,ios,lua,coronasdk,game-center,Ios,Lua,Coronasdk,Game Center,我对这个问题越来越着迷了。仅仅遵循如何使用gameNetwork的指南,并没有成功。这是我的密码: 梅因·卢阿 gameNetwork = require "gameNetwork" loggedIntoGC = false local function initCallback( event ) if event.data then loggedIntoGC = true -- native.showAlert( "Success!", "User has logged i

我对这个问题越来越着迷了。仅仅遵循如何使用gameNetwork的指南,并没有成功。这是我的密码:

梅因·卢阿

gameNetwork = require "gameNetwork"
loggedIntoGC = false


local function initCallback( event )
if event.data then
    loggedIntoGC = true
    -- native.showAlert( "Success!", "User has logged into Game Center", { "OK" } )
else
    loggedIntoGC = false
    gameNetwork.request( "loadScores", 
        { leaderboard={ category="com.mycompany.mygame.myrankingid", 
        playerScope="Global", timeScope="AllTime", range={1,50} },
        listener=requestCallback } )

    -- native.showAlert( "Fail", "User is not logged into Game Center", { "OK" } )
end
end

-- function to listen for system events
local function onSystemEvent( event ) 
if event.type == "applicationStart" then
    gameNetwork.init( "gamecenter", initCallback )
    return true
end
end
Runtime:addEventListener( "system", onSystemEvent )
然后,我们来测试一下:

if loggedIntoGC then 
gameNetwork.request( "setHighScore", 
  { localPlayerScore={ category="com.mycompany.mygame.myrankingid", value=t.text }, 
  listener=requestCallback } ); 
end

if loggedIntoGC then 
gameNetwork.request( "loadScores", 
  { leaderboard={ category="com.mycompany.mygame.myrankingid", playerScope="Global", timeScope="AllTime", range={1,50} }, 
  listener=requestCallback } ); 
end

if loggedIntoGC then 
gameNetwork.show( "leaderboards", 
  { leaderboard={ category="com.mycompany.mygame.myrankingid", timeScope="AllTime" } }     ); 
end
在设备上尝试示例不做任何事情,只需登录游戏中心用户


有什么帮助吗?

在您的
初始化回调中,如果
event.data
为false,这意味着gameNetwork无法登录到服务器,因此请求分数将失败。您应该检查错误:

local function scoresCallback(event)
    print("Got " .. #event.data .. " scores")
    print("Local player score: " .. event.localPlayerScore)
end

local function initCallback( event )
    if event.data then
        loggedIntoGC = true
        print('Successful login')
        gameNetwork.request( "loadScores", 
        { 
            leaderboard = { 
                category = "com.mycompany.mygame.myrankingid", 
                playerScope = "Global", 
                timeScope = "AllTime", 
                range={1,50} 
            },
            listener = scoresCallback,
        } )

    else
        loggedIntoGC = false
        print("Error init game center: ", event.errorMessage)
    end
end

在sim卡中运行上述代码并查看控制台;在设备上运行它并查看日志文件。这可能会为这个问题提供线索

感谢您的帮助,但登录仍在工作,问题是排行榜总是空的…@Eusthace您可以从更新的答案运行更新的代码,并通过日志文件说明模拟器控制台输出和设备上发生了什么。