Services Plugins FAQs

Audio Recorder in iOS in PWA standalone mode

Hi,

Before the complaint, I’d like to add a disclaimer. I feel for you guys…
Making stuff work in iOS is hard…

Now for the bug.

The Audio Recorder works fine on iOS 13.6.1 in Safari.
However, in PWA mode (standalone), the mic permissions are asked. The file is uploaded. But only a 44 byte wav file is uploaded and not the actual audio.

Send me a dm if you need more help in reproducing.

Regards
ZubairLK

@zubair.lutfullah, hello and thanks for reaching out!

Correct me if I’m wrong, telling “standalone” you mean that you’re trying to record an audio file, using the Audio Recorder plugin - while offline?

If so, then I have to warn you that apps/plugins made on Bubble won’t work offline, because all Bubble products are web-oriented and require a stable internet connection for the proper work.

If no, please provide us with more details (what device/what browser/what setup/screenshots) of your issue to make us able to reproduce it, make sure it is a bug - and then fix it. Thank you :slightly_smiling_face:

Regards, Kate

Hi,

By ‘Standalone’ mode, I don’t mean offline. Internet connectivity is always present.

Device: iPad 6th Gen running iOS 13.6.1 or iPhone 6s running iOS 13.7
Browser: PWA Mode (Safari based) Not in browser. in Safari itself, its ok.

The recorder is configured for wav recording.

The mic permissions are asked and enabled.

The audio sometimes records/uploads. And sometimes doesn’t.

See image below.

The 44 byte size are the times audio record did not work.
And the larger size are when the audio record did work.

It is pretty hard to get more debug info without a mac…

How to reproduce.

New app,
Insert Audio record element
Add a manifest and service worker to make the app PWA.
Install app on iPad/iPhone using the ‘Add to home screen’ option.
Test audio record and playback.

Regards
ZubairLK

@zubair.lutfullah,

Thanks a lot for the clarification!

We have made a lot of investigations, dedicated to the plugin work on the iOS devices. And, unfortunately, due to the Apple policy, there are a few browsers that will guarantee the stable Audio Recorder plugin work properly. Actually, there is only one - the Safari browser. That’s why we recommend you use this plugin only in the Safari browser.

True! :sweat_smile:

Apologies for the inconvenience :pray:
Regards, Kate

Hey there,
does it mean I can’t use this plugin in WebView on iOS and Android? I have to make a wrap Bubble app to publish it to the AppStore and Google Play Store — will the plugin work in this case?

Another thing I need to know: when I test audio record on your demo page on Android’s Google Chrome browser after record I can only download recorded file. Can I use the plugin functionality to make a voice chat like Telegram or WhatsApp? Will it work correctly?

Thanks in advance.

Hi @PetrK, thanks for your message.

It should work but unfortunately, so far we can’t guarantee that it will work properly on all devices. Sorry for the inconvenience. The plugin capacities are limited to capacities/compatibilities of the used library: https://github.com/muaz-khan/RecordRTC

Unfortunately, we can’t guarantee that our plugin will work as expected within a wrapped application, our plugins are mainly developed for web applications.

The plugin allows to download recorded file or save it to the file storage. It is up to you how you can use its functionality to create an application similar to Telegram or WhatsApp.

With a corresponding setup, yes, it is possible.

Hope it helps
Please let me know if I can help with anything else related to our plugin.
Regards,

Will the plugin work after wripping the app using Jasonette to iOS?

Hi @revulet.oleg, thanks for your question.

I’m afraid we can’t guarantee that our plugin will work properly with a third-party wrapper.

As an alternative, allow me to recommend checking the capacities provided by the BDK wrapper: https://thebdk.com/ and related BDK plugin: Native apps (bdk) Plugin | Bubble

Hope it helps. Please let me know if I can help with anything else related to our plugin.
Regards,