全品类控制面板

更新时间:2022-02-17 07:29:01下载pdf

使用 Native 代码开发的原生控制面板,支持绝大多数涂鸦系智能产品以及产品功能点控制,简单接入即可快速集成完整的涂鸦生态产品能力,轻松体验不同智能产品。

功能优势

  • 可以提前支持新产品,并且在单品类无法支持的情况下提供服务。

  • 原生代码,接入就可以使用。

  • 便于开发阶段调试。

  • 部分面板支持通过 自由配置面板 配置展示。

    全品类控制面板 全品类控制面板

使用方法

原生控制面板依赖

implementation 'com.tuya.smart:TuyaDefaultPanel:2.1.0'

接口说明

void openDefaultPanel(Context context, String devId, MenuBean menuBean);

参数说明

参数 说明
context 上下文,用于打开Activity
devId 设备 ID
menuBean 用于创建和显示自定义的 menu 及事件

menuBean 参数用于创建和显示自定义的 menu 及事件,如不需要可以传null。

MenuBean 数据模型

字段 类型 描述
menuRes int 自定义menu资源 ID
menuItemId int 自定义menu下的itemId
bundle Bundle 自定义传递数据Bundle,使用IDefaultPanelController.BUNDLE_KEY从Intent获取
activityClassName String 自定义Activity的ClassName,如TestActivity.class.getName()

示例代码

MenuBean menuBean = new MenuBean();
menuBean.setMenuRes(R.menu.common_menu);
menuBean.setMenuItemId(R.id.check);
Bundle bundle = new Bundle();
bundle.putString("DEV_ID_KEY", devId);
menuBean.setBundle(bundle);
menuBean.setActivityClassName(TestActivity.class.getName());
IDefaultPanelController defaultPanelController = PluginManager.service(IDefaultPanelController.class);
defaultPanelController.usePanel(new HomeSDKPanel());
defaultPanelController.openDefaultPanel(context, devId, menuBean);

原生控制面板使用startActivityForResult(Intent, IDefaultPanelController.REQUEST_CODE_DEFAULT_PANEL)打开自定义Activity,在onActivityResult下判断(requestCode == IDefaultPanelController.REQUEST_CODE_DEFAULT_PANEL && resultCode == RESULT_OK)true会关闭原生控制面板。