====== Serval Mesh app for iPhone ====== [[:content:about]] did not choose the [[http://en.wikipedia.org/wiki/IPhone|Apple iPhone]] as the smart-phone platform for the original [[Serval Mesh]] because: * iOS had poor support for essential telephony functions (speaker, microphone, audio stream synchronisation) * sharing and distributing free iOS apps was and remains very limited: * it is impossible to "side load" apps onto iPhones -- iOS apps can only be installed from the Apple App Store * Apple retain tight control over the content of their app store * Apple may not allow an app that upsets their business model or business partners * Apple Store licence terms are incompatible with the [[http://www.gnu.org/licenses/gpl-2.0.html|GNU public license]] * the Android app development environment was far more permissive and flexible, particularly with regards to: * programmatic Wi-Fi network control * rooting (jailbreaking) to allow installation of an alternative Wi-Fi device driver for Wi-Fi Ad Hoc mode * long running background processes and inter-process communication * support for native code compilation using [[http://gcc.gnu.org/|GCC]] The [[Mesh Extender]] device was conceived in 2013 as a way to provide Serval to non-Android devices using [[http://en.wikipedia.org/wiki/Bluetooth|Bluetooth]] or [[http://en.wikipedia.org/wiki/Wi-Fi_Direct|Wi-Fi Direct]]. The idea was to develop an iOS app that delegated all Wi-Fi Ad Hoc or long-range communications, [[crypto|encryption]], [[Rhizome]] storage, [[MDP]], and other core Serval services to the Mesh Extender, and simply acted as a rich front-end to these services. To date, such an app has not been developed. [[Serval Chat]] was conceived in 2014, not as an "iOS port" of [[Serval Mesh]], but as a completely new app focussed exclusively on secure, resilient text messaging -- both one-to-one and in groups -- with a far simpler and more polished user interface than Serval Mesh.