我对Android中的术语“上下文”有疑问.我看到上下文提供了有关应用程序运行环境的信息,但是应用程序上下文和活动上下文之间有什么区别?
为什么我这样做:
AlertDialog.Builder dialog = new AlertDialog.Builder(mContext);
为什么我将上下文传递给构造函数?任何人都可以提供请帮助我理解上下文是什么,以及上下文对象是什么?
我不想复制/粘贴来自Android参考,因为我已经读过它…..太多次没有理解.
最佳答案
它们都是Context的实例,但应用程序实例与应用程序的生命周期相关联,而Activity实例与Activity的生命周期相关联.因此,他们可以访问有关应用程序环境的不同信息.
如果您在getApplicationContext阅读文档,它会注意到,如果您需要一个生命周期与当前上下文不同的上下文,则只应使用此文档.这不适用于您的任何一个示例.
活动上下文可能包含有关完成这些调用所必需的当前活动的一些信息.如果您显示确切的错误消息,可能能够指出它究竟需要什么.
但一般来说,除非你有充分的理由不使用活动上下文.