我正在开发一个不需要位置服务的Android应用程序,我不想添加这个权限。
当我在我的物理设备(Moto G5 Plus和Android8.1.0)上进行测试时,我在Logcat中看到了以下令人恶心的重复:
TwilightManager:无法得到最后一个已知的位置。这可能是因为应用程序没有任何位置权限。返回到硬编码的日出/日落值。
我不想要,我不需要。我想不出怎么摆脱它。
android.support.v7.app.TwilightManager.isNight()显然是被什么东西打电话了,但我不知道如何告诉它不要一直打电话给它。
我试过几种get系统服务之类的东西,但始终没有找到秘密握手。此外,TwilightManager是私人的。
getBlahBlahService(android.support.v7.app.TwilightManager.class);
//'android.support.v7.app.TwilightManager' is not public in 'android.support.v7.app'. Cannot be accessed from outside package 发布于 2019-03-23 00:50:59
停止日志记录的一种方法是告诉TwilightManager不要使用夜间模式:
AppCompatDelegate.setDefaultNightMode(AppCompatDelegate.MODE_NIGHT_NO)
这可以从您的第一次活动中运行。
或者,您可以理解为什么TwilightManager认为它需要为您做任何事情。检查一下你的styles.xml。你有白天晚上的主题吗?
<style name="CommonTheme" parent="Theme.AppCompat.DayNight.DarkActionBar">
你可以考虑其他选择。
https://stackoverflow.com/questions/55290027
复制相似问题