Not Posting Scores to Leaderboard (Google Play Game Services)

I followed this tutorial for integrating Google Play Game Services (GPGS) into my game: http://coronalabs.com/blog/2013/06/25/tutorial-introducing-google-play-game-services/

Everything seems to be working correctly, except no scores are being posted to the leaderboard. Players are able to login and view leaderboards, but they are empty. The leaderboard says “There are no public high scores for this game.”

The app is published and so is the ‘game services’ that is linked to it. 

Any help would be greatly appreciated, thank you!

Build.settings

[lua]settings =
{
android =
{
usesPermissions =
{
“android.permission.VIBRATE”,
“android.permission.INTERNET”,
“com.android.vending.CHECK_LICENSE”,
“com.android.vending.BILLING”,
},

googlePlayGamesAppId = “###########”, – I’m using the correct Google Play Games App Id here (removed for this forum post)
},
plugins =
{
– key is the name passed to Lua’s ‘require()’
[“CoronaProvider.gameNetwork.google”] =
{
– required
publisherId = “com.coronalabs”,
supportedPlatforms = { android = true }
},
[“CoronaProvider.ads.admob”] =
{
– required
publisherId = “com.coronalabs”,
},
}
}[/lua]

config.lua

[lua]application =
{
content =
{
graphicsCompatibility = 1, --this turns on V1 Compatibility mode
width = 1080,
height = 1920,
scale = “letterbox”
},

license = {
google = {
key = “My Key”, – removed key for this forum post, using correct key here
},
},
}[/lua]

relevant code in main.lua

[lua]local gameNetwork = require( “gameNetwork” )
local playerName

local function loadLocalPlayerCallback( event )
playerName = event.data.alias
–saveSettings() --save player data locally using your own “saveSettings()” function
end

local function gameNetworkLoginCallback( event )
gameNetwork.request( “loadLocalPlayer”, { listener=loadLocalPlayerCallback } )
return true
end

local function gpgsInitCallback( event )
gameNetwork.request( “login”, { userInitiated=true, listener=gameNetworkLoginCallback } )
end

local function gameNetworkSetup()
if ( system.getInfo(“platformName”) == “Android” ) then
gameNetwork.init( “google”, gpgsInitCallback )
else
gameNetwork.init( “gamecenter”, gameNetworkLoginCallback )
end
end

local function submitScoreListener(event)

if difficulty ==1 then
local leaderboardId = “My Leaderboard ID1” – correct ID is used here, but edited out for post
elseif difficulty ==2 then
local leaderboardId = “My Leaderboard ID2” – correct ID is used here, but edited out for post
elseif difficulty ==3 then
local leaderboardId = “My Leaderboard ID3” – correct ID is used here, but edited out for post
end

gameNetworkSetup()

if difficulty ==1 then
gameNetwork.request(“setHighScore”,
{
localPlayerScore =
{
category = leaderboardId, 
value = tonumber(highScore), – The score to submit
listener = requestCallback
}
})
end

if difficulty ==2 then
gameNetwork.request(“setHighScore”,
{
localPlayerScore =
{
category = leaderboardId, 
value = tonumber(highScore2), – The score to submit
listener = requestCallback
}
})
end

if difficulty ==3 then
gameNetwork.request(“setHighScore”,
{
localPlayerScore =
{
category = leaderboardId, 
value = tonumber(highScore3), – The score to submit
listener = requestCallback
}
})
end

if ( system.getInfo(“platformName”) == “Android” ) then
gameNetwork.show( “leaderboards” )
else
gameNetwork.show( “leaderboards”, { leaderboard = {timeScope=“AllTime”} } )
end
return true

end

local function unlockAchievementListener(event)
gameNetwork.request(“unlockAchievement”,
{
achievement =
{
identifier = achievementId – The id of the achievement to unlock for the current user
}
})
end

local function showLeaderboards( event )
if ( system.getInfo(“platformName”) == “Android” ) then
gameNetwork.show( “leaderboards” )
else
gameNetwork.show( “leaderboards”, { leaderboard = {timeScope=“AllTime”} } )
end
return true
end

local function showAchievements( event )
gameNetwork.show( “achievements” )
return true
end[/lua]

submitScoreListener is called later in main by pressing a “Leaderboard button” in the game

[lua]globalHighBtn = display.newImage(‘global_hs.png’, -1, display.contentHeight)
transition.to(globalHighBtn, {time = 0, delay=2000, x=320, y = 1170, onComplete = function() globalHighBtn:addEventListener(‘tap’, submitScoreListener) end})[/lua]

There are three leaderboards (easy, normal, hard)

‘difficulty’ is a variable that says if game is in easy, normal, or hard mode (1,2,or 3) - this is working correctly when submitScoreListener is called

highScore1, highScore2, and highScore3 all working correctly when submitScoreListener is called

adb logcat in command prompt (when submitScoreListener() is called):

V/Corona (22296): > Class.forName: CoronaProvider.gameNetwork.google.LuaLoader
V/Corona (22296): < Class.forName: CoronaProvider.gameNetwork.google.LuaLoader
V/Corona (22296): Loading via reflection: CoronaProvider.gameNetwork.google.Lua
Loader

Topic resolved. Removed leaderboards and created new ones in Google Developer Console. Then followed recommendations here: http://forums.coronalabs.com/topic/44198-wow-steps-to-set-a-simple-leaderboard-in-google-play-services-console/?hl=sethighscore#entry231399

Topic resolved. Removed leaderboards and created new ones in Google Developer Console. Then followed recommendations here: http://forums.coronalabs.com/topic/44198-wow-steps-to-set-a-simple-leaderboard-in-google-play-services-console/?hl=sethighscore#entry231399