模拟器-关于android service的问题

问题描述

关于android service的问题 3C
在activity中使用startservice启动service,然后长按home键,清除后台该程序,但是service也被删掉了,在模拟器中不会被删掉,但是真机就被删掉了,请问为什么

解决方案

还是用真机调试比较好;可以写一个BrocastReceiver,在Service销毁回调事件中发送广播,广播接收器重新启动Service

解决方案二:
你真机中清理,会把一些相关的停止。模拟器中应该没有清理吧。

解决方案三:
如果需要实现service长期留存后台,可以考虑通用做法:1.两个service相互监听,一个被杀掉另一个立刻启动;2.让service每隔几分钟自动重启一次。

解决方案四:
清除后,整个程序都被杀掉了,service随着立刻就消失

解决方案五:
真机是原生系统吗?深度定制系统有的有后台自动清理功能

解决方案六:
机器问题,一些定制系统会强行杀死后台应用,如小米。

解决方案七:
放到前台吧,或者给进程加锁

 Notification notification = new Notification(R.drawable.icon getText(R.string.ticker_text)        System.currentTimeMillis());Intent notificationIntent = new Intent(this ExampleActivity.class);PendingIntent pendingIntent = PendingIntent.getActivity(this 0 notificationIntent 0);notification.setLatestEventInfo(this getText(R.string.notification_title)        getText(R.string.notification_message) pendingIntent);startForeground(ONGOING_NOTIFICATION notification);
时间: 2024-07-28 19:53:54

模拟器-关于android service的问题的相关文章

如何测试 Android Service 里的 Singleton (1)

本文讲的是如何测试 Android Service 里的 Singleton (1), 最近我遇到个大麻烦:如何测试服务里的单例模式?最终我解决了这个问题.而且我觉得整个解决问题的过程是一个绝好的向读者清楚的解释单元测试的机会.限于篇幅,本文是第一篇文章,后面我会再写一篇. 我们的服务 // [PushService.java] public class PushService extends Service { public void onMessageReceived(String id,

Android Service生命周期及用法

上一节我讲解了Android Activity的生命周期,这一节我将讲解一下Service,首先我们要知道Service具体是干什么的,什么时候用到?以及它的生命周期等. Service概念及用途: Android中的服务,它与Activity不同,它是不能与用户交互的,不能自己启动的,运行在后台的程序,如果我们退出应用时,Service进程并没有结束,它仍然在后台运行,那我们什么时候会用到Service呢?比如我们播放音乐的时候,有可能想边听音乐边干些其他事情,当我们退出播放音乐的应用,如果不

Android Service服务(三) bindService与remoteService

一.bindService简介 bindService是绑定Service服务,执行service服务中的逻辑流程. service通过 Context.startService()方法开始,通过Context.stopService()方法停止:也可以通过Service.stopSelf()方法或者 Service.stopSelfResult()方法来停止自己.只要调用一次stopService()方法便可以停止服务,无论之前它被调用了多少次的 启动服务方法. 客户端建立一个与Service

Android Service服务(二) BroadcastReceiver

一. BroadcastReceiver简介 BroadcastReceiver,用于异步接收广播Intent,广播Intent是通过调用 Context.sendBroadcast()发送.BroadcastReceiver()接收. 广播Intent的发送是通过调用Context.sendBroadcast(). Context.sendOrderedBroadcast().Context.sendStickyBroadcast()来实现的.通常一个广播Intent可以被订阅了此Intent

Android Service中方法使用详细介绍

  Android Service中方法使用详细介绍 在Android中,Activity主要负责前台页面的展示,Service主要负责需要长期运行的任务.例如,一个从service播放音乐的音乐播放器,应被设置为前台运行,因为用户会明确地注意它的运行.在状态栏中的通知可能会显示当前的歌曲并且允许用户启动一个activity来与音乐播放器交互. Service的两种实现形式 1.非绑定 通过调用应用程序组件(例如Activity)的startService()方法来启动一个服务.一旦启动,服务就

mongodb-MongoDB可以作为android service使用吗?

问题描述 MongoDB可以作为android service使用吗? 请教各位大神,MongoDB可以作为android service使用吗?谢谢! 解决方案 mongodb是数据库,而且android上好像还没法安装mongodb吧?不过你可以把数据存到mongodb里面我个人觉得流程可以是这样: android -> Java Web (http) -> mongodb//或者android -> php(http) -> mongodb//还有其他语言也可以作为中间件使用

[Android]Service讲解

一. Service简介 Service是android 系统中的四大组件之一(Activity.Service.BroadcastReceiver.ContentProvider),它跟Activity的级别差不多,但不能自己运行只能后台运行,并且可以和其他组件进行交互.service可以在很多场合的应用中使用,比如播放多媒体的时候用户启动了其他Activity这个时候程序要在后台继续播放,比如检测SD卡上文件的变化,再或者在后台记录你地理信息位置的改变等等,总之服务总是藏在后台的. Serv

如何测试 Android Service 里的 Singleton (2)

本文讲的是如何测试 Android Service 里的 Singleton (2), 上一篇文章介绍了如何测试单例模式(PowerMock!),还有如何对 Android 代码做单元测试(Robolectric!).现在我们想要测试一个 Service 中的单例应该会很容易了吧? 第一次尝试: 结合 PowerMock 和 Robolectric (1) // src/PushService // [PushService.java] public class PushService exte

我的Android进阶之旅------>Android Service学习之AIDL, Parcelable和远程服务实例

通过上一篇(Android Service学习之AIDL, Parcelable和远程服务)的介绍,这一篇写一个小实例来实践一下 step1:建立两个应用,分别为RemoteService和RemoteServiceClient                                         先编写服务器端的内容 step2:开始编写一个StudentQuery.aidl文件      AIDL(Android Interface Definition Language),用来定