草庐IT

ios - 是否有私有(private) API 能够检测 iOS 上当前的前台应用程序是什么?

我不打算将此应用程序发送到AppStore。这只是一个实验性的应用程序。所以,我不担心AppStore的批准/拒绝。我正在寻找一种方法,我如何确定a)当前的前台应用程序是什么(我的应用程序在那一刻将在后台。我可能会为此使用音频播放器或voip)b)检测新应用何时成为前台应用 最佳答案 看起来这个问题对我的问题有这个答案。howtodeterminewhichappsarebackgroundandwhichappisforegroundoniOSbyapplicationid它归结为SBFrontmostApplicationDis

android - ionic 1 onesignal 有没有办法知道从后台打开应用程序到前台或启动应用程序时是否有推送通知

我有一个用ionic1制作的ionic应用程序,并使用OneSignal进行推送通知。目前,在以下情况下,一种信号适用于推送通知:-应用程序已经打开-应用程序在后台或终止,点击推送通知使用这两个函数handleNotificationReceived和handleNotificationOpenedwindow.plugins.OneSignal.handleNotificationReceived(function(jsonData){$state.go('panicalarm');console.log("navigatetopanicalarmpage");})window.pl

ios - 当应用程序进入前台时,如何重新启动基于 block 的动画?

我有以下基于block的动画:[UIViewanimateWithDuration:0.5fdelay:0.0foptions:UIViewAnimationOptionRepeat|UIViewAnimationOptionAutoreverse|UIViewAnimationOptionAllowUserInteraction|UIViewAnimationOptionCurveEaseInOutanimations:^{[view.layersetTransform:CATransform3DMakeScale(1.3f,1.3f,1.0f)];NSLog(@"animating

ios - 当应用程序进入前台时将 iOS 应用程序与 ALAssetsLibrary 同步的最佳方式

我的应用程序保留了ALAssets的缓存。用户可能会将应用程序置于后台,然后使用照片应用程序或其他方式删除一些照片或视频。当我的应用程序在后台时,我没有从ALAssetsLibrary收到数据已更改的通知。当应用程序再次激活时,是否有人有最佳方法将我的应用程序状态与ALAssetsLibrary状态同步?更新:看起来我可以使用这种方法遍历整个库,但它似乎是一种获取更改增量的低效方法。HowtocheckifanALAssetstillexistsusingaURL 最佳答案 您应该注册ALAssetsLibraryChangedNo

ios - 如何在ios中将应用程序带到前台?

我正在后台检测iBeacon。当我的设备进入特定区域时,应用程序应该出现在前台。 最佳答案 没有用户交互就无法完成。唯一的选择是您可以生成推送通知,告诉用户将应用程序带到前台。这是来自Appledocumentation关于这个问题:Whentheoperatingsystemdeliverspushnotification(iOSorOSX)andthetargetapplicationisnotrunningintheforeground,itpresentsthenotification(alert,iconbadgenumb

ios - 当应用程序在前台使用传入的 OneSignal 推送通知时,如何防止警报?

当我的应用程序在前台时,会出现一个警告。如何防止在接收推送通知时出现这种情况? 最佳答案 在AppDelegate的didFinishLaunchingWithOptions方法中,您必须添加kOSSettingsKeyInAppAlerts=NO[OneSignalinitWithLaunchOptions:launchOptionsappId:ONESIGNAL_APPIDhandleNotificationReceived:nilhandleNotificationAction:nilsettings:@{kOSSetting

ios - didEnterRegion 在前台工作但不在后台或其他 VC

如果应用程序正在运行并且CLLocationManagerDelegate类是前景(即可见),那么didEnterRegions会触发,我会同时获得NSLog和AlertView。但是,当应用程序在后台运行时,或者本质上,如果屏幕只显示委托(delegate)类,我什么也得不到。我已经在plist的“Requiredbackgroundmodes”下设置了“Appregistersforlocationupdates”,尽管我不确定这是否必要。这是我认为的相关代码,尽管我可能是错的(并且很乐意添加更多)。我应该注意到,viewDidLoad中的所有内容都包含在一个if中,它检查区域监控

ios - 如何在设备的前台应用程序中显示双高绿色状态栏(通话中)?

这里有很多问题要求在后台显示红色录音栏。很明显,我应该为此使用AVAudioSession类别AVAudioSessionCategoryPlayAndRecord。我的问题是,当我的应用程序中正在进行VOIP通话时,如何在前台应用程序中显示绿色的通话中栏(或至少是红色栏)?所以我可以返回调用UI点击状态栏区域,就像Whatsapp或Skype。我已经尝试过的:voip和audio模式UIBackgroundModes中的键Info.plist+setCategory:AVAudioSessionCategoryPlayAndRecord+setActive按照建议inthisSOan

ios - 当应用进入前台时重新加载 CloudKit 数据

我试图理解CloudKit,但如果我最终将它变成一个应用程序,我将无法解决现实世界中的问题。我有一个由CloudKit填充的tableviewcontroller,它工作正常。我有一个detailviewcontroller,当您点击tableviewcontroller中的一个条目时,它会被推送。detailviewcontroller从最初的tableviewcontroller中没有的CloudKit中提取额外的数据。所有这些都工作得很好。现在,detailviewcontroller允许更改图像并将其保存回公共(public)数据库。这也很好用。我正在处理的场景是考虑多人在一个

ios - WCSession transferUserInfo 仅适用于前台

我正在使用WCSession的tranferUserInfo在watch和iOS应用程序之间发送数据,以获取当任一产品处于后台时需要处理的信息。这在模拟器上100%的时间都有效,但在实际设备上却永远无效。通过使用断点,我发现funcsession(session:WCSession,didReceiveUserInfouserInfo:[String:AnyObject])永远不会在后台调用,但是当应用程序被带到前景。显然session.transferUserInfo(data)正在被调用,但在后台状态下未被接收。再次运行完全相同的代码,但在模拟器上运行完美。我运行的是iOS9.3.