你好,对话,
我正在尝试将外围设备隐私标志设置为只读。我在论坛上发现了类似的代码,并正在执行它:
//将外围设备隐私标志设为只读
//更新属性的属性
ATTMDB\u更新\u ATT\u PERM(间隙\u HDL\u隐私\u标志,WR,禁用);
//将特征值更新为只读属性。
attmdb_att_set_值(GAP_HDL_CHAR_PRIVY_标志,
sizeof(privy_char),
(uint8_t*)和privy_char);
然而,当我查询数据库时,我看到数据库附带了一个数据包嗅探器。权限似乎表明该属性是可写的,但尝试写入该属性的请求失败。
请帮我理解这里发生了什么。。。谢谢
设备:

嗨JamesHiebert,
你能检查一下下面过去的论坛帖子吗?如果这对你有帮助,请告诉我。
https://support.dialog-semiconductor.com/forums/post/dialog-smartbond-bluetooth-low-energy-%E2%80%93-软件/外围设备隐私标志通用访问
谢谢,下午好
嗨,对话,
是的,我的代码(如下)基于引用的论坛线程。但是,我无法写入该特性,但在我随附的PDF屏幕快照中,按类型读取显示允许写入。。
//将外围设备隐私标志设为只读
//更新属性的属性
ATTMDB\u更新\u ATT\u PERM(间隙\u HDL\u隐私\u标志,WR,禁用);
//将特征值更新为只读属性。
attmdb_att_set_值(GAP_HDL_CHAR_PRIVY_标志,
sizeof(privy_char),
(uint8_t*)和privy_char);
对话
这是我们这边的一个问题。
我只是在初始化数据库时才将属性设置为只读。显然,通过以下方式在断开连接时禁用服务:
attmdb_svc_set_权限(taskEnv.shdl,PERM(svc,DISABLE));
在重新连接时紧随其后:
attmdb_svc_set_权限(taskEnv.shdl,SRV_PERM_ENABLE);
是否导致删除外设隐私标志的只读属性?
我需要在每次连接启动时设置属性,而不是在初始化时设置一次。
嗨JamesHiebert,
当连接启动时,将触发user_app_connection回调函数,因此您应该在该函数中设置属性
谢谢,下午好