AndroidStudio_android通过服务,检测本程序是否已经终止运行_终止运行后发送通知给Http服务器---Android原生开发工作笔记246
先做的一个项目,大体是,我这边如果程序已经停止,需要发送一个通知给远程的Httpserver服务器,
然后,远程服务器会通过websocket,通知,显示在大屏上的页面,去清空大屏数据,这样就有问题了,
android,程序如果终止,不走ondestroy这个方法,所以没办法,在这里面进行,发送消息给HttpServer服务器.
那怎么办呢?
可以通过服务来实现,我们去写一个Service,然后通过这个service,我们在MainActivity中,启动这个service,
然后,这个service,会每隔1秒钟或者多久,去检测,我们的这个程序是否还在运行,如果不运行了,就
发送一个通知给远程的HttpServer服务器.
并且,这个Service,也会随着,我们的程序的结束而自动结束.虽然,Service自动结束了,但是
之前,我们的Service中,发送的message给Handler,这个还没有执行完,我们发送过去的message会放到
队列中,所以,就会出现,虽然我们的程序终止了,并且Service也终止了,但是service中,检测到程序终止,发送
给远程服务器的清屏命令,也是生效的.
下面是我们的,检测程序是否已经关闭,如果关闭就给远程服务器发送Http,清屏命令的类:
package com.baidu.idl.face.main.server;import android.app.ActivityManager;
import android.app.Service;
import android.content.Intent;
import android.os.Handler;
import android.os.IBinder;
import android.os.Message;
import android.util.Log;import com.baidu.idl.main.facesdk.utils.GetConfigValue;import java.io.IOEx
AndroidStudio_android通过服务,检测本程序是否已经终止运行_终止运行后发送通知给Http服务器---Android原生开发工作笔记246相关推荐
- AndroidStudio_后台服务以及活动和服务间通信_通过service中的binder实现活动和服务的通信---Android原生开发工作笔记216
onBind,可以把我们服务修改的内容,反应到android的界面上去. 可以看到之前我们写了一个service服务,可以看到里面,已经覆盖了一个onBind方法,我们在这里写,绑定到界面的逻辑就可以 ...
- AndroidStudio_安卓原生开发_获取系统S/N序列号_实现在springboot服务端_设备远程保活监控---Android原生开发工作笔记159
android项目做好了,以后,所有pad设备,在springboot服务后端,需要实现监控,那么,这个时候就需要保活机制,这个保活机制,可以让服务端,实时监控,所有的pad设备的,工作状态. 实现思 ...
- AndroidStudio_android蓝牙开发总结_连接硬件设备_测量_血压_血糖_握力_心电_等---Android原生开发工作笔记244
关于硬件设备的蓝牙连接一般都有给的demo,一般情况下按照demo去写就可以了,但是实际情况下, 有时候,实际应用,要比demo要复杂一些,比如设备使用过程中,直接就断开,断电等异常情况比较多. 我看 ...
- AndroidStudio_android实现双击_3击_监听实现---Android原生开发工作笔记240
这里可以实现3击,或者2击. 下面的方法可以实现,检测用户按下屏幕,3击,或者2击 //按钮点击配置 long[] mHits = new long[3]; 这里写入2,就是2击,3就是3击,下面是我 ...
- AndroidStudio_Android中使用Handler实现非阻塞线程间通讯_跨线程更新UI_耗时处理完成后主动通知更新UI_在同一个activity用---Android原生开发工作笔记219
其实也是很简单的,比如,我们要是在android中去访问,http请求服务器的话,那么这个时候,UI线程不会一直等着,你访问完成,再去更新UI,因为这样 会导致看起来卡顿. 这个时候可以这样: 例如我 ...
- AndroidStudio_后台_服务的介绍_生命周期_注册_启动停止---Android原生开发工作笔记215
由于项目需要这里先直接跳到服务这里了,之后会补充其他部分. 先看一下服务的介绍.这个服务类似于windows中的服务,可以在服务列表中找到 首先声明一个服务的类,然后把这个服务类注册到 manifes ...
- AndroidStudio_android开发在线文档_在线API_蓝牙开发在线文档---Android原生开发工作笔记243
http://www.android-doc.com/guide/topics/connectivity/bluetooth.html http://www.android-doc.com/refer ...
- AndroidStudio_android中实现对properties文件的读写操作_不把properties文件放在assets文件夹中_支持读写---Android原生开发工作笔记238
这个东西还挺麻烦,因为是android中,我们一般把文件放到assets文件夹中去,但是实际上,这个raw文件夹和assets文件夹 是只读的,对,就是只读的只能读取,不能写入,所以一定要把文件写入到 ...
- AndroidStudio_android中实现ImageView的清空操作---Android原生开发工作笔记235
清空imageView控件的图片,有几种方式 check_step_img.setBackground(null); check_shy_ns_img.setBackground(null); che ...
最新文章
- 百度编辑器修改,不让它自动替换html标签
- linux shell脚本 引入外部shell文件
- 设计模式复习-备忘录模式
- BZOJ-2190-仪仗队-SDOI2008-欧拉函数
- Poj(1459),最大流,EK算法
- 【文文殿下】网络流学习笔记
- [Sdoi2010] 地精部落
- TensorFlow实验(2)
- 最佳展示场景kit:顶部视角的展示场景(Mockups)
- 经典Python面试题之Python基础篇
- 用layoutit框架写的Bootstrap首页
- 苹果也能做深度学习了!PyTorch宣布支持苹果M1芯片GPU加速:训练快6倍,推理提升21倍...
- org.apache.flink.util.FlinkRuntimeException: Exceeded checkpoint tolerable failure threshold
- redis的hash与string区别
- Unity学习之Human fall flat创意工坊地图制作
- 登录功能的测试用例设计
- ROS-talker,listener
- 【数学】均匀分布生成其他分布的方法
- H5活动邀请函用这个就可以了
- 任正非在2012实验室的讲话