- iOS/Objective-C 元类和类别
- objective-c - -1001 错误,当 NSURLSession 通过 httpproxy 和/etc/hosts
- java - 使用网络类获取 url 地址
- ios - 推送通知中不播放声音
我有一个正在运行的动态壁纸并对 SCREEN_ON
事件使用react以在 Canvas 上显示更改。然而,在某些手机上,用户可以设置不同的锁屏和主屏幕墙纸(Touchwiz,某些 Xperia 设备)。当用户在锁屏上设置不同的壁纸时,我的动态壁纸不会显示。
在 Galaxy S3 上,我使用了 WallpaperService.Engine.isVisible()
,当用户设置不同的锁屏壁纸时,它会正确返回 false
。然而,在 Galaxy S3 Mini 上,这不起作用,因为无论我的动态壁纸是否是 Activity 的锁屏壁纸,isVisible()
都会返回 true
。
WallpaperManager.getWallpaperInfo()
或 WallpaperManager.peekDrawable()
也不起作用,因为 getWallpaperInfo()
无论如何都会返回我的动态壁纸当前锁屏壁纸,并且 peekDrawable()
返回一个有效的可绘制对象,即使我的动态壁纸已为两个屏幕设置。我试过听 WallpaperService.Engine.onTouchEvent(..)
,但是来自锁屏的触摸事件没有传递到我的动态壁纸,因为它们被解锁 slider 消耗了。
有没有其他方法可以检测我的动态壁纸是否是当前的锁屏壁纸?我对反射黑客、变通办法以及所有能让我做到这一点的东西都很好。
编辑:它也适用于 Galaxy Note 2,但不适用于 Xperia T LT30p
最佳答案
AOSP 版本的 Android 不支持锁屏壁纸。该功能完全由 OEM(三星、索尼、LG 等)制造,因此处理锁屏壁纸的 API 在 OEM 之间完全不同。此外,一些 OEM 仅不支持锁屏上的动态壁纸,而其他 OEM 则支持。
由于它们是 OEM 添加的 APIS,您应该使用反射来访问它们。但是,它可以在一个 OEM 设备上运行,但相同的代码将无法在其他 OEM 设备上运行。
关于android - 查看是否设置了不同的主屏幕和锁屏壁纸,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/14484394/
如何从 Android-Native-Screen 打开 flutter 屏幕? 我开了一个 Android-Native-Screen 从现有我们 flutter 项目 . 所以,在 Android
有人知道如何使用 java 和 google chrome 最大化 selenium webdriver 窗口吗? 我已经尝试过一些命令,例如maximize () window (),但没有成功。
Redmi A65 智能电视今天正式开卖,4K 超高清大屏 + 立体声扬声器,到手价 2599 元。 IT之家了解到,Redmi A65 智能电视搭载了一块 65 英寸 4K 屏,支持 HDR
9 月 26 日消息小米电视大师「至尊纪念版」将在 9 月 29 日发布,根据今天小米集团大家电部总经理李肖爽放出的海报显示,小米电视大师至尊版有两款。 小米电视大师「至尊纪念版」是小米首款
华为手环 6 今日在海外正式发布,英文名 Band 6。这款产品是华为手环 4 的升级版,屏幕尺寸由 0.96 英寸升级为 1.47 英寸 AMOLED 屏,分辨率 194 x 368。该手环外形类
我是一名优秀的程序员,十分优秀!