gpt4 book ai didi

ios - 我可以在进入 iBeacon 范围时在前台启动应用程序吗?

转载 作者:行者123 更新时间:2023-11-28 18:34:10 25 4
gpt4 key购买 nike

我正在使用 iBeacons 创建适用于 iOS 的应用程序。我知道,如果我设置一个区域来监控,当我进入/退出一个区域,或者打开区域内的屏幕时,框架可以调用我的应用程序。我也设法在这个回调中创建了一个本地通知。我的问题是,是否可以将应用程序置于前台,就像它是由用户启动的一样?

最佳答案

不,我认为这是不可能的。 Apple 的理念是用户可以控制前台的应用程序。将应用程序置于前台的仅有三种方法是:(1) 点击其图标,(2) 点击与该应用程序关联的通知或 (3) 通过自定义 URL 从其他应用程序启动该应用程序。

我有一个同事一直坚持这是可能的,所以我今天亲自试了一下,看看是否确定。在我们的开源 SavengerHunt app ,我修改了 AppDelegate 的 didDetermineState 方法以添加下面的代码以尝试强制应用程序进入前台。

        NSLog(@"Attempting for force window %@ into foreground", self.window);
[self.window makeKeyAndVisible];
NSLog(@"Done with attempt");

在后台检测到 iBeacon 时执行的代码,日志行按预期显示。但是,该应用程序并未更改为前台。

       2014-03-06 11:35:43.655 scavengerhunt[277:60b] Sending a notification that a beacon is nearby
2014-03-06 11:35:43.678 scavengerhunt[277:60b] Attempting for force window <UIWindow: 0x14e96730; frame = (0 0; 320 480); gestureRecognizers = <NSArray: 0x14e95870>; layer = <UIWindowLayer: 0x14e961f0>> into foreground
2014-03-06 11:35:43.686 scavengerhunt[277:60b] Done with attempt

鉴于这行不通,最好的办法是向用户显示本地通知。如果他们点击它,您的应用程序将移至前台。

关于ios - 我可以在进入 iBeacon 范围时在前台启动应用程序吗?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/22224639/

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