Android - 以无代码方式集成您的库以显示视图

Posted

技术标签:

【中文标题】Android - 以无代码方式集成您的库以显示视图【英文标题】:Android - Integrate Your Library Codelessly to Display Views 【发布时间】:2021-08-16 11:28:15 【问题描述】:

我已经读到,通过在库的清单中添加一个提供程序,您可以将您创建的库集成到应用程序中,而无需强制它们编写任何集成代码。

这怎么可能?为了显示对话框或按钮,您将在哪里获得对上下文或 FragmentManager 的引用?

【问题讨论】:

你的问题的第一部分听起来像:Get Context in android library,但你应该引用/链接你认为可以显示视图的源(没有一些集成)。 【参考方案1】:

我已经读到,通过在库的清单中添加一个提供程序,您可以将您创建的库集成到应用程序中,而无需强制它们编写任何集成代码。

不是真的。将其表述为“通过在库的清单中包含<provider>,您可以在不强制应用开发人员编写任何初始化代码的情况下初始化库”会更准确。

初始化!= 集成。

这怎么可能?

所有注册的ContentProvider 实例都会在应用进程启动时初始化,甚至在ApplicationonCreate() 被调用之前。通常,这是一个错误(增加启动成本),但如果处理得当,它可以成为一项功能(允许库自行初始化)。

为了显示对话框或按钮,您将在哪里获得对上下文或 FragmentManager 的引用?

应用开发者会调用您提供的一些 API。

【讨论】:

我明白了,所以应用程序开发人员无论如何都必须调用一些 API。在这种情况下,请问如果您想在集成应用的每个屏幕上显示一个视图(Button、TextView 等),您将如何设计 API? @DeveloperKurt:我不知道,对不起。

以上是关于Android - 以无代码方式集成您的库以显示视图的主要内容,如果未能解决你的问题,请参考以下文章

在 Xcode 中,如何在我的项目设置中指定正确的库以避免链接错误?

将 Google 登录集成到您的 Android 应用程序错误

修改 Android 源代码的核心 java 库以在应用程序中使用

如何更改 Android Leanback 库以支持背景视频而不是背景图像

您可以为您的组织托管一个私有存储库以与 npm 一起使用吗?

Android中的Stripe集成,之后该怎么办?