作者janyfor (你哪位ㄚ)
看板AndroidDev
标题Fw: [问题] 不同 Library 共用变数
时间Thu Dec 29 00:29:22 2011
※ [本文转录自 LinuxDev 看板 #1E-qDrmu ]
作者: janyfor (你哪位ㄚ) 看板: LinuxDev
标题: [问题] 不同 Library 共用变数
时间: Thu Dec 29 00:27:30 2011
各位好,
有点难以叙述 画个简图表示
Android Framework
libX(extern pointer) libY(extern pointer)
↖↘ ↗↙
libhardware ------------------> pointer
↑ ↓
HAL
原先系统的流程会经由 libX <-> libhardware <-> HAL
後来因应了一些需求, 我而外了加上一些东西在 framework,
并且利用 libY 去存取 HAL, 然而从简图上的表达,
是要与 libX "共用" HAL, 而非又产生出另一份 HAL.
我的想法是在 libhardware 宣告一 pointer , libX 以及 libY 分别透过 extern 去存取.
由於 libX 是系统的预设流程, 所以 libX 获得正确的 HAL 物件之後,
将该物件的位置设定到 pointer 上, 之後 libY 便能够利用此 pointer 进入 HAL.
但目前执行起来, libY 的并无法进入到 HAL(pointer 依然是 NULL)
行为上看起来, 似乎是编译完连结时 libX 与 libY 的 pointer 位置不相同.
请问在这样的条件之下, 有其他的方式可以共用相同变数吗?
可以的话应该怎麽弄呢?
谢谢
OS Version: Android 2.3.5
--
※ 发信站: 批踢踢实业坊(ptt.cc)
※ 转录者: janyfor (219.68.139.138), 时间: 12/29/2011 00:29:22
※ 编辑: janyfor 来自: 219.68.139.138 (12/29 00:31)