微信公众号搜"智元新知"关注
微信扫一扫可直接关注哦!

在动态投放模块中使用时,应用模块尺寸/颜色的值不正确

如何解决在动态投放模块中使用时,应用模块尺寸/颜色的值不正确

我有一个应用程序模块和一个名为“聊天”的动态模块。我有一个布局,片段驻留在聊天模块中,在布局中有一个android:textSize="@dimen/sp20"写的。 Dimen在应用模块中定义,因为我在运行时显示文字大小不正确。我调试了它,它等于12sp(对于xxhdpi设备为36)。

我尝试以编程方式使用dimen,但结果相同。 (landing_page_toolbar_title.setTextSize(TypedValue.COMPLEX_UNIT_PX,resources.getDimension(com.sendbird.R.dimen.sp20)))。从应用模块包中精心使用的“ R”。

当我在聊天模块中定义相同的值时,它可以完美工作。但这对于我们的方案是不可行的。我有大量的字符串,调光,颜色资源,并且在应用模块中编写了多种配置。 分享可行的解决方案。

附加屏幕截图以更好地理解。

Reflection based result comparison

解决方法

您可以尝试通过使用前缀“ app module resources”来更新app_sp20来解决这个问题吗?

常用名称大部分被SDKs/modules覆盖

仍然,您面临问题,然后将反射用作最后一个选择。

,

下载动态模块后,其代码和资源将放置在应用程序的内部存储中。也许此存储状态不一致或过时(包括来自应用程序的缓存资源)。如果在开发/测试期间发生问题,请尝试清除应用程序的内部存储空间。

还要确保为应用和动态模块的所有活动/片段正确初始化了SplitCompat,如下所述:here。文档对SplitCompat的实际用途非常含糊,但未正确初始化它也可能影响从动态模块访问应用程序资源。

版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 dio@foxmail.com 举报,一经查实,本站将立刻删除。