类型 函数 返回值 事件 修订版 版本 2024.3703 关键字 Facebook、showDialog 另请参阅 facebook.login() facebook.* fbconnect 
显示交互式 Facebook UI 对话框,用于在用户的动态中发布帖子、邀请好友加入您的应用等。如果您需要应用本身发布帖子,请使用 facebook.request()。
对话框的响应以 fbconnect 事件的形式返回,该事件将发送给 facebook.init() 或 facebook.setFBConnectListener() 中指定的监听器。
facebook.showDialog( action, params )
String. 您想显示的对话框。有效选项包括
Table. Lua 表,包含
显示原生的视图,允许用户向他们选择的任意好友发送游戏请求。对于此对话框,操作 应为 “请求”。
要使用此功能,请确保将你的应用归类为 Facebook 开发者门户 中的游戏。
在 iOS 上,若要将游戏请求发送到所需的收件人,你必须确保已填写 Facebook 开发者门户 中的 iPhone 和/或 iPad Store ID 字段。有关详情,请参阅 Facebook 门户设置 指南。
对于此对话框,params 表可以包含以下
给 — 字符串 值,用于要向其发送此请求的人员的用户 ID。标题 — 字符串 值,用于对话框的标题。信息 — 字符串 值,用于随游戏请求发送的信息。建议 — 表,其中包含此游戏请求的建议好友用户 ID。数据 — 字符串 值,用于附加到帖子的其他数据。objectId — 字符串 值,用于发送的对象的 Open Graph 对象 ID。actionType — 字符串 值,用于定义有关请求性质的附加上下文。默认情况下,不使用操作类型。受支持的 actionType 值包括过滤器 — 字符串 值,用于筛选可以在过滤器 值包括“应用用户” — 仅显示使用该应用的好友。“应用非用户” — 仅显示**不**使用该应用的好友。映射到 邀请 场景。local facebook = require( "plugin.facebook.v4a" )
local function facebookListener( event )
    if ( "fbinit" == event.name ) then
        print( "Facebook initialized" )
        facebook.login()
    elseif ( "fbconnect" == event.name ) then
        if ( "session" == event.type ) then
            -- Handle login event
            if ( "login" == event.phase ) then
                facebook.showDialog( "requests", 
                { 
                    message = "You should download this game!",
                    filter = "APP_NON_USERS"
                })
            end
        elseif ( "dialog" == event.type ) then
            -- Handle dialog event
            print( event.response )
        end
    end
end
-- Set the "fbinit" listener to be triggered when initialization is complete
facebook.init( facebookListener )