我自己编写的一个定时发送短信的程序。我用service来让它在后台运行,在service里面用handler来添加线程。我测试过了,在手机屏幕亮着的情况下,是完好的,可是一旦锁屏之后,就发不出短信了,这是为什么呢?怎么解决啊?



用WakeLock
 WakeLock mWakeLock;
服务启动时acquire,退出时release

//申请设备电源锁
	private void acquireWakeLock()
	{
		if (null == mWakeLock)
		{
			PowerManager pm = (PowerManager)mContext.getSystemService(Context.POWER_SERVICE);
			mWakeLock = pm.newWakeLock(PowerManager.PARTIAL_WAKE_LOCK|PowerManager.ON_AFTER_RELEASE, TAG);
			if (null != mWakeLock)
			{
				mWakeLock.acquire();
			}
		}
	}
	
	//释放设备电源锁
	private void releaseWakeLock()
	{
		if (null != mWakeLock)
		{
			mWakeLock.release();
			mWakeLock = null;
		}
	}

相关文章:

  • 2021-09-16
  • 2021-12-04
  • 2021-12-14
  • 2021-04-27
  • 2022-01-03
  • 2021-06-07
  • 2022-01-18
  • 2021-11-14
猜你喜欢
  • 2022-12-23
  • 2021-11-07
  • 2021-09-13
  • 2021-11-28
  • 2021-11-07
  • 2021-11-04
相关资源
相似解决方案