再次感谢Madhu。
但是我注意到API帮助文件中没有记录。
我最后采取了以下的替代方法:
在配置/间隙设置/广告设置中设置过滤策略:“扫描请求:任意连接请求:白名单”。
在CyByLyEvtGAPHAuthAuthOrth:和CyByLyEvtStaskon:使用CyLygGAPGETBooDeDeCeStLIST和CyLabyGAPDeDeCiTeWiThelEistRIST将设备地址从绑定列表复制到白名单。
将API函数CyByrgGAPStad广告复制到我自己的版本中,并将其修改为:
UITC8 BReCPIOAdFieldRealPrase= 0xFFU;CyLabyAppIReultTyt bReCpPyGAPSTART广告(UIT8广告IdvalType,UTI8ByPASTFILE){CyLuffiApIILRESULTREST APIREST;//JH:将这些行添加到API中复制的版本:IF(BReCpCyAdvFieldPrase==0xFFU)BReCpPyAdvFieldReals= CyByLydIsPrimyMoDeField.AdvPARAM-gt;AdvFlutRealPosivices;CysLyDebug MyDeField.AdvPARAM-G.AdvFlutOrd= =(ByPasFlter)?CybLyGAPxScMyAythyCalnOn:B/E****(AdvultIdValyType & gt;CyByLuffAuthChina自定义){APIRESULL CyByrErrOr.ValuiDyPosil参数;}否则((CyByLyStayeOxList==CyByLyGestStE.())和;((CyByLyEvEnthller-Fland;CyBylStaskFig)==0U){BrcPyLeSythEng=(CyByLyGestStand()))如果(CyrPyIdValyType=CyByLyAuthChina快速){CyByLyFlxFasdAdvIdTimeOUT;CybLyDebug MyDeField.AdvPARAM-GT;Advutvmin=CyByLyFasdAdvIntIn min;CyByLyStudioMyDeFieln.AdvPARAM-GT;AdvutvMax=CyByLyFasthAdvIn InthMax;}否则(广告)Yype=CyLyByDyjyMyDeFiFo.Avto=CyLyLySuffyAdvIdTimeOUT;CysLyDebug MyDeField.AdvPARAM-G.Advutvmin=CyLyLySuffyAdvIn In Min;CysLyDebug MyDeFieln.AdvPARAM-GT;AdvutvMax=CyLyLySlavyAdvIn InMax;} /*不更新广告间隔*/{}CyByLuffEngultInValyType = Apple SimultIVALYTYPE;APIRESULL CYBLYGGAPPATION Debug模式(&CyByLyDebug MyDeFielf);如果(CyByrErrOrthOrk==APIREST){CyByLyEvEnthalLeFrase} = CyByLyStudioFig;}否则{ApReMeultCyByrErrOr.ValuiDySt.;}返回(ApReMead);}现在我当债券列表为空时,可以重写该过滤器,并在债券已被配置时将其应用于配置中,防止任何其他设备连接,从而防止粘接。
令人恼火的是,不能通过发布的API来做这种事情。我发现(硬方法)你必须在配置中使用白名单设置过滤策略,否则CyByLyGAPDeDeCiTeWoThelEistScript失败,所以你不能在没有一个过滤策略的情况下启动,然后设置一个绑定,这将是更自然的。
-约翰
再次感谢Madhu。
但是我注意到API帮助文件中没有记录。
我最后采取了以下的替代方法:
在配置/间隙设置/广告设置中设置过滤策略:“扫描请求:任意连接请求:白名单”。
在CyByLyEvtGAPHAuthAuthOrth:和CyByLyEvtStaskon:使用CyLygGAPGETBooDeDeCeStLIST和CyLabyGAPDeDeCiTeWiThelEistRIST将设备地址从绑定列表复制到白名单。
将API函数CyByrgGAPStad广告复制到我自己的版本中,并将其修改为:
UITC8 BReCPIOAdFieldRealPrase= 0xFFU;CyLabyAppIReultTyt bReCpPyGAPSTART广告(UIT8广告IdvalType,UTI8ByPASTFILE){CyLuffiApIILRESULTREST APIREST;//JH:将这些行添加到API中复制的版本:IF(BReCpCyAdvFieldPrase==0xFFU)BReCpPyAdvFieldReals= CyByLydIsPrimyMoDeField.AdvPARAM-gt;AdvFlutRealPosivices;CysLyDebug MyDeField.AdvPARAM-G.AdvFlutOrd= =(ByPasFlter)?CybLyGAPxScMyAythyCalnOn:B/E****(AdvultIdValyType & gt;CyByLuffAuthChina自定义){APIRESULL CyByrErrOr.ValuiDyPosil参数;}否则((CyByLyStayeOxList==CyByLyGestStE.())和;((CyByLyEvEnthller-Fland;CyBylStaskFig)==0U){BrcPyLeSythEng=(CyByLyGestStand()))如果(CyrPyIdValyType=CyByLyAuthChina快速){CyByLyFlxFasdAdvIdTimeOUT;CybLyDebug MyDeField.AdvPARAM-GT;Advutvmin=CyByLyFasdAdvIntIn min;CyByLyStudioMyDeFieln.AdvPARAM-GT;AdvutvMax=CyByLyFasthAdvIn InthMax;}否则(广告)Yype=CyLyByDyjyMyDeFiFo.Avto=CyLyLySuffyAdvIdTimeOUT;CysLyDebug MyDeField.AdvPARAM-G.Advutvmin=CyLyLySuffyAdvIn In Min;CysLyDebug MyDeFieln.AdvPARAM-GT;AdvutvMax=CyLyLySlavyAdvIn InMax;} /*不更新广告间隔*/{}CyByLuffEngultInValyType = Apple SimultIVALYTYPE;APIRESULL CYBLYGGAPPATION Debug模式(&CyByLyDebug MyDeFielf);如果(CyByrErrOrthOrk==APIREST){CyByLyEvEnthalLeFrase} = CyByLyStudioFig;}否则{ApReMeultCyByrErrOr.ValuiDySt.;}返回(ApReMead);}现在我当债券列表为空时,可以重写该过滤器,并在债券已被配置时将其应用于配置中,防止任何其他设备连接,从而防止粘接。
令人恼火的是,不能通过发布的API来做这种事情。我发现(硬方法)你必须在配置中使用白名单设置过滤策略,否则CyByLyGAPDeDeCiTeWoThelEistScript失败,所以你不能在没有一个过滤策略的情况下启动,然后设置一个绑定,这将是更自然的。
-约翰
举报