广播接收器中的上下文有什么意义?
What is the significance of the Context in Broadcast receiver?
我有一个 service
,我开始 receiving
一些 broadcast receive
。所以为了启动 service
,我可以使用:
ctx.startService(new Intent(ctx, myservice.class));
或
applicationContext.startService(new Intent(applicationContext, myservice.class)
其中 ctx
是广播接收器接收到的上下文,applicationContext
是我在 MainApplication
.
中保存的静态变量
那么,如果我使用 ctx
与 applicationContext
会有什么区别?
您应该使用您在 onReceive() 中收到的 Context 实例。完全可以将它用于启动服务等目的。并注意使用应用程序上下文的静态实例。它可能会导致内存泄漏,并且在某些情况下还会变为空。
我有一个 service
,我开始 receiving
一些 broadcast receive
。所以为了启动 service
,我可以使用:
ctx.startService(new Intent(ctx, myservice.class));
或
applicationContext.startService(new Intent(applicationContext, myservice.class)
其中 ctx
是广播接收器接收到的上下文,applicationContext
是我在 MainApplication
.
那么,如果我使用 ctx
与 applicationContext
会有什么区别?
您应该使用您在 onReceive() 中收到的 Context 实例。完全可以将它用于启动服务等目的。并注意使用应用程序上下文的静态实例。它可能会导致内存泄漏,并且在某些情况下还会变为空。