ios - 如何禁用 iPhone 'app not active' 闪烁横幅
<p><p>当我的应用不是事件应用时,我的应用会检查 GPS,而且我也在后台使用 AVAudioplayer。</p>
<p>它工作正常,并保持在后台做它的事情,但 ios7 显示这个红色的顶部横幅,当它不是事件的应用程序时,我的应用程序名称会在上面闪烁。</p>
<p>如何禁用此横幅,使用其他被压缩到 1 行的应用程序很烦人? </p>
<p>我知道这可以做到,因为我有其他基于 GPS 的后台应用程序不显示此闪烁横幅。</p>
<p>编辑 - 所以我们很快找到了答案,但解决方案避开了我:
如果我在程序处于事件状态时使用调用此方法的按钮阻止 OpenEars pocketsphinxController 监听,则应用程序失去焦点时横幅会消失:</p>
<pre><code>-(void) mystopListening{
NSLog(@"Tried to stop listening");
;
}
</code></pre>
<p>但是如果我从我的应用程序委托(delegate)中调用相同的方法(我必须在我的应用程序委托(delegate).h 中导入我的 ViewController .h 文件并添加 -(void) nystopListening; 在我的 ViewController .h 中进行以下操作正确执行):</p>
<pre><code>- (void)applicationWillResignActive:(UIApplication *)application{
myViewController * vc = [init];
;
}
</code></pre>
<p>横幅仍然存在!这有点像 ios7 在我有机会关闭它之前就决定我是录音的罪魁祸首。或者,我什至要关闭它吗?
我该如何有效地做到这一点?在什么情况下?</p>
<p>编辑 - 所以当从应用程序委托(delegate)调用“mystopListening”时,我并没有真正关闭pocketsphinxController。我知道这一点,因为它确实在从应用程序委托(delegate)调用时记录了“试图停止监听”,但 pocketsphinxController 没有用它的“pocketsphinxDidStopListening”方法响应。当我在应用程序处于事件状态时从按钮调用“mystopListening”时,PocketsphinxController 确实调用了它的“pocketsphinxDidStopListening”方法。</p>
<p>为什么当从应用程序委托(delegate)调用时,pocketsphinxController 没有响应,我一定是做错了?</p>
<p>谢谢,卡门</p></p>
<br><hr><h1><strong>Best Answer-推荐答案</ strong></h1><br>
<p><p>原来我并没有真正从我的应用委托(delegate)中调用原始 pockectsphinxcontroller 实例。</p>
<p>作为解决问题的方法,我这样做了:</p>
<p>我的应用程序总是有一个计时器在运行,所以在我的应用程序委托(delegate)中,我会注意到应用程序何时进入非事件状态并恢复事件状态,我只需设置全局标志,以便我的计时器可以知道应用程序的事件状态。然后我的计时器只是使用 pockecsphinxcontroller 方法来停止和开始收听,瞧,当应用程序不活动时,横幅不再存在。 </p></p>
<p style="font-size: 20px;">关于ios - 如何禁用 iPhone'app not active' 闪烁横幅,我们在Stack Overflow上找到一个类似的问题:
<a href="https://stackoverflow.com/questions/22003433/" rel="noreferrer noopener nofollow" style="color: red;">
https://stackoverflow.com/questions/22003433/
</a>
</p>
页:
[1]