Natively Docs
Join our community 🔥
  • 👩‍🚀Getting Started
    • What is Natively?
    • Why Natively?
    • FAQ
    • Create Your First App
  • 🚀Natively Platform
    • 🚉Releases
    • 🖌️Appearance
      • 😼App Icon
      • 📱Loading Screen
      • 📱Error Screen
      • 🎨Style
    • 🎬Preview
    • ⭐Features
      • 🛳️Bottom Bar
      • 🚇Deeplinks
        • 🔥Firebase
        • 🔗Universal Links
        • 🌱Branch.io
      • 📍Geolocation
      • 🔔Notifications
        • 📲OneSignal Notifications
        • 🔥Firebase Notifications (Advanced)
      • 📒Contacts
      • 👩‍🎨Social Auth
        • 🍏Sign In with Apple
      • 💟HealthKit
      • 💰Purchases
      • 🤑Admob
      • 💳NFC
      • 📷Camera
      • 📂Photo Library
      • 🎤Microphone
      • 📈Analytics
        • 🕊️AppsFlyer
        • 😛Facebook
    • 🚚Publish
      • 🍏iOS App
      • 🤖Android App
    • ⚙️Settings
    • 🙈Subscription Plans
  • Guides
    • 🧋Integration (Native Features)
      • 🏅How to get started?
      • ℹ️Device
      • ℹ️Browser Info
      • 🛳️Bottom Bar
      • ✂️Clipboard
      • 🚦Push Notifications - OneSignal
      • 🚦Push Notifications - Firebase (Advanced)
      • 📍Geolocation
      • 📦App Storage
      • 🗝️Biometrics & Credentials
      • 📧Native SMS/Email
      • 📅Native Date Picker
      • 📸Native Camera
      • 🎙️Native Audio Recorder
      • 🈁Native Scanner (QR/Barcode)
      • 📔Contacts
      • 🍏Apple Sign In
      • ❤️HealthKit
      • 💸In-App Purchases
      • 🤑Admob
      • 💳NFC
      • 🥑Show Toast/Banner
      • ⏳Show/Hide Loading Screen
      • 🥑Haptic Feedback
      • 🖼️Share Media/Files
      • 📱Open an external App/URL
      • ✍️Request User's review
      • ↔️getInsets
      • 🎨Control Style & Colors
    • 🔍Troubleshooting
    • 🐈Setup RevenueCat App
    • 🚑Setup Admob App
    • 🚥Setup One Signal App
    • 🧑‍🤝‍🧑Setup website Universal Links (Deeplinks)
    • 🍕Testing & Submitting your app
    • 🔑Generate iOS Push Key (NEW)
    • 🔑Generate iOS Push Certificate (Legacy)
    • 🤝Affiliate program
    • 📕For Partners: Natively Brand Book.
Powered by GitBook
On this page
  • 🧋 Bubble.io Plugin
  • 🛠 JavaScript SDK

Was this helpful?

  1. Guides
  2. Integration (Native Features)

Native Audio Recorder

Available in >=2.8.0 (Bubble Plugin + JS SDK)

PreviousNative CameraNextNative Scanner (QR/Barcode)

Last updated 1 year ago

Was this helpful?

🧋 Bubble.io Plugin

[Element] Natively - Audio Recorder

Events:

  • Recorder Result Updated - get called after finished recording

  • Recorder Cancelled - get called after user close recorder (without recordings)

  • File Uploaded - get called after the file was successfully uploaded on S3 (You can find a file URL in element's state)

  • File Size over limit - Triggered when file size is more then File Size Limit param

States:

  • Recorder Result (Base64) - Base64 string representation of a file, can be used for custom uploading

  • Recorder Result (Content Type) - image/png, image/jpeg or video/mp4

  • Uploaded File URL - Amazon S3 file URL

  • File Size - size of latest camera result file in KB

Actions:

  • Show Recorder

    • Upload File - checkbox (Upload file to Amazon S3)

    • File Name - will be used if Upload File is checked

    • File Size Limit - (in KB) prevent uploading big files to Bubble's amazon S3

    • Max Duration (iOS) - max duration of recording in seconds (v2.8.2)

🛠 JavaScript SDK

NativelyAudioRecorder

const recorder = new NativelyAudioRecorder()
const show_recorder_callback = function (resp) {
    console.log(resp.base64); // base64 string of media file
    console.log(resp.content_type); // "audio/m4a" for ios or "audio/wav" for android
    console.log(resp.size); // 1024 <- file size in KB
    console.log(resp.status); // "SUCCESS", "CANCELLED" - finish with recording or just closed (cancelled)
};
recorder.showRecorder(show_recorder_callback);

🧋
🎙️
Bubble.io Plugin
JavaScript SDK