2

我正在编写一些作为 jar 文件分发的库代码,开发人员在使用之前需要使用应用程序 ID 对其进行初始化。初始化只是一个函数调用,比如

MyLibrary.initialize("16ea53b");

棘手的是我不确定如何指导开发人员进行这个初始化调用。起初,我认为主要活动中的单个静态初始化程序块将是最简单的方法。问题是用户可以通过其他一些活动或意图进入应用程序,并且不会加载主要活动。有没有一种通用的方法来确保在应用程序启动时运行一行代码,而不管应用程序是如何启动的?

初始化调用是幂等的,所以我可以告诉人们在每个可以使用它的地方进行初始化调用,但这会很麻烦。

4

2 回答 2

0

一种简单的方法是在初始化库代码时在 SharedPrefences 中保存一些内容。然后,在您认为重要的地方,您可以检查此值,如果存在则继续,或提示初始化或任何内容(错误消息等)。这也将允许您的开发人员不必多次初始化。

请务必为开发人员提供一个 API 来重置此值。

此外, Joshua Bloch关于 API 设计的精彩演讲可能会对您有所帮助。

于 2011-07-18T22:27:53.140 回答
0

这听起来像是一个可以通过扩展创建一个扩展应用程序的类并将其放置在那里来解决的问题,这对于整个应用程序是全局的。

于 2011-07-18T22:18:37.363 回答