Crudebyte Logo

JACK on iOS 7
Current Situation

The current issue regarding JACK on iOS 7 (and higher) is actually serious. If it was just an ordinary bug, we would already have fixed it. However it is in fact worse. Apple introduced a new policy with iOS 7, which prohibits any Inter-Process Communication (IPC) among third party apps. That's the actual reason why JACK currently crashes on iOS 7, because all IPC mechanisms are now blocked for all third party apps. Obviously, without a way to communicate with other apps, we have no way to use or fix JACK for its purpose on iOS 7. Only Apple is in the position to change this situation, since this is a policy restriction enforced on operating system level. We can't do anything about it unfortunately. There are various other app vendors who suffer under this new severe OS restriction as well and we asked for a statement from Apple's side, i.e. on Apple's developer forum and on Apple's bug tracking system (issue #14988888) and by contacting some Apple engineers directly, however we got no statement whatsoever yet. From what we have heard from other app vendors, they also got no reply from Apple on their inquiries regarding this issue either. And the new restriction / behaviour change is not mentioned in any of Apple's developer documents, which is quite unusual, especially considering the large impact this change has on a variety of apps.

Unless Apple does not show up any reaction on our inquiries, the only option we currently have is to recycle the graphical user interface of JACK for Inter-App Audio (IAA). But then we would have the same features and restrictions as Audiobus and all other IAA host apps would have on iOS 7. So we are not sure about this option yet. We hope you understand.

So in brief: it is unlikely that JACK will ever work again on iOS 7 upwards, simply because it is not in our hands and we consider it unlikely that Apple will move in its position regarding this new policy / OS restriction. In case you want to continue using JACK on iOS, then you should not update your device to iOS 7 or later. Keep in mind that you cannot downgrade your iOS version once you updated it.

In case the current situation changes in any way, we will inform you on this page, as well as via Email Notification and via Twitter.

Your JACK Audio Connection Kit Developers Team,
(November 6th 2013).


Update
January 18th 2014

We just found a working solution for Inter-Process Communication on iOS 7. So there are chances for JACK coming back and eventually touching ground on iOS 7!


Update
January 29th 2014

We are currently investigating, also talking with people from Apple, whether there is a chance of bringing our previous way of Inter-Process Communication back on iOS 7+. Reason: the working solution for Inter-Process Communication on iOS 7 that we recently found (which is apparently also used by another inter-app audio connection app on the App Store) is far more ineffecient than the ones we are currently using in JACK. Plus we would need to adjust a significant part of JACK to make it using this particular Inter-Process Communication solution on iOS 7 instead. So we are probably deciding in about one week where to go from here, whether we will adjust JACK for this mentioned IPC method or whether it makes sense to wait for an update of iOS.
But for now we still recommend you: do not update your devices to iOS 7!


Update
May 6th 2015

Sorry guys, but unfortunately it seems as if there is no future for JACK on iOS. Even though iOS 8.1 brought back the required Inter-Process Communication mechanisms needed for apps like JACK (i.e. shared memory and semaphores), all those IPC mechanisms may only be used solely for communication between apps of the same app vendor though. So it is still not allowed to communicate between apps of various third party app developers. And obviously it makes no sense to bring JACK back on iOS if it can only be used for connecting our own audio apps with each other. There is only one IPC mechanism available left for communication between arbitary third party apps: CFMessagePorts, however using those would make JACK as inefficient as another known inter-app audio connection app on the App Store, and consequently JACK would also suffer under the same latency problems, etc. So that would destroy some of the major benefits of JACK and thus we decided that it does not make sense to go further with JACK on iOS at this point. In case the overall situation changes with a future update of iOS, then we will update this page accordingly. However after communication with various Apple engineers, it seems as if there is no intention on Apple's side to change these restrictions regarding IPC on iOS in any way.


DE • EN
Copyright © MMXVI Crudebyte. All rights reserved.

twitter