Ad Mob插屏广告在CoronaSDK上仅显示一次。

我建立了一个小的 main.lua 来测试 admobs 的广告,但我在插页式广告上遇到了问题。

-- 广告提供商的名称。
local provider = "admob"

-- 您的应用程序ID
local appID = "ca-app-pub-7171907831713303/2674724079"

-- 加载 Corona 'ads' 库
local ads = require "ads"

--------------------------------------------------------------------------------
-- 设置广告提供商
--------------------------------------------------------------------------------

-- 创建文本对象以显示广告状态
local statusText = display.newText( "", 0, 0, native.systemFontBold, 22 )
statusText:setTextColor( 255 )
statusText:setReferencePoint( display.CenterReferencePoint )
statusText.x, statusText.y = display.contentWidth * 0.5, 160

local showAd

-- 设置广告侦听器。
local function adListener( event )
    -- 事件表包括:
    --      event.provider
    --      event.isError(例如,True/False)

    local msg = event.response

    -- 只是一个快速的调试消息,用于检查我们从库中获得了什么响应
    print("从广告库接收到的消息:", msg)

    if event.isError then
        statusText:setTextColor( 255, 0, 0 )
        statusText.text = "加载广告时发生错误"
        statusText.x = display.contentWidth * 0.5

        showAd( "banner" )
    else
        statusText:setTextColor( 0, 255, 0 )
        statusText.text = "广告加载成功"
        statusText.x = display.contentWidth * 0.5
    end
end

-- 使用您希望使用的提供程序初始化 'ads' 库。
if appID then
    ads.init( provider, appID, adListener )
end

--------------------------------------------------------------------------------
-- UI
--------------------------------------------------------------------------------

-- 初始变量
local sysModel = system.getInfo("model")
local sysEnv = system.getInfo("environment")

-- 为应用创建背景
local backgroundImg = display.newImageRect( "space.png", display.contentWidth,  display.contentHeight )
backgroundImg:setReferencePoint( display.TopLeftReferencePoint )
backgroundImg.x, backgroundImg.y = 0, 0
statusText:toFront()

-- 显示特定类型的广告
showAd = function( adType )
    local adX, adY = display.screenOriginX, display.screenOriginY
    statusText.text = ""
    ads.show( adType, { x=adX, y=adY } )
end

-- 如果在模拟器上,请告诉用户他们必须为设备或 Xcode 模拟器构建
if sysEnv == "simulator" then
    local font, size = native.systemFontBold, 22
    local warningText = display.newText( "请为设备或 Xcode 模拟器构建以测试此示例。", 0, 0, 290, 300, font, size )
    warningText:setTextColor( 255 )
    warningText:setReferencePoint( display.CenterReferencePoint )
    warningText.x, warningText.y = display.contentWidth * 0.5, display.contentHeight * 0.5
else
    -- 从插页式广告开始
    showAd( "插页式" )
end

我已经在我的设备上测试了这个应用程序,第一次启动时一切正常。 但是之后没有显示任何广告。 我需要等多久才能看到广告?

问题可能是什么?

点赞
用户3041972
用户3041972

这是因为你只调用了一次。你需要在循环中使用延迟或在持续发生的任何事件中调用它。

你必须不断地调用 showAd("interstitial")。

2015-05-28 08:21:21