第一步:

import android.app.Notification;

import android.app.PendingIntent;

import android.app.Service;

import android.content.Context;

import android.content.Intent;

import android.media.MediaPlayer;

import android.os.IBinder;

import android.util.Log;

import com.unopenbox.client.MainActivity;

import com.unopenbox.client.R;

import com.unopenbox.client.bean.MyResponse1;

import com.unopenbox.client.network.OkHttpClientManager;

import org.json.JSONException;

import okhttp3.Request;

import static android.app.Notification.PRIORITY_MAX;

/**

* Created by Administrator on 2018/9/13 0013.

*/

public class BackGroundService extends Service {

Notification notification;

private Context mContext;

private MediaPlayer bgmediaPlayer;

private boolean isrun = true;

public BackGroundService() {

}

@Override

public int onStartCo妹妹and(Intent intent, int flags, int startId) {

mContext = this;

Intent notificationIntent = new Intent(this, MainActivity.class);

PendingIntent pendingIntent = PendingIntent.getActivity(mContext, 0,

notificationIntent, PendingIntent.FLAG_UPDATE_CURRENT);

//1.关照栏占用,不清楚的看官网大概音乐类APP的结果

notification = new Notification.Builder(mContext)

.setSmallIcon(R.drawable.icon_bg)

.setWhen(System.currentTimeMillis())

.setTicker("GPS测试")

.setContentTitle("GPS测试标题")

.setContentText("GPS测试内容")

.setOngoing(true)

.setPriority(PRIORITY_MAX)

.setContentIntent(pendingIntent)

.setAutoCancel(false)

.build();

/*应用startForeground,要是id为0,辣么notification将不会显示*/

startForeground(100, notification);

//2.开启线程(大概必要按时操作的工作)

new Thread() {

@Override

public void run() {

super.run();

while (isrun) {

//你必要实行的使命

try {

Thread.sleep(10000);

} catch (InterruptedException es) {

es.printStackTrace();

}

OkHttpClientManager.postAsyn(OkHttpClientManager.ip + "item/returnDeadline", new OkHttpClientManager.ResultCallback() {

@Override

public void onError(Request request, Exception e) {

Log.e("=============", "1");

}

@Override

public void onResponse(MyResponse1 response) throws JSONException {

}

}, new OkHttpClientManager.Param("", ""));

}

//举行本人的操作

}

}.start();

//3.非常环节的神来之笔,也是非常谋利的动作,没办法要骗过CPU

//这即是播放音乐类APP不被杀的做法,本人找个无声MP3放进来轮回播放

if (bgmediaPlayer == null) {

bgmediaPlayer = MediaPlayer.create(this, R.raw.silent);

bgmediaPlayer.setLooping(true);

bgmediaPlayer.start();

}

return START_STICKY;

}

@Override

public IBinder onBind(Intent intent) {

throw new UnsupportedOperationException("Not yet implemented");

}

@Override

public void onDestroy() {

isrun = false;

stopForeground(true);

bgmediaPlayer.release();

stopSelf();

super.onDestroy();

}

}

第二步:

AndroidManifest中进入

android:name=".test.BackGroundService"

android:enabled="true"

android:exported="true" />

第三步:

在你必要挪用的页面挪用

Intent forgroundService = new Intent(this,BackGroundService.class);

startService(forgroundService);

结束,我这边做的测试是没问题  能够跑一晚上 没被kill

android后台进程常驻,android 后台常驻,不会被kill相关推荐

  1. android后台进程限制,Android O:服务未被后台执行限制停止

    我在 Android O上运行后台服务时遇到一种奇怪的行为. 我的示例应用使用了targetSdkVersion 26 我有一个简单的服务,只打印出一些状态信息,并使用START_STICKY重新创建 ...

  2. Android如何让APP进程常驻内存?

    Android如何让APP进程常驻内存? 如何让Android程序常驻内存,像QQ一样拥有强劲的生命力不被系统杀死?它传说中的进程保活(人类也在探索永生不死,App亦然),本文将会介绍进程保活的黑魔法 ...

  3. 详解android高仿微信后台接受消息,发送通知,监测网络连接

    公司让我研究websocket,利用这个时间写了个仿微信的demo. 服务器端功能比较简单:转发给所有的client (类似与群聊) android端功能:service后台接受消息:broadcas ...

  4. Django项目部署到阿里云服务器及后台常驻

    本文将记述如何简单的将自己的Django项目部署到阿里云服务器上. 准备条件: 阿里云服务器:centos 7.5 Nginx(反向代理) Python 3.7.3 Django 2.2+注意:cen ...

  5. java ios支付接口开发_微信支付接入(Android/IOS(swift)/Java后台)

    创建 包名.wxapi.WXPayEntryActivity 文件,保证内容如下(WechartUtils下面会给出): import android.app.Activity; import and ...

  6. Android解决程序切换后台被干掉,恢复状态问题

    Android解决程序切换后台被干掉,恢复状态问题 参考文章: (1)Android解决程序切换后台被干掉,恢复状态问题 (2)https://www.cnblogs.com/caiwan/p/And ...

  7. java 切换后台程序_将 Android 程序切换到后台及从后台切换到前台实现

    将 Android 程序切换到后台及从后台切换到前台实现 有时候, 我们需要将自己的 Android 程序切换到后台运行, 在必要时, 将其切换到前台运行下面提供了一种实现方式, 首先需要引用三个单元 ...

  8. 给Android工程师的Java后台学习建议

    给Android工程师的Java后台学习建议 作为一个原生Android开发,一路走来经历了Java . Kotlin的洗礼:在"原生要凉"的氛围下学习Cordova.ReactN ...

  9. android如何使用BroadcastReceiver后台实现来电通话记录的监听并存取到sqllite数据库通过Contentprovilder实现接口...

    BroadcastReceiver 是android四大组件的一个,本质上是一种全局的监听器,用于监听全局的广播消息.下面实现了后台监听android手机通话记录.本demo分两个程序,第一个程序是设 ...

最新文章

  1. Yii中Action详解
  2. ios 主题切换 思路_iOS 使用 NSObject 的分类实现快速切换主题
  3. 匹配嵌套的构造(较复杂)
  4. uni app map 地图 漂浮问题及方案
  5. Python编程基础 - 使用临时文件和临时目录
  6. .net中的各种委托(Delegate、Action、Func)
  7. 架构师补给站之EA(企业架构)
  8. python提取cad坐标_cad中坐标提取方法(一)
  9. 酷派春雷com.yulong.android,酷派7260 (春雷)一键刷机教程,亲测可用
  10. usboot应用两篇:用USBOOT修理移动硬盘等
  11. Load Switch负载开关详解
  12. linux rpm与deb 区别,rpm与deb的区别
  13. 计算机usb接口不工作原理,电脑usb接口不能用,详细教您电脑usb接口不能用怎么办...
  14. 倒计时7天丨2022全球边缘计算大会深圳站参会指南来啦!
  15. 字符移位(将大写字母移到字符串尾部并不改变相对顺序)
  16. Python 第二十八章 网络初识+五层协议+三次握手四次挥手
  17. 阿里云天池大赛赛题(机器学习)——O2O优惠券预测(完整代码)
  18. 华为服务器串口位置,bt串口服务器配置说明
  19. Mac下的终端(terminal)常用命令
  20. 如何通过IP地址来访问网站

热门文章

  1. 小学计算机应聘简历,小学计算机教师求职简历范文素材赏析
  2. 河南专升本公共英语语法考点分析---倒装句型
  3. 超棒!这 8 个 Python 装饰器值得一试!
  4. 创宇区块链|Rari Capital 遭受重入攻击,损失超 8000 万美元
  5. CV未来,路在何方?李飞飞指路!
  6. 前辈分享新正电工面试上岸方法
  7. 等价划分测试c语言测试三角形,软件测试--等价类划分与判定表判断三角形.doc...
  8. 闻风丧胆系统角色权限五张表的设计
  9. 找出用户需求,挖掘用户痛点
  10. unity 编辑mesh顶点位置