• Android之Service


    Service是Android系统中的四大组件之中的一个,它与Activity不同,它是不能与用户交互的。

    它是一种长生命周期的,没有可视化界面。执行于后台的一种服务程序。
            1.Android中的服务没实用户操作界面,它执行于系统中不easy被用户发觉,能够使用它开发如监控之类的程序。

    服务的开发比較简单,例如以下:
                                      第一步:继承Service类
                                                 public class MyService extends Service { }
                                      第二步:在AndroidManifest.xml文件里的<application>节点里对服务进行配置:
                                                <service android:name=".MyService" />
    服务不能自己执行。须要通过调用Context.startService()或Context.bindService()方法启动服务。这两个方法都能够启动Service
        2.Service与Activity一样,也有一个从启动到销毁的过程,但Service的这个过程比Activity简单得多。Service启动到销毁的过程仅仅会经历例如以下3个阶段: 
                                  创建服务      public void onCreate();

                                  開始服务      public void onStart(Intent intent, int startId); 

                                  销毁服务       public void onDestroy();

     

     

    MyService.java
    
    
    package com.example.service;
    
    import android.app.Service;
    import android.content.Intent;
    import android.os.IBinder;
    
    public class MyService extends Service {
    
    	@Override
    	public IBinder onBind(Intent intent) {
    		// TODO Auto-generated method stub
    		return null;
    		
    	}
    
    	@Override
    	public void onCreate() {
    		// TODO Auto-generated method stub
    		System.out.println("###onCreate###");
    	}
    
    	@Override
    	public void onDestroy() {
    		// TODO Auto-generated method stub
    		System.out.println("###onDestroy###");
    	}
    
    	@Override
    	public int onStartCommand(Intent intent, int flags, int startId) {
    		// TODO Auto-generated method stub
    		System.out.println("###onStartCommand###");
    		return Service.START_CONTINUATION_MASK;  //继续运行
    	}
    
    }
    


     

    MainActivity.java
    
    
    package com.example.service;
    
    import android.os.Bundle;
    import android.app.Activity;
    import android.content.DialogInterface;
    import android.content.Intent;
    
    import android.view.Menu;
    import android.view.View;
    import android.view.View.OnClickListener;
    import android.widget.Button;
    
    public class MainActivity extends Activity {
    private Button start=null;
    private Button stop=null;
    	@Override
    	protected void onCreate(Bundle savedInstanceState) {
    		super.onCreate(savedInstanceState);
    		setContentView(R.layout.activity_main);
    		start=(Button)findViewById(R.id.start);
    		stop=(Button)findViewById(R.id.stop);
    		this.start.setOnClickListener(new StartOnClickListenerImpl());
    		this.stop.setOnClickListener(new StartOnClickListenerImpl());
    	}
    	private  class StartOnClickListenerImpl implements OnClickListener{
    
    		@Override
    		public void onClick(View v) {
    			// TODO Auto-generated method stub
    			MainActivity.this.startService(new Intent(MainActivity.this,MyService.class));
    		}
    
    		private  class StoptOnClickListenerImpl implements OnClickListener{
    
    			@Override
    			public void onClick(View v) {
    				// TODO Auto-generated method stub
    				MainActivity.this.startService(new Intent(MainActivity.this,MyService.class));
    			}
    			
    		}
    		
    	}
    
    }
    


    注意不要忘了AndroidManifest.xml


     

  • 相关阅读:
    FactoryBean的作用
    ztree点击文字勾选checkbox,radio实现方法
    js判断字符长度 汉字算两个字符
    双系统引导修复
    thinkpadT440p
    分布式服务器集群
    Eclipse插件安装方式
    用SourceTree轻巧Git项目图解
    廖雪峰git使用完整教程
    hessian
  • 原文地址:https://www.cnblogs.com/yxwkf/p/5350116.html
Copyright © 2020-2023  润新知