2013-07-03 30 views
1

我有一个从我的应用程序的活动启动的启动服务。我正在使用此服务播放在线广播(如TuneIn)手机锁定时服务停止运行

问题是,当我锁定手机时;

  • 如果我的应用程序在屏幕上(启动和可见),服务继续运行。
  • 如果我的应用程序停止(隐藏)或销毁,服务也会停止运行。但有时候以后它会再次启动。

我检查了TuneIn这种情况下,它运行在每种情况下。

我怎样才能做到这一点?

编辑:

我试图用激活锁定,但我的情况下继续:

public void onCreate() { 

... 

pm = (PowerManager) getSystemService(Context.POWER_SERVICE); 

wl = pm.newWakeLock(PowerManager.PARTIAL_WAKE_LOCK, "RadyoService WakeLock"); 

wl.acquire(); 

super.onCreate(); 
} 



public void onDestroy() { 

     wl.release(); 

     super.onDestroy(); 
} 

,并采取许可:

<uses-permission android:name="android.permission.WAKE_LOCK" /> 

你能帮我找到错误,我做了什么?

谢谢。

回答

3

您将需要维护WakeLock,以防止设备进入睡眠模式。

+0

我已经搜索了这个解决方案,但它有排出电池的副作用,所以我不喜欢。 – Taner

+1

@Taner:你的行为就像你有一个选择。你不。 – CommonsWare

+0

我按照你的建议使用了WakeLock。但不能得到它的工作。用我使用的代码编辑我的问题。可能是什么问题? – Taner