gpt4 book ai didi

ios - 在停用的 iOS 应用程序上定位

转载 作者:塔克拉玛干 更新时间:2023-11-02 09:49:17 25 4
gpt4 key购买 nike

是否可以在关闭时向应用程序添加位置感知?

例如,我想创建一个邻近服务,该服务在我的应用程序关闭时工作,并在用户到达某个区域时向用户推送本地通知。

我读到,使用 CLRegion 可以获得类似的结果,但只有在应用程序处于事件状态(或在后台)时才有效。

我需要类似于由用户位置激活的远程通知服务的东西。但这听起来真的很奇怪。是否可以在 iOS 中提供类似的服务?

最佳答案

有两个选项:

其中一个是 John 上面提到的重要位置更改服务。另一个是 startRegionMonitoring

两者都包含在 Location Awarness Documentation 中来自苹果

两者都可以短暂打开已终止(关闭)的应用程序,并且您可以发送本地推送通知来提醒用户。该应用无法进入正常状态,但如果用户点击通知,该应用将打开,这样您就可以实现您的目标。

这是一个示例代码,用于拦截 didFinishLaunchingWithOptions 委托(delegate)中的事件并触发本地通知。通常你不应该在这里触发通知,而是重新初始化你的位置管理器,获取新位置并显示用户输入区域的消息(本地通知)......

    - (BOOL)application:(UIApplication *)application didFinishLaunchingWithOptions:(NSDictionary *)launchOptions
{
//see if application was launched from a location event!
if ([launchOptions objectForKey:UIApplicationLaunchOptionsLocationKey]) {
//if so, we need to reinitialize our location manager!
[[LocationManager sharedLocationManager] startSignificantLocationMonitoring];
//fire a notification

UILocalNotification *notification = [[UILocalNotification alloc] init];
notification.fireDate = [NSDate date];
NSTimeZone* timezone = [NSTimeZone defaultTimeZone];
notification.timeZone = timezone;
notification.alertBody = @"app did wake up";
notification.alertAction = @"OK";
notification.soundName = @"yes.caf";
[[UIApplication sharedApplication] scheduleLocalNotification:notification];

}
}

关于ios - 在停用的 iOS 应用程序上定位,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/11729018/

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