问题标签 [screen-off]

For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.

0 投票
1 回答
208 浏览

android - 当绑定活动被最近的应用程序杀死时正确停止服务

我有一个绑定服务播放声音Soundpool。如果应用程序正常退出(使用后退按钮),它可以正常工作。

但是,当应用程序被最近的应用程序杀死时,在下一次运行中,服务(声音)表现异常,尤其是在屏幕关闭时。

详细地:

  1. 应用被最近的应用杀死后启动时,我仍然可以在屏幕打开的情况下正常播放声音。
  2. 当屏幕关闭时,声音在接下来的几秒钟内播放 OK,然后开始闪烁。但是,当屏幕重新打开时,症状就会消失。

我用 Android N 测试过。代码没什么特别的,就像Android 开发者网站上的这个链接一样。

我不知道正常退出和最近应用程序杀死的应用程序之间有什么区别。

如果从最近的应用程序中删除应用程序,如何正确停止绑定服务。有什么帮助吗?

谢谢

0 投票
4 回答
2194 浏览

android - 服务中的Android如何知道屏幕何时被锁定?

我想在后台处理 Android 应用程序工作。我读过我必须为此使用服务。在这个应用程序中,我需要知道屏幕何时被锁定以及何时再次解锁。每次发生这种情况,我都必须采取一些措施。

对于活动,我已经看到我们为此设置了 onPause 和 onRestart,但我需要知道屏幕何时关闭以及何时在服务中打开。如何从服务内部检索此信息。

0 投票
3 回答
85 浏览

android - 有可能吗?,应用程序获取位置数据经纬度,android系统杀不掉,在屏幕关闭的情况下工作?

我要测试的设备是华为
android 应用程序即使在屏幕关闭时也可以工作吗?
在我的应用程序中不起作用:
-wakefullbroadcastservice + alarmmanager,-service + alarmmanager

-gps 设置旧方法和新 google.api.client,
-在服务和活动中使用唤醒锁,
-在服务、活动和单独的类中设置 gps,
所有这不起作用,因为:
- 或进入锁定屏幕,gps 每 10 或 20 秒保存一次,以仅作为解锁屏幕归档相同的经度和纬度,然后它开始真正的数据保存,
-或当屏幕关闭时保存各种数据它停止写入例如10-20或27,或18分钟没有任何重复,然后再次写入其他数据通常不改变它们的值纬度,经度,

我已经弄清楚了互联网提供但仍然无法工作的可能性一般来说,这是为了让应用程序一直保存我的纬度和经度,即使我已经锁定了屏幕,并且每 10-20 秒写入一次文件,是有可能吗? 为什么不为什么? 我目前在活动中被唤醒,我开始收听活动中的位置,并且数据纬度,经度随时间使用服务保存到文件中,然后将其关闭...... 请帮助,因为大屠杀:)

0 投票
2 回答
1855 浏览

raspberry-pi3 - Android Things:树莓派屏幕超时

我正在使用Android Things在Raspberry Pi上构建应用程序,并且我有7 英寸触摸屏,但屏幕永远不会关闭。

是否可以像在Android手机中一样设置超时?或强制它关闭/打开。

如果我拔掉电源线并重新插入屏幕,直到我重新启动它才会工作。

0 投票
0 回答
856 浏览

android - Android 强制空闲模式与真正拔掉设备

目前我正在开发一个在后台服务中进行蓝牙扫描的应用程序。我意识到如果我强制设备进入睡眠模式,手机的行为会有所不同

或从设备上拔下物理电缆。

我找不到有关存在差异的信息。但我已经认识到不同设备上的差异。

有没有办法将设备置于 I-physical-unplug-and-put-screen-off-mode 并且仍然能够使用 logcat 进行调试?

非常感谢。

0 投票
1 回答
361 浏览

android - 在android中关闭屏幕

嗨,对于我正在处理的项目,我必须关闭 android 设备的屏幕。在这里搜索后,我开始使用此代码:

一旦在活动中按下按钮,就会运行“screenOff”。“AdminReceiver.class”看起来像这样:

这似乎对其他人有用,我什至尝试了一些以相同方式工作的 github 项目。但是,我不断收到以下错误消息,由“devicePolicyManager.lockNow();”触发:

显然我在这里做错了什么。谁能帮我找到它?

PS:我的 AndroidManifest.xml 包含以下几行,让您知道:

提前致谢

0 投票
2 回答
1289 浏览

ios - 屏幕关闭/设备在 iOS 中锁定时计时器不运行

该应用程序在后台,它会在与 BLE 设备断开连接时收到回调,之后应用程序必须等待一段时间(1 分钟)然后执行一些代码。如果屏幕打开,即使在后台,应用程序也会按预期运行。但如果屏幕关闭,则计时器无法正常工作,并且应用程序无法按预期执行。

这是 AppDelegate 中用于在后台启动计时器的代码:

当与 BLE 设备断开连接时,我通过注册到后台任务来启动计时器:

0 投票
0 回答
211 浏览

android - 为什么屏幕关闭时调用 OnStop

我有一个现在很旧的android应用程序。它是通过 ant 的 android SDK 构建的。

该应用程序以屏幕开始并连接到蓝牙设备。应用程序执行唤醒锁定以保持 CPU 和用户按下电源关闭屏幕。

该应用程序在这里调用 onPause(),而不是 onStop()...一切正常,用户在屏幕关闭的情况下使用该应用程序。

但是,我将其移至 Android 工作室。我有相同的源,相同的资源文件,相同的 SDK,并且两者都编译为 android 19。但是当我按下通过 android studio 构建的版本上的电源按钮时,会调用 onStop(),这就是我不做的所有事情不想,比如断开BT设备??

为什么android studio编译版在power button上调用onStop(),而同源Ant编译版只调用onPause()?

0 投票
1 回答
2843 浏览

android - 如何防止手机进入空闲模式

我开发了一个应用程序,该应用程序使用服务流式传输音乐(通过互联网连接),并在电话闲置的情况下播放流媒体内容。

当我每次尝试下面提到的案例时,我都在开发我的应用程序时,音乐再现良好。

用例:搜索歌曲、从结果中选择歌曲、播放歌曲、关闭屏幕 -> 从结果列表中自动播放下一首歌曲

我正在使用真实设备进行开发 - 华为 Mate 20 Lite - OS v8.01,因此在调试时必须使用 USB 电缆。就像我说的那样,在连接到 USB 时遵循上面的用例,屏幕关闭时自动播放效果很好。它不起作用的情况是未连接电缆(仅打开移动数据)。

我发现手机在连接到 USB 时可能会使设备保持唤醒状态,并且不会进入空闲模式,而在大约 5 分钟后未连接时,设备可能会关闭消耗能源的进程或关闭与移动数据我不确定,我需要你们。

此外,我还使用 HTC U Play - OS v6.0 测试了应用程序,并且在屏幕关闭和手机 10 分钟以上未触摸时,流式传输流畅无中断。

此外,我尝试在 oncreate 中获取唤醒锁并且不释放它只是为了查看它是否有帮助而它没有。

pm = (PowerManager) getApplicationContext().getSystemService(Context.POWER_SERVICE); wl = pm.newWakeLock(PowerManager.PARTIAL_WAKE_LOCK, "MyWakeLock"); wl.acquire();

0 投票
1 回答
3753 浏览

android - 为什么在 Android Oreo 上关闭屏幕时前台服务停止?

当我关闭屏幕时,Android Oreo 会停止我的前台服务。当设备被拔下时,它会发生。我在华为 MediaPad T5 上测试我的应用程序。我使用 Handler.postDelayed 每 30 秒发送一次测试请求。

我读到了 Android 8 中的后台执行限制。在迁移指南中,写的是前台服务应该可以工作。我不能使用 JobScheduler、JobIntenService 或 WorkManager,因为它们只能每 15 分钟重复一次。

我无法使用 Firebase Cloud Messaging,因为我的应用会离线完成部分工作。

我也使用绑定服务,因为它不应该有后台限制。不幸的是,我的应用程序仍然无法正常工作。

我尝试使用 WakeLock,为另一个进程 AlarmManager 提供服务,将我的应用程序添加到白名单,但它仍然无法正常工作。

我通过简单的发布请求测试在后台运行。我通过改造库连接到测试服务器。

主要活动

本地服务类

发布界面

应用程序完美运行,当平板电脑正在充电或不充电并且屏幕开启时。即使屏幕关闭,Endomondo 也能正常工作。我错了什么?