Turns out React Native's timers (setTimeout / setInterval) don't run while the
app is in the background: https://github.com/facebook/react-native/issues/167
This patch replaces the global timer functions with those from the
react-native-background-timer package, which work in the background.
These timers won't magically make an application work in the background, but
they will run if an application already happens to run in the background. That's
our case while in a conference, so these timers will run, allowing XMPP pings to
be sent and the conference to stay up as long as the user desires.
This reverts commit b96ca538e4. While iPad
support is nice to have, we are not ready for a publish in App Store.
During the upload to iTunes Connect, a verification of the .ipa fails
because:
- app icons for iPad are missing:
- 76x76 pixels in .png format for iOS versions >= 7.0,
- 167x167 pixels in .png format for iOS versions supporting iPad Pro,
- 152x152 pixels in .png format for iOS versions >= 7.0,
- orientations required for iPad Mutitasking are missing:
- UIInterfaceOrientationPortraitUpsideDown.
Simplify the source code (with the idea that source code which does not
exist does not have to be maintained).
Additionally, apply modifications to have the source code comply with the coding
style.
Overall, prepare saghul:audio-mode for merge into jitsi:master.
Xcode insists on automatically fixing the project file with tvOS
support. In order to not have to constantly ignore these automatic
changes when committing, commit them.
Bundle our custom icon font jitsi.ttf in the Android app (which we
already do for the iOS app).
Additionally, remove icon font files which are not in use.
As a step toward merging jitsi-meet-react with jitsi-meet to share as
much source code as possible between mobile and Web, merge the part of
jitsi-meet-react's source tree which supports mobile inside the
jitsi-meet source tree and leave jitsi-meet-react's Web support in the
source code revision history but don't have it in master anymore because
it's different from jitsi-meet's Web support. In other words, the two
projects are mechanically merged at the file level and don't really
share source code between mobile and Web.