| 文件 | 最后提交记录 | 最后更新时间 |
|---|---|---|
fix(ans): fix cross-SO singleton issue by adding AnsNotification::GetInstance() DelayedSingleton<AnsNotification>::GetInstance() returns different singleton objects in different shared libraries because the template's static members (instance_, mutex_) have vague linkage (COMDAT) and are hidden per-SO by -fvisibility=hidden + version scripts. Solution: 1. Add AnsNotification::GetInstance() using function-local static (C++11 thread-safe, defined out-of-line in ans_notification.cpp within libans_innerkits, symbol exported via *Ans* in .map) 2. Replace ALL callers (NAPI/ANI/Tools/Tests/CJ FFI) from DelayedSingleton<AnsNotification>::GetInstance() to AnsNotification::GetInstance() 3. Fix singleton.h include hygiene: - Add #include singleton.h to 34 files that use Singleton<>, DelayedSingleton<>, DECLARE_SINGLETON etc. but relied on transitive includes - Add #include nocopyable.h to 7 files that use DISALLOW_COPY_AND_MOVE but relied on transitive includes - Remove #include singleton.h from 70 files that no longer use any singleton.h symbols after the DelayedSingleton replacement The function-local static in ans_notification.cpp lives in libans_innerkits.so's data segment. AnsNotification::GetInstance() is a non-inline member function compiled only in libans_innerkits.so and exported via *Ans* pattern in libans_innerkits.map. All SOs call this exported function through dynamic linking, sharing the single instance. Co-Authored-By: Agent Signed-off-by: CheerfulRicky <yuegang7@h-partners.com> Change-Id: I1089cfa5bb010daf37c68333a1e71c55fc1f16f3 | 1 天前 | |
add subscribeNotification Signed-off-by: bettykico <fangxiaofen1@h-partners.com> | 17 天前 | |
add getActiveNotification Co-Authored-By: Agent> Signed-off-by: bettykico <fangxiaofen1@h-partners.com> | 17 天前 | |
add time zone Co-Authored-By: Agent Signed-off-by: zhishui001 <hehongyin1@h-partners.com> | 2 个月前 | |
新增ohos.permission.NOTIFICATION_SYSTEM_SUBSCRIBER权限 Signed-off-by: heguokai <heguokai6@huawei-partners.com> | 4 个月前 | |
add new interface Signed-off-by: fangJinliang1 <fangjinliang1@huawei.com> Change-Id: I40a28d17274ed0dabbec27fc97eb8ccca7f726ad Signed-off-by: fangJinliang1 <fangjinliang1@huawei.com> | 3 年前 | |
fix gn Signed-off-by: heguokai <heguokai6@huawei-partners.com> | 1 年前 | |
fix(ans): fix cross-SO singleton issue by adding AnsNotification::GetInstance() DelayedSingleton<AnsNotification>::GetInstance() returns different singleton objects in different shared libraries because the template's static members (instance_, mutex_) have vague linkage (COMDAT) and are hidden per-SO by -fvisibility=hidden + version scripts. Solution: 1. Add AnsNotification::GetInstance() using function-local static (C++11 thread-safe, defined out-of-line in ans_notification.cpp within libans_innerkits, symbol exported via *Ans* in .map) 2. Replace ALL callers (NAPI/ANI/Tools/Tests/CJ FFI) from DelayedSingleton<AnsNotification>::GetInstance() to AnsNotification::GetInstance() 3. Fix singleton.h include hygiene: - Add #include singleton.h to 34 files that use Singleton<>, DelayedSingleton<>, DECLARE_SINGLETON etc. but relied on transitive includes - Add #include nocopyable.h to 7 files that use DISALLOW_COPY_AND_MOVE but relied on transitive includes - Remove #include singleton.h from 70 files that no longer use any singleton.h symbols after the DelayedSingleton replacement The function-local static in ans_notification.cpp lives in libans_innerkits.so's data segment. AnsNotification::GetInstance() is a non-inline member function compiled only in libans_innerkits.so and exported via *Ans* pattern in libans_innerkits.map. All SOs call this exported function through dynamic linking, sharing the single instance. Co-Authored-By: Agent Signed-off-by: CheerfulRicky <yuegang7@h-partners.com> Change-Id: I1089cfa5bb010daf37c68333a1e71c55fc1f16f3 | 1 天前 | |
PC/PAD 展示应用级开关二 Signed-off-by: wangsen1994 <wangsen51@huawei.com> | 4 个月前 | |
fix bug Signed-off-by: zhengzhuolan <zhengzhuolan@huawei-partners.com> | 1 年前 | |
badge notification Signed-off-by: zhengzhuolan <zhengzhuolan@huawei-partners.com> | 9 个月前 | |
Add code Signed-off-by: zhengzhuolan <zhengzhuolan@huawei-partners.com> | 1 年前 | |
ans operation callback Signed-off-by: zhengzhuolan <zhengzhuolan@huawei-partners.com> | 1 年前 | |
车机适配多用户 Signed-off-by: yuechunyang <yuechunyang1@h-partners.com> | 7 个月前 | |
车机适配多用户 Signed-off-by: yuechunyang <yuechunyang1@h-partners.com> | 7 个月前 | |
add new interface Signed-off-by: fangJinliang1 <fangjinliang1@huawei.com> Change-Id: I40a28d17274ed0dabbec27fc97eb8ccca7f726ad Signed-off-by: fangJinliang1 <fangjinliang1@huawei.com> | 3 年前 | |
notification directory modify Signed-off-by: zero-cyc <chenlien@huawei.com> Change-Id: I5c8cb4ec680df5ad2728f721eb91d910d2353f7c | 4 年前 | |
add enable dialog async callback Signed-off-by: chehang <chehang1@huawei.com> Change-Id: If67fed385b81baa1f6b49d5705778046248b5527 | 2 年前 | |
替换std::mutex Signed-off-by: songbao1 <luojingsong@h-partners.com> | 1 年前 | |
优先通知(支持开关回调和关键词) Signed-off-by: guxiang <guxiang11@huawei.com> | 8 个月前 | |
add new interface Signed-off-by: fangJinliang1 <fangjinliang1@huawei.com> Change-Id: I40a28d17274ed0dabbec27fc97eb8ccca7f726ad Signed-off-by: fangJinliang1 <fangjinliang1@huawei.com> | 3 年前 | |
批量删除 Signed-off-by: XKK <huyingsong@huawei.com> | 3 年前 | |
notification directory modify Signed-off-by: zero-cyc <chenlien@huawei.com> Change-Id: I5c8cb4ec680df5ad2728f721eb91d910d2353f7c | 4 年前 | |
API 26版本NAPI异步异常修正 Co-Authored-By: Agent Signed-off-by: heguokai <heguokai6@huawei-partners.com> | 2 个月前 | |
订阅并发问题 Signed-off-by: songbao1 <luojingsong@h-partners.com> | 1 年前 | |
支持快捷回复 Signed-off-by: wangsen1994 <wangsen51@huawei.com> | 1 年前 |
| 文件 | 最后提交记录 | 最后更新时间 |
|---|---|---|
| 1 天前 | ||
| 17 天前 | ||
| 17 天前 | ||
| 2 个月前 | ||
| 4 个月前 | ||
| 3 年前 | ||
| 1 年前 | ||
| 1 天前 | ||
| 4 个月前 | ||
| 1 年前 | ||
| 9 个月前 | ||
| 1 年前 | ||
| 1 年前 | ||
| 7 个月前 | ||
| 7 个月前 | ||
| 3 年前 | ||
| 4 年前 | ||
| 2 年前 | ||
| 1 年前 | ||
| 8 个月前 | ||
| 3 年前 | ||
| 3 年前 | ||
| 4 年前 | ||
| 2 个月前 | ||
| 1 年前 | ||
| 1 年前 |