facebook.showDialog()

类型 函数
返回值 事件
修订 版本 2024.3703
关键字 Facebook, showDialog
另请参阅 facebook.login()
facebook.*
fbconnect

概述

显示一个交互式 Facebook UI 对话框,可用于将帖子发布到用户的流、邀请好友使用您的应用等。如果您需要由应用程序本身进行发布,请使用 facebook.request()

对话框的响应以 fbconnect 事件的形式返回,该事件会发送到 facebook.setFBConnectListener()facebook.login() 中指定的监听器。

语法

facebook.showDialog( action, params )
action (必需)

String. 您想要显示的对话框。有效选项包括

params (必需)

Table. Lua 表格的key-value对被作为参数传递到 Facebook API 调用。您在此传递的键对应于与您要显示的对话框可用的特定参数 — 有关详细信息,请参见下面的 Share DialogGame Requests Dialog

分享对话框

显示用于共享内容的 Facebook 对话框。对于此对话框,action 应为 "link""photo"

注意
  • 在 Android 上,要从您的应用发布共享链接,您必须确保从 Corona 模拟器构建应用时提供的 应用程序名称 匹配 Facebook Developer Portal 中的 显示名称 字段。对于 Solar2D Native 开发者,此要求已在此 概述。

  • 要使用 Share Dialog 分享照片,设备上 必须 安装版本 7.0 或更高版本的 Facebook 应用。

对于此对话框,params 表格可以包含以下key-value对。请注意,某些键是必需的,而另一些键则不是。

游戏请求对话框

显示一个原生视图,允许用户向他们选择的密友发送游戏请求。对于此对话框,action 应该为 "requests"

注释

对于此对话框,params 表格可以包含以下key-value

示例

分享对话框
local facebook = require( "plugin.facebook.v4" )

local function facebookListener( event )

    if ( "session" == event.type ) then
        if ( "login" == event.phase ) then

            local shareParams = {
                link = "https://www.coronalabs.com/",
                title = "Corona Labs"
            }
            facebook.showDialog( "link", shareParams )
        end

    elseif ( "dialog" == event.type ) then
        print( event.response )
    end
end

facebook.login( facebookListener )
游戏请求
local facebook = require( "plugin.facebook.v4" )

local function facebookListener( event )

    if ( "session" == event.type ) then
        if ( "login" == event.phase ) then
        
            facebook.showDialog( "requests", 
                { 
                    message = "You should download this game!",
                    filter = "APP_NON_USERS"
                })
        end

    elseif ( "dialog" == event.type ) then
        print( event.response )
    end
end

facebook.login( facebookListener )