远程服务 - 关闭启动后重新启动活动

问题描述:

我被阻止了几天,无法找到答案。远程服务 - 关闭启动后重新启动活动

我从一个Activity开始一个远程服务。启动服务后,我关闭启动Activity(我按下活动中的一个按钮启动远程服务)。

发生的事情是我的服务重新启动!当我关闭启动活动。 我把启动Activity放在后台,进入onPause()状态,然后从任务管理器关闭它。

当我这样做,我的远程服务重新启动,并在大约2秒后再次打开。 所有的内部变量将被重置,我不希望这样。

- 我不希望使用useForeground()方法,因为我不希望我的服务是在通知

可见 - 也想使用onBind()与服务

我“已经宣布它是这样:

我现在开始这样的远程服务和服务启动(我可以看到它的服务区域):

//button clicked form onCreate() launching Activity 
    btnStartSrv.setOnClickListener(new OnClickListener() { 
    public void onClick(View v) {      
     startService(new Intent("RM_SRV_AIDL"));//the name of the service 
    } 
    }); 
在T

他AndroidManifest.xml我宣布这样的远程服务:

<service 
     android:name="com.mainActivity.MyRemoteService" 
     android:label="somenameService" 
     android:process=":remote" 
    >  
     <intent-filter> 
      <action android:name="RM_SRV_AIDL" /> 
     </intent-filter> 
    </service> 

如何通过重新启动问题?

我不知道你真正想要的,因为你说你要onBind()但没有它在你的代码片断而且你用startService()这通常是你开始Services其他的方式做。

然而,这些可以帮助你:

"A service can be both started and have connections bound to it."所以你不必之间选择一个有界ServiceonBind())或显式启动/停止一个(startService())。

也不要忘记设置Service FLAGS开始onStartCommand (Intent intent, int flags, int startId),如START_STICKY

希望这些帮助。

+0

我只使用startService()。对于onBind()方式,我将在稍后使用startService()并修复重置问题。现在重新设置服务是主要问题 – marisxanis

+0

好吧,你有没有尝试设置我写的标志? 没关系,只是看到它在其他职位 – IBoS

+0

你确定你没有关闭服务以及使用你的任务管理器?这应该解释重启问题。尽量不要使用任何任务管理器,让系统在不使用它之后停止你的活动,并检查你的服务是否以这种方式关闭。 – IBoS