Mobile

Native Apps - Features

What the wrapper adds over the installable web app

Our Progressive Web App (PWA) and native mobile apps are both built on BusyOwl’s Framework (BOF), ensuring consistency across platforms. The native apps inherit all features currently available in the PWA

Using the PageBuilder tool within the admin area, you can create or edit pages and layouts for the native apps just as you would for the web version. You can micro-manage users and their permissions just as you would for the web version. Admin-area gives you control over native apps just as it does for the PWA version

Technical Implementation:

For native app development, we leverage Apache Cordova to encapsulate the web application within a native container (via WebView). This allows access to existing web-based features while integrating Cordova plugins to utilize device-specific capabilities (e.g., background-action, file-access, push-notifications). This hybrid approach ensures full compatibility with native functionalities while maintaining a unified codebase

To ensure optimal performance and compatibility, we prioritized native device features over browser-based alternatives in cases where the latter underperformed or lacked support. This includes MediaSession, VAPID, and integrating device-specific hardware and platform-native UI/UX enhancements. The highlights are:

1. Better Offline Experience

  • PWA: Relies on service workers to cache content after initial visits.
  • Native App: All assets (HTML, CSS, JS, fonts, icons) are preloaded in the app. When users download an item to-app ( instead of to-device ), the item is written to actual hard-drive of device rather than being cached by serviceworkers. Serviceworkers do exist in the native app but they are only in charge of temporary caching images.

2. Native Push Notifications

  • PWA: Limited to browser-supported VAPID
  • Native App: Uses Firebase Cloud Messaging (FCM) for always-active notifications

3. YouTube Background Play [ Android Only ]

  • PWA does support background play, but users have to allow Chrome ( their browser ) to run in background and also some `sources` like YouTube are impossible to play with screen-off by design. YouTube wants people to pay for that
  • Admins can enable background audio playback, even for YouTube embeds. The audio keeps playing even when the screen is off – impossible in PWAs due to browser restrictions! This features is added to "User-role" so you can offer it to everyone or sell it in a subscription plan
  • Also it's impossible to bind YouTube to native volume or "next" & "previous" controls in PWA because YouTube enforces it's own MediaSession while in native apps, we control the volume buttons even for embed YouTube videos

4. Splash Screen & Native UI Polish

  • PWA: Show a blank screen while loading
  • Native App: Custom Splash Screens: Professional app launch experience. Thanks to features available only on native apps, optimized authorization flows, media players, and menus for smoother interactions.

Overall UI/UX upgrade

After months of dedicated effort, we've completed a comprehensive redesign of both the UI and UX for the player interface and multiple pages across our native applications and PWA. While we aim to release as many updates as possible for the PWA version too, certain features (like those mentioned earlier) require native device capabilities and will remain exclusive to our mobile apps.

Version 2:

In version 2 we added:

  1. Social Login: Allowing clients to use multiple social accounts to login
  2. [Android Only] Google (chrome) Cast: Allowing clients to cast an item to a third device
  3. [Android Only] Google AdMob support: While you can use existing advertisement options, we'll add AdMob support for native apps only in version 2