在我的代码中
想以这种方式改设备在的组:
case 0x10:
aps_RemoveAllGroup(SampleApp_TransID); //删除之前的组
Donghe_Group_DstAddr.addrMode = (afAddrMode_t)AddrGroup; //重新配置组
Donghe_Group_DstAddr.endPoint = SAMPLEAPP_ENDPOINT;
Donghe_Group_DstAddr.addr.shortAddr = Donghe_Group_1;
Donghe_Group.ID = Donghe_Group_1;
osal_memcpy(Donghe_Group.name,"Group 1",7);
aps_AddGroup(SAMPLEAPP_ENDPOINT,&Donghe_Group);
break;
case 0x20:
aps_RemoveAllGroup(SampleApp_TransID);
Donghe_Group_DstAddr.addrMode = (afAddrMode_t)AddrGroup;
Donghe_Group_DstAddr.endPoint = SAMPLEAPP_ENDPOINT;
Donghe_Group_DstAddr.addr.shortAddr = Donghe_Group_2;
Donghe_Group.ID = Donghe_Group_2;
osal_memcpy(Donghe_Group.name,"Group 2",7);
aps_AddGroup(SAMPLEAPP_ENDPOINT,&Donghe_Group);
break;
case 0x40:
aps_RemoveAllGroup(SampleApp_TransID);
Donghe_Group_DstAddr.addrMode = (afAddrMode_t)AddrGroup;
Donghe_Group_DstAddr.endPoint = SAMPLEAPP_ENDPOINT;
Donghe_Group_DstAddr.addr.shortAddr = Donghe_Group_3;
Donghe_Group.ID = Donghe_Group_3;
osal_memcpy(Donghe_Group.name,"Group 3",7);
aps_AddGroup(SAMPLEAPP_ENDPOINT,&Donghe_Group);
break;
case 0x80:
aps_RemoveAllGroup(SampleApp_TransID);
Donghe_Group_DstAddr.addrMode = (afAddrMode_t)AddrGroup;
Donghe_Group_DstAddr.endPoint = SAMPLEAPP_ENDPOINT;
Donghe_Group_DstAddr.addr.shortAddr = Donghe_Group_4;
Donghe_Group.ID = Donghe_Group_4;
osal_memcpy(Donghe_Group.name,"Group 4",7);
aps_AddGroup(SAMPLEAPP_ENDPOINT,&Donghe_Group);
break;
default:
break;
结果我发现 根本不行 就算执行了,并不是更改了,而是多配置了一个组,能收到新配置的组和之前配置的组的消息。
而且我试了一下 仅仅用按键执行 aps_RemoveAllGroup(SampleApp_TransID); 发现还是能收到组的消息,为什么??? 这个函数还有存在的意义?
winken Yang:
回复 VV:
谢谢你 这是我的失误,把transID错看成endpoint
user5327689:
求教我根本不能添加新的组播,这是为什么,程序这里和你一样
YiKai Chen:
回复 user5327689:
你是用aps_AddGroup來添加新的组播?
user5327689:
回复 YiKai Chen:
是的
YiKai Chen:
回复 user5327689:
你調用aps_AddGroup後有沒有確認回傳值是否成功?
user5327689:
回复 YiKai Chen:
只有第一次初始化的时候能正常发送,第二次remove然后再添加就不行了,求一个能正常发送的程序
YiKai Chen:
回复 user5327689:
第二次remove然后再添加後,用aps_FindGroup查找一下有沒有正確把group加進去
user5327689:
回复 YiKai Chen:
非常谢谢,加了,发现原来是自己另外一个地方弄错了
YiKai Chen:
回复 user5327689:
問題解決了?