service中需要Context时

Context是一个抽象基类,我们通过它访问当前包的资源(getResources、getAssets)和启动其他组件(Activity、Service、Broadcast)以及得到各种服务(getSystemService),当然,通过Context能得到的不仅仅只有上述这些内容。对Context的理解可以来说:Context提供了一个应用的运行环境,在Context的大环境里,应用才可以访问资源,才能完成和其他组件、服务的交互,Context定义了一套基本的功能接口,我们可以理解为一套规范,而Activity和Service是实现这套规范的子类,这么说也许并不准确,因为这套规范实际是被ContextImpl类统一实现的,Activity和Service只是继承并有选择性地重写了某些规范的实现。

看下继承关系:


因此 Service本身就是Context的实现,所以只需要调用this
------------------------------------------------------------------------------------------------

@Override
      protected void onCreate(Bundle savedInstanceState ) {
           super .onCreate( savedInstanceState );
          setContentView(R.layout. activity_main );

           context = getApplicationContext();
}

      public static Context getContext() {
          
           return context;
     }


你可能感兴趣的:(Android)