消息发送列表
所有文档

          AR开放平台

          消息发送列表

          List列举了在case中通过 send_message_to_native 函数向 sdk 进行消息通信的所有可用消息以及使用方式。

          Alert

          show_dialog

          调用系统的弹窗显示内容

          Parameters

          • event_name : 事件的名称(本事件仅可用 "show_dialog")
          • msg : 通过弹窗要显示的内容
          • title :弹窗的title
          • confirm_text :确认按钮的文案
          • cancel_text :取消按钮的文案
          • key : 事件的唯一标识,用来在回调中区分
          sample:
          
          local msg = {}
          msg["event_name"] = "show_dialog"
          msg["msg"] = "send msg by lua table ok"
          msg["title"] = "提示"
          msg["confirm_text"] = "确认"
          msg["cancel_text"] = "取消"
          msg["key"] = "110100101"
          
          app_controller:send_message_to_native(msg)

          show_toast

          调用系统的toast显示内容

          Parameters

          • event_name : 事件的名称(本事件仅可用 "show_toast")
          • msg : 通过弹窗要显示的内容
          • key : 事件的唯一标识,用来在回调中区分
          sample:
          
          local msg = {}
          msg["event_name"] = "show_toast"
          msg["msg"] = "show_toast"
          msg["key"] = "1101001012"
          
          app_controller:send_message_to_native(msg)

          回调

          响应从native层发来的消息:

          Return

          • event_name = "on_dialog_result"
          • result : 通过弹窗要显示的内容
          • key : 事件的唯一标识,用来在回调中区分
          sample:
          
          function on_message_from_native(msg)
            	local event_name = msg['event_name']
          	io.write("got a message from native:"..event_name)
          end
          
          app_controller:set_native_message_handler(on_message_from_native)

          Front Camera

          enable_front_camera

          显示切换前置摄像头按钮

          Parameters

          • event_name : 事件的名称(本事件仅可用 "enable_front_camera")
          sample:
          
          local msg = {}
          msg["event_name"] = "enable_front_camera"
          
          app_controller:send_message_to_native(msg)

          exchange_frontback_camera

          切换前后摄像头

          Parameters

          • event_name : 事件的名称(本事件仅可用 "exchange_frontback_camera")
          sample:
          
          local msg = {}
          msg["event_name"] = "exchange_frontback_camera"
          
          app_controller:send_message_to_native(msg)

          回调

          响应从native层发来的消息:

          Return:

          • event_name = "on_camera_change"
          • front_camera : 1 (是否是前置摄像头)
          sample:
          
          function on_message_from_native(msg)
            	local event_name = msg['event_name']
          	io.write("got a message from native:"..event_name)
          end
          
          app_controller:set_native_message_handler(on_message_from_native)

          Native UI

          change_native_visible_type

          改变native的显示类型

          Parameters

          • event_name : 事件的名称(本事件仅可用 "change_native_visible_type")
          • visible_type : 显示的类型:

            0:显示全部ui
            1:隐藏全部ui 
            2:显示拍摄区域按钮
            3:隐藏拍摄区域按钮
            4:显示顶部ui
            5:隐藏顶部ui 
          sample:
          
          local msg = {}
          msg["event_name"] = "change_native_visible_type"
          msg["visible_type"] = 1
          app_controller:send_message_to_native(msg)

          Track

          open_track

          开启跟踪算法 (目前仅可用在artype为0的case中)

          Parameters

          • event_name : 事件的名称(本事件仅可用 "open_track")
          sample:
          
          local msg = {}
          msg["event_name"] = "open_track"
          app_controller:send_message_to_native(msg)

          close_track

          关闭跟踪算法 (目前仅可用在artype为0的case中)

          Parameters

          • event_name : 事件的名称(本事件仅可用 "close_track")
          sample:
          
          local msg = {}
          msg["event_name"] = "close_track"
          app_controller:send_message_to_native(msg)

          Gesture

          open_gesture_recognize

          开启跟踪算法 (目前仅可用在artype为0的case中)

          Parameters

          • event_name : 事件的名称(本事件仅可用 "open_gesture_recognize")
          sample:
          
          local msg = {}
          msg["event_name"] = "open_gesture_recognize"
          app_controller:send_message_to_native(msg)

          close_gesture_recognize

          关闭跟踪算法 (目前仅可用在artype为0的case中)

          Parameters

          • event_name : 事件的名称(本事件仅可用 "close_gesture_recognize")
          sample:
          
          local msg = {}
          msg["event_name"] = "close_gesture_recognize"
          app_controller:send_message_to_native(msg)

          Webview

          load_webview

          加载一段url并将webview渲染成模型

          Parameters

          • event_name | string : 事件的名称(本事件仅可用 "load_webview")
          • texture_id | number : json中需要加载webview的纹理id,可以通过get_texture_id获取
          • width | number :实际渲染的webview的宽,单位是px
          • height | number : 实际渲染的webview的高,单位是px
          • is_remote | number : 是否是本地url(默认value=0 ,本地资源,value=1,是网络资源)
          • url | string : url地址
          sample:
          
          local msg = {}
          msg["event_name"] = "load_webview"
          msg["texture_id"] = 10
          msg["width"] = 2000
          msg["height"] = 2800
          msg["is_remote"] = 0
          msg["url"] = "res/webroot/begin_button.html"
          
          app_controller:send_message_to_native(msg)

          update_webview_js

          更新webview中的js

          Parameters

          • event_name | string : 事件的名称(本事件仅可用 "exchange_frontback_camera")
          • texture_id | number : json中需要加载webview的纹理id,可以通过get_texture_id获取
          • js_code | string : 一段 js的字符串
          sample:
          
          local msg = {}
          msg["event_name"] = "update_webview_js"
          msg["texture_id"] = 10
          msg["js_code"] = "changeword('hello')"
          app_controller:send_message_to_native(msg)

          回调

          响应从native层发来的消息:

          Return:

          • event_name =

            "webView_operation_load_finish" : webview加载完成
            
            "webView_operation_load_failed" : webview加载失败
            
            "webView_operation_update_finish" webview更新完成
          • texture_id = 标识webview的id
          sample:
          
          function on_message_from_native(msg)
            	local event_name = msg['event_name']
          	io.write("got a message from native:"..event_name)
          end
          
          app_controller:set_native_message_handler(on_message_from_native)

          Slam

          start_slam

          开始slam,调用此接口,可以放置模型

          Parameters

          • event_name | string : 事件的名称(本事件仅可用 "start_slam")
          sample:
          
          local msg = {}
          msg["event_name"] = "start_slam"
          
          app_controller:send_message_to_native(msg)

          slam_reset

          slam场景下,模型不在屏幕内,对模型进行位置重置。

          Parameters

          • event_name | string : 事件的名称(本事件仅可用 "slam_reset")
          • x | number : 模型重置后在屏幕坐标系的横坐标位置,取值0-1之间。
          • y | number : 模型重置后在屏幕坐标系的纵坐标位置,取值0-1之间。
          • distance | number : 模型在空间中的深度
          • type : slam重置的类型 (1 ,2)
          sample:
          
          local msg = {}
          msg["event_name"] = "slam_reset"
          msg["x"] = 0.5
          msg["y"] = 0.5
          msg["distance"] = "start_slam"
          msg["type"] = "start_slam"
          
          app_controller:send_message_to_native(msg)

          start_detect_plane

          开始检测平面

          Parameters

          • event_name | string : 事件的名称(本事件仅可用 "start_detect_plane")
          sample:
          
          local msg = {}
          msg["event_name"] = "start_detect_plane"
          
          app_controller:send_message_to_native(msg)

          set_plane_detection_type

          设置平面检测的类型

          Parameters

          • event_name | string : 事件的名称(本事件仅可用 "set_plane_detection_type")
          • type | number : 检测平面的类型

            0:检测水平面,

            1:检测竖直平面, 2:同时检测水平面和竖直平面

          sample:
          
          local msg = {}
          msg["event_name"] = "set_plane_detection_type"
          msg["type"] =  2
          
          app_controller:send_message_to_native(msg)

          redetect_plane

          重新检测平面

          Parameters

          • event_name | string : 事件的名称(本事件仅可用 "redetect_plane")
          sample:
          
          local msg = {}
          msg["event_name"] = "redetect_plane"
          
          app_controller:send_message_to_native(msg)

          set_plane_feature_info_enabled

          是否开启平面特征点信息

          Parameters

          • event_name | string : 事件的名称(本事件仅可用 "plane_detection_type")
          sample:
          
          local msg = {}
          msg["event_name"] = "set_plane_feature_info_enabled"
          msg["type"] = 1
          app_controller:send_message_to_native(msg)

          Speech

          show_speech_mic_icon

          显示语音识别的图标

          Parameters

          • event_name | string : 事件的名称(本事件仅可用 "show_speech_mic_icon")
          sample:
          
          local msg = {}
          msg["event_name"] = "show_speech_mic_icon"
          
          app_controller:send_message_to_native(msg)

          hide_speech_mic_icon

          关闭语音识别的图标

          Parameters

          • event_name | string : 事件的名称(本事件仅可用 "hide_speech_mic_icon")
          sample:
          
          local msg = {}
          msg["event_name"] = "hide_speech_mic_icon"
          s
          app_controller:send_message_to_native(msg)

          speech_start_listen

          开始语音识别

          Parameters

          • event_name | string : 事件的名称(本事件仅可用 "speech_start_listen")
          sample:
          
          local msg = {}
          msg["event_name"] = "speech_start_listen"
          
          app_controller:send_message_to_native(msg)

          speech_stop_listen

          关闭语音识别

          Parameters

          • event_name | string : 事件的名称(本事件仅可用 "speech_start_listen")
          sample:
          
          local msg = {}
          msg["event_name"] = "speech_stop_listen"
          s
          app_controller:send_message_to_native(msg)

          回调

          响应从native层发来的消息:

          Return:

          • event_name = "speech_result"
          • status |number : 语音识别后的状态
          • voice_result |string : 语音识别的结果
          • voice_text | string :语音识别的文字
          • error_id | number : 错误的id
          sample:
          
          function on_message_from_native(msg)
            	local event_name = msg['event_name']
          	io.write("got a message from native:"..event_name)
          end
          
          app_controller:set_native_message_handler(on_message_from_native)

          TTS

          tts_start_speak

          利用tts开始播放

          Parameters

          • event_name | string : 事件的名称(本事件仅可用 "tts_start_speak")【必填】
          • tts | string : 需要用tts能力阅读的文字 【必填】
          • speaker | number : 0 【必填】
          • speed | number : 说话的语速 【必填】
          • volume | number : 音量大小 【必填】
          sample:
          
          local msg = {}
          msg["event_name"] = "tts_start_speak"
          msg["tts"] = "你好,开始说话"
          msg["speaker"] = 0
          msg["speed"] = 5
          msg["volume"] = 0.5
          
          app_controller:send_message_to_native(msg)

          tts_pause_speak

          暂停tts

          Parameters

          • event_name | string : 事件的名称(本事件仅可用 "tts_pause_speak")
          sample:
          
          local msg = {}
          msg["event_name"] = "tts_pause_speak"
          s
          app_controller:send_message_to_native(msg)

          tts_resume_speak

          tts继续播放

          Parameters

          • event_name | string : 事件的名称(本事件仅可用 "tts_resume_speak")
          sample:
          
          local msg = {}
          msg["event_name"] = "speech_start_listen"
          
          app_controller:send_message_to_native(msg)

          tts_stop_speak

          tts停止播放

          Parameters

          • event_name | string : 事件的名称(本事件仅可用 "tts_stop_speak")
          sample:
          
          local msg = {}
          msg["event_name"] = "tts_stop_speak"
          
          app_controller:send_message_to_native(msg)

          回调

          响应从native层发来的消息:

          Return:

          • event_name = "tts_result"
          • status |number : tts的状态
          sample:
          
          function on_message_from_native(msg)
            	local event_name = msg['event_name']
          	io.write("got a message from native:"..event_name)
          end
          
          app_controller:set_native_message_handler(on_message_from_native)
          上一篇
          版本控制字段
          下一篇
          静态场景配置API