米家扩展程序初始化超时_米家扩展程序开发入门.md

# 米家扩展程序开发入门

## 创建米家扩展程序

参考[README](README.md)开发新的米家扩展程序这一节。

## AndroidManifest.xml文件application下添加米家扩展程序配置和入口

* 必须设置model和message_handler,提供米家扩展程序运行的米家APP最低API Level版本

* 米家扩展程序不支持在AndroidManifest中自定义Application入口

* 米家扩展程序不支持在AndroidManifest中自定义Activity

* 米家扩展程序不支持自定义style

```

```

* 如何获取开发者Id

打开[米家智能平台](https://open.home.mi.com),点击“开发平台”,然后:

![](./md_images/developid_1.jpg)

![](./md_images/developid_2.jpg)

## 创建MessageReceiver类,继承IXmPluginMessageReceiver,入口函数

类名必须保持和AndroidManifest.xml中配置message_handler一致

```

public class MessageReceiver implements IXmPluginMessageReceiver {

public static final String MODEL = "xiaomi.demo.v1";

@Override

public boolean handleMessage(Context context, XmPluginPackage xmPluginPackage, int type,

Intent intent,

DeviceStat deviceStat) {

switch (type) {

case LAUNCHER: {// 启动入口

XmPluginHostApi.instance().startActivity(context, xmPluginPackage, intent,

deviceStat.did, MainActivity.class);

return true;

}

default:

break;

}

return false;

}

@Override

public boolean handleMessage(Context context, XmPluginPackage xmPluginPackage, int type,

Intent intent, DeviceStat deviceStat, MessageCallback callback) {

// TODO Auto-generated method stub

return false;

}

}

```

handleMessage中除了可以处理LAUNCHER消息外,还可以处理其他类型的消息,这个根据自己的产品需求来进行。目前支持的所有消息类型如下:

* LAUNCHER

* 入口消息,APILevel:1

* PUSH_MESSAGE

* push消息,APILevel:2

* MSG\_PAGE\_NAVIGATE

* 页面跳转,APILevel:3

* MSG\_BROADCAST\_BLUETOOTH\_DEVICE\_ACTION\_ACL\_CONNECTED

* 系统蓝牙广播ACL_CONNECTED,APILevel:6

* MSG\_BROADCAST\_BLUETOOTH\_DEVICE\_ACTION\_ACL\_DISCONNECTED

* 系统蓝牙广播ACL_DISCONNECTED,APILevel:7

* MSG\_BLUETOOTH\_PAIRING

* 蓝牙配对,APILevel:8

* MSG\_BLUETOOTH\_DISCONNECT

* 蓝牙断开连接,APILevel:9

* MSG\_SCENE\_GET\_CONDITION\_EXTRA

* 获取场景自定义条件中的extra字段,APILevel:10

* MSG\_UPNP\_CONNECT

  • 0
    点赞
  • 3
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值