前台service

package cn.zdh.mybroadcastreceive;

import android.app.Notification;
import android.app.PendingIntent;
import android.app.Service;
import android.content.Intent;
import android.os.Binder;
import android.os.IBinder;
import android.support.annotation.Nullable;

/**
 * Created by Administrator on 2018/7/20.
 */

public class MyService extends Service {

    @Override
    public void onCreate() {
        super.onCreate();
        startPlayback();
    }


    /**
     * 启动
     * 前台服务
     */
    private void startPlayback() {
        int NOTIFICATION_ID = 1;
        // 创建一个单击通知时将打开的Activity的Intent
        Intent intent = new Intent(this, MainActivity.class);
        PendingIntent pi = PendingIntent.getActivity(this, 1, intent, 0);

        Notification myNotify = new Notification.Builder(this)
                .setSmallIcon(R.mipmap.ic_launcher).setTicker("通知")
                .setContentTitle("前台service通知标题")
                .setContentText("前台service通知内容").setContentIntent(pi)
                .getNotification();

        // 设置notification的flag,表明在点击通知后,通知并不会消失,也在最右图上仍在通知栏显示图标。
        // 这是确保在activity中退出后,状态栏仍有图标可提下拉、点击,再次进入activity。
        myNotify.flags |= Notification.FLAG_NO_CLEAR;

        startForeground(NOTIFICATION_ID, myNotify);//重点

    }

    @Override
    public boolean stopService(Intent name) {
        if (name.getBooleanExtra("stop", false)) {
            stop();
        }
        return super.stopService(name);

    }

    /**
     * 停止前台服务
     */
    public void stop() {
        //移到后台并移出Notification
        stopForeground(true);//重点

    }


    @Nullable
    @Override
    public IBinder onBind(Intent intent) {
        return null;
    }


    class MyBinder extends Binder {
        public void toDo() {
        }
    }


}

 

、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、

 

//启动service

startService(intent2);

//停止service

 stopService(intent2);

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值