[android]如何防止 Galaxy S3 在转动空闲时停止我的应用程序?

标签: Android Galaxy
发布时间: 2014/3/5 0:52:07
注意事项: 本文中文内容可能为机器翻译,如要查看英文原文请点击上面连接.

我目前正在与三星 Galaxy S3 更新我的 Android 应用程序,非常震惊我忍不住要暂停我的应用程序,当变成空闲的电话。与我们部的 Galaxy S2 不发生这方面的问题,如果屏幕变黑这款应用程序仍然溪流到 sd 卡和 wifi 网络上的数据。S3 停止任何流数据。

我试过现在摆弄与能源-和显示设置但到目前为止有没有解决问题的办法。我的互联网搜索也不是成功。

可能的解决办法是生根的新电话和因而使高级的设置可见或增加超时 (而我不喜欢所以作为一种解决方案)。

你有任何的想法如何解决的问题或可能会启发我的一般输入吗?Thnx!

BTW: 这里是该应用程序的问题 (无广告):谷歌播放链接

解决方法 1:

我有一个应用程序,需要做类似的东西 (它是一个正在运行的教练,因此它需要继续说虽然用户保持他们的电话在他们的口袋里,半个小时左右。

首先,让其他人的阅读需要注意一个问题:不要这样如果你可以不去。如果你只需要定期做某事而不是连续,请考虑使用AlarmManager,其中可以叫醒电话从睡眠时不时要做点什么,所以不会打这么难的用户的电池。

但是,如果你确定你需要让手机保持清醒,你需要使用WakeLock。这里大致我是做我服务中 onStartCommand

PowerManager pm = (PowerManager) getSystemService(Context.POWER_SERVICE);       
mWakeLock = pm.newWakeLock(PowerManager.PARTIAL_WAKE_LOCK;, "RunClockService");
mWakeLock.acquire();

...现场 mWakeLock 是类型的实例变量 PowerManager.WakeLock . PARTIAL_WAKE_LOCK 会保留 CPU 运行,但不保留在屏幕。"RunClockService"标记只用于调试,根据文档。将其更改为您的类名。

然后,完成需要保持清醒的电话:

mWakeLock.release();

您还需要添加 WAKE_LOCK 的权限您 AndroidManifest.xml

    <uses-permission android:name="android.permission.WAKE_LOCK"/>
官方微信
官方QQ群
31647020