zoukankan      html  css  js  c++  java
  • 安卓四大组件之Sevice组件的简单使用 --Android基础

    1、本例实现了简单的Service(服务)的创建、启动和停止,点击“启动SERVICE”页面会显示“服务被创建”,接着是“服务被启动”。点击“停止SERVICE”页面提示“服务被停止”。太过基础,直接贴代码了……新手看看,老司机就忽略吧……

    2、基本代码

    ServiceDemo:

    package thonlon.example.cn.servicedemo;

    import android.app.Service;
    import android.content.Intent;
    import android.os.IBinder;
    import android.support.annotation.Nullable;
    import android.util.Log;
    import android.widget.Toast;

    /**
    * 绑定服务的时候被调用
    */
    public class ServiceDemo extends Service {
      @Nullable
      @Override
      public IBinder onBind(Intent intent) {
        return null;
      }

    /**
    * Service被创建后被调用
    */
      @Override
      public void onCreate() {
        Toast.makeText(ServiceDemo.this,"服务被创建",Toast.LENGTH_SHORT).show();
        Log.d("onCreate", "服务被创建");
      }

    /**
    * Service被开始后调用
    *
    * @param intent
    * @param flags
    * @param startId
    * @return
    */
      @Override
      public int onStartCommand(Intent intent, int flags, int startId) {
        Toast.makeText(ServiceDemo.this,"服务被启动",Toast.LENGTH_SHORT).show();
        Log.d("onStartCommand", "服务被启动");
        return super.onStartCommand(intent, flags, startId);
      }

    /**
    * Service被停止后调用
    */
      @Override
      public void onDestroy() {
        Toast.makeText(ServiceDemo.this,"服务被停止",Toast.LENGTH_SHORT).show();
        Log.d("onDestroy", "服务被停止");
      }
    }

    MainActivity:

    package thonlon.example.cn.servicedemo;
    import android.content.Intent;
    import android.support.v7.app.AppCompatActivity;
    import android.os.Bundle;
    import android.view.View;

    public class MainActivity extends AppCompatActivity {
      @Override
      protected void onCreate(Bundle savedInstanceState) {
        super.onCreate(savedInstanceState);
        setContentView(R.layout.activity_main);
      }
      public void onClick(View v){
        Intent intent = new Intent();
        intent.setClass(this,ServiceDemo.class);
        switch (v.getId()){
          case R.id.btn_start_service://第一次点启动Service,服务会被创建,之后再点击启动服务不会再被创建,服务已经被创建
            startService(intent);
            break;
          case R.id.btn_stop_service:
            stopService(intent);
            break;
        }
      }
    }

  • 相关阅读:
    微信接口开发之高级篇系列【微信权限封装类WechatAuth】
    微信接口开发之高级篇系列【用户分组接口和生成带参数的二维码】
    微信接口开发之高级篇系列【网页授权获取用户基本信息】
    微信接口开发之高级篇系列【微信JS-SDK】
    微信接口开发之高级篇系列【网页授权详细说明【提供测试账号使用】】
    微信接口开发之高级篇系列【网页授权接口】
    历史SQL语句之一
    盘点2019 | 金融科技发展大事件~
    FinTech终于被正名!央行印发金融科技发展规划
    安装配置开源的laravel项目到本地环境
  • 原文地址:https://www.cnblogs.com/qikeyishu/p/9186022.html
Copyright © 2011-2022 走看看