QQ push 进程守护

package com.tencent.mm.booter;

 

import android.app.AlarmManager;

import android.app.PendingIntent;

import android.content.BroadcastReceiver;

import android.content.Context;

import android.content.Intent;

import com.tencent.mm.sdk.platformtools.o;

import com.tencent.mm.sdk.platformtools.r;

 

public class MMReceivers$AlarmReceiver extends BroadcastReceiver

{

  public static void k(Context paramContext)

  {

    long l1 = r.aag();

    o.ak("MicroMsg.AlarmReceiver", "bumper comes, next=" + l1);

    if (l1 > 1860000L)

      return;

    if (l1 < 30000L);

    for (long l2 = 30000L; ; l2 = l1)

    {

      o.ai("MicroMsg.AlarmReceiver", "reset bumper, interval=" + l2);

      AlarmManager localAlarmManager = (AlarmManager)paramContext.getSystemService("alarm");

      if (localAlarmManager == null)

      {

        o.ah("MicroMsg.AlarmReceiver", "keep bumper failed, null am");

        return;

      }

      PendingIntent localPendingIntent = PendingIntent.getBroadcast(paramContext, 1, new Intent(paramContext, AlarmReceiver.class).putExtra("MMBoot_Bump", true), 268435456);

      localAlarmManager.set(0, l2 + System.currentTimeMillis(), localPendingIntent);

      return;

    }

  }

 

  public static void l(Context paramContext)

  {

    AlarmManager localAlarmManager = (AlarmManager)paramContext.getSystemService("alarm");

    if (localAlarmManager == null)

      o.ah("MicroMsg.AlarmReceiver", "stop bumper failed, null am");

    PendingIntent localPendingIntent;

    do

    {

      return;

      localPendingIntent = PendingIntent.getBroadcast(paramContext, 1, new Intent(paramContext, AlarmReceiver.class).putExtra("MMBoot_Bump", true), 536870912);

    }

    while (localPendingIntent == null);

    localAlarmManager.cancel(localPendingIntent);

    localPendingIntent.cancel();

  }

 

  public static void m(Context paramContext)

  {

    o.ai("MicroMsg.AlarmReceiver", "keep awaker");

    AlarmManager localAlarmManager = (AlarmManager)paramContext.getSystemService("alarm");

    if (localAlarmManager == null)

    {

      o.ah("MicroMsg.AlarmReceiver", "keep awaker failed, null am");

      return;

    }

    PendingIntent localPendingIntent = PendingIntent.getBroadcast(paramContext, 0, new Intent(paramContext, AlarmReceiver.class), 268435456);

    localAlarmManager.setRepeating(0, 900000L + System.currentTimeMillis(), 900000L, localPendingIntent);

  }

 

  public static void n(Context paramContext)

  {

    o.ai("MicroMsg.AlarmReceiver", "stop awaker");

    AlarmManager localAlarmManager = (AlarmManager)paramContext.getSystemService("alarm");

    if (localAlarmManager == null)

      o.ah("MicroMsg.AlarmReceiver", "keep awaker failed, null am");

    PendingIntent localPendingIntent;

    do

    {

      return;

      localPendingIntent = PendingIntent.getBroadcast(paramContext, 0, new Intent(paramContext, AlarmReceiver.class), 536870912);

    }

    while (localPendingIntent == null);

    localAlarmManager.cancel(localPendingIntent);

    localPendingIntent.cancel();

  }

 

  public void onReceive(Context paramContext, Intent paramIntent)

  {

    boolean bool = paramIntent.getBooleanExtra("MMBoot_Bump", false);

    o.aj("MicroMsg.AlarmReceiver", "[ALARM NOTIFICATION] bump:" + bool);

    if (bool)

      k(paramContext);

    while (g.c(paramContext, "alarm"))

      return;

    n(paramContext);

  }

}

 

 

 

原理,用AlarmManager 间隔12s启动一次service  没有重写service的onStartCommand

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
Android QQ 音乐音乐播放进程没有被杀死是指在使用 QQ 音乐时,即使退出了 QQ 音乐应用程序,但音乐播放进程依然在后台运行,没有被系统杀死。 这种情况可能是由于以下几个原因造成的: 1. QQ 音乐的后台播放功能:QQ 音乐可以在后台继续播放音乐,即使应用程序被退出或切换到其他应用程序。这是为了方便用户在使用手机时能够同时享受音乐的功能,但也会导致音乐播放进程没有被杀死。 2. 系统后台处理策略:Android 系统会根据资源情况和应用程序优先级来管理后台进程。如果系统资源充足,它可能会允许 QQ 音乐的音乐播放进程继续在后台运行。只有当系统资源紧张时,才会主动杀死一些后台进程以释放资源。 3. 自启动或系统优化设置:有些机型或系统可能会存在自启动或自行优化设置,这些设置会让某些应用程序在系统启动时或后台进程运行时不被主动杀死。如果 QQ 音乐被设置为不被系统杀死,那么音乐播放进程就会一直存在。 对于用户来说,如果想要彻底停止 QQ 音乐的音乐播放进程,可以尝试以下方法: 1. 手动关闭:在手机的任务管理器中找到 QQ 音乐的进程,然后手动关闭它。 2. 杀死后台进程:通过系统设置,找到应用程序管理,然后找到 QQ 音乐应用,在该页面中可以看到 QQ 音乐的运行状态,点击停止或强制停止需求可以停止后台进程。 3. 设置系统优化:如果手机有自启动或系统优化的设置,可以检查是否可以将 QQ 音乐设置为不被自动启动或优化。 需要注意的是,某些情况下后台进程的存在可能是为了提供更好的用户体验,如果用户确实想要彻底停止 QQ 音乐的音乐播放进程,建议在保证系统稳定性和资源充足的前提下进行相应设置。
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值