gpt4 book ai didi

android - 唤醒谷歌眼镜的屏幕以显示基于位置的当前信息

转载 作者:行者123 更新时间:2023-11-29 00:16:31 24 4
gpt4 key购买 nike

我正在构建一个沉浸式驾驶应用程序,它不应在屏幕上显示任何内容并在后台运行,直到驾驶员到达某个特定位置标记为止。一旦到达或靠近该位置,根据 GPS 位置,屏幕应该会唤醒,并显示与该位置相关的内容。这看起来很简单,但我还没有找到任何对我有意义的解决方案。获取和比较 GPS 信息不是问题,但是您如何根据某些事件、某物的变化或您以编程方式定义的某物唤醒屏幕?

这是否是我应该使用 Mirror API 来处理而不是将通知推送到时间线的事情?

我使用沉浸式的原因是我不希望驱动程序能够像实时卡允许的那样进行多任务处理。相反,他/她应该启动该应用程序,它将接管其余部分(将通知推送到显示屏)。这些通知会在几秒钟后或 Glass 想要回到“ sleep ”状态时自行消失。

如果您对此事有任何想法,我们将不胜感激。我已经阅读了有关唤醒锁的内容,但不确定这是否与我正在做的事情有关。提前致谢。

最佳答案

只是想知道,您是否考虑过将屏幕调暗到最低限度?如果您真的不想看到任何东西,也许可以将颜色更改为黑色?

这就是问题所在 - 根据 Google Glass TOS,您实际上无法在应用程序运行时关闭屏幕,因此即使您找到了一些骇人听闻的方法来做到这一点,您也不应该这样做。我的应用程序也遇到了这个问题。

我的解决方案(我的问题是电池消耗速度快得令人难以置信)是使用以下代码:

调暗屏幕(即使显示为 0f,它仍然有点亮)

WindowManager.LayoutParams lp = getWindow().getAttributes();
lp.screenBrightness = 0f;
getWindow().setAttributes(lp);

返回全亮度:

WindowManager.LayoutParams lp = getWindow().getAttributes();
lp.screenBrightness = 1f;
getWindow().setAttributes(lp);

然后如果你想隐藏屏幕上的内容,你可以在布局中的所有内容上添加一个黑框并将其设置为 android:visibility="gone"直到你想使屏幕变暗,然后设置黑框的一旦您希望屏幕再次打开并使其变亮,可见性就会变为可见并返回消失。

如果您想使用人们在打开应用程序之前的亮度而不是将屏幕亮度设置为最大,您可以在 onCreate 中使用此代码来获取原始亮度,以便您知道要设置什么稍后:

int previousScreenBrightness = android.provider.Settings.System.getInt(getContentResolver(), Settings.System.SCREEN_BRIGHTNESS);

另外,在顶部设置这个标志,这样应用程序就不会随着时间的推移自行变暗/关闭:

getWindow().addFlags(WindowManager.LayoutParams.FLAG_KEEP_SCREEN_ON);

希望对您有所帮助。祝你好运!

关于android - 唤醒谷歌眼镜的屏幕以显示基于位置的当前信息,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/26495192/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com