我的目标:
我已完成的步骤:
问题面对:
我收到运行时错误,没有编译错误,库项目完美集成。
根本原因:
当我分析Logcat时,我理解这是由于应用程序名称冲突。我的主应用程序在其清单文件中的应用程序名称为“wish”。清单文件中的库项目名称也为“Todoapplication”
在java文件中有一行代码如下:
m_app = (TodoApplication) getapplication();
此行会引发运行时异常,因为在主清单文件中,name参数中没有Todoapplication。
任何人都可以帮我解决这个问题。感谢。
答案 0 :(得分:4)
如果库项目具有自定义Application
类,则在定义自己的类时,需要从其自定义Application类继承。因此,请WishApplication extends ToDoApplication
代替WishApplication extends Application
。
请注意,使用自定义Application
通常毫无意义。它与静态数据成员具有相同的有效范围,并且只能有一个 Application
对象。因此,我建议避免在库中使用自定义Application
类,因为您不能让两个库都要求主机应用程序使用他们的自定义Application
类。而且,对于您自己的代码,只有在明显优于普通静态数据成员时才使用自定义Application
类。