我正在创建一个应用程序,当用户按下电源按钮5次时需要执行某些操作。
我发现在iOS中很难实现,但我认为这并非不可能。即使应用程序在后台运行,我如何监听电源键事件?
任何人都可以帮我找到解决方案吗?
答案 0 :(得分:1)
您可以点击一次电源键,也无法从应用程序中检测到该事件,这在iOS中目前无法实现,最好尝试以不同的方式在您的应用中发送警报,在您的应用中设置一些条件应用程序然后根据这些条件发送警报如果满意,我认为这会更好,
不知何故,如果您尝试覆盖电源键的现有功能,Apple会拒绝您的应用,我认为是这样,
答案 1 :(得分:1)
您无法直接获取电源按钮事件。但是,您可以将通知视为UIApplicationProtectedDataWillBecomeUnavailable
或UIApplicationWillResignActiveNotification
。或者只需使用CFNotificationCenter
注册所有低级别通知,然后查看是否找到符合com.apple.springboard.lockstate
的内容。
答案 2 :(得分:0)
我认为您无法覆盖系统级操作,例如按住电源按钮,按主页按钮,覆盖您自己的应用程序中的静音声音开关。 iOS系统的行为并不像普通的计算机操作系统那样,它的限制更为有限。
Apple不允许您完全使用硬件组件。他们增加了一些限制。他们在app委托中提供了方法,即applicationDidEnterBackground可以按下主页按钮。他们也提供了API来访问摄像头,蓝牙等。至少这么多的API我知道提供了哪些通过苹果公开访问硬件。您无法访问应用程序中未由Apple公开提供的其他硬件元素。如果您能够以任何方式执行此操作,那么您的应用程序也不会被Apple批准。