8th Wall WebAR integration in mobile app

NOVASOLUTIONS.TECHNOLOGY is engaged in the development, support and maintenance of iOS, Android, PWA mobile applications. We have extensive experience and expertise in publishing mobile applications in popular markets like Google Play, App Store, Amazon, AppGallery and others.
Development and support of all types of mobile applications:
Information and entertainment mobile applications
News apps, games, reference guides, online catalogs, weather apps, fitness and health apps, travel apps, educational apps, social networks and messengers, quizzes, blogs and podcasts, forums, aggregators
E-commerce mobile applications
Online stores, B2B apps, marketplaces, online exchanges, cashback services, exchanges, dropshipping platforms, loyalty programs, food and goods delivery, payment systems.
Business process management mobile applications
CRM systems, ERP systems, project management, sales team tools, financial management, production management, logistics and delivery management, HR management, data monitoring systems
Electronic services mobile applications
Classified ads platforms, online schools, online cinemas, electronic service platforms, cashback platforms, video hosting, thematic portals, online booking and scheduling platforms, online trading platforms

These are just some of the types of mobile applications we work with, and each of them may have its own specific features and functionality, tailored to the specific needs and goals of the client.

Showing 1 of 1 servicesAll 1735 services
8th Wall WebAR integration in mobile app
Complex
~3-5 business days
FAQ
Our competencies:
Development stages
Latest works
  • image_mobile-applications_feedme_467_0.webp
    Development of a mobile application for FEEDME
    756
  • image_mobile-applications_xoomer_471_0.webp
    Development of a mobile application for XOOMER
    624
  • image_mobile-applications_rhl_428_0.webp
    Development of a mobile application for RHL
    1054
  • image_mobile-applications_zippy_411_0.webp
    Development of a mobile application for ZIPPY
    947
  • image_mobile-applications_affhome_429_0.webp
    Development of a mobile application for Affhome
    862
  • image_mobile-applications_flavors_409_0.webp
    Development of a mobile application for the FLAVORS company
    445

Integrating 8th Wall for WebAR in Mobile Application

8th Wall — WebAR platform based on WebGL and custom SLAM engine, running straight in browser without ARKit/ARCore. This means AR experience launches by link or QR code, without app installation. For business, this is often decisive: conversion to "opened link" is orders of magnitude higher than "downloaded app".

Integration into existing mobile app is built through WKWebView (iOS) or WebView/Custom Tabs (Android), where 8th Wall scene renders inside native container. Or as standalone PWA with deeplinking from app.

Where Things Usually Break

Camera access inside WKWebView. From iOS 14.3, Apple allowed getUserMedia in WKWebView, but with caveats: mediaTypesRequiringUserActionForPlayback must be configured, and allowsInlineMediaPlayback = true. Without this, 8th Wall won't get camera access and throws NotAllowedError. On Android situation is simpler — Chrome WebView supports getUserMedia without specific flags from Chrome 89.

SLAM performance on budget devices. 8th Wall uses own world tracking instead of ARCore, heavier on CPU. On devices with Snapdragon 665 and below, FPS in scene with dynamic lighting and several 3D objects drops to 18-22. Solution: reduce poly count to 15k triangles, disable real-time shadows, use baked lightmaps in GLTF.

HTTPS requirement. 8th Wall requires secure context for camera API. Local development via localhost passes, but staging on HTTP — no. WKWebView in app works with any URL with NSAllowsLocalNetworking, but production scenes need valid SSL.

How We Build Integration

8th Wall project created in cloud IDE of platform — JavaScript/TypeScript scenes there based on A-Frame or Three.js + 8th Wall pipeline. For native integration:

iOS (WKWebView):

let config = WKWebViewConfiguration()
config.allowsInlineMediaPlayback = true
config.mediaTypesRequiringUserActionForPlayback = []

let webView = WKWebView(frame: .zero, configuration: config)
webView.load(URLRequest(url: URL(string: "https://your-8thwall-scene.8thwall.app/scene/")!))

WKUIDelegate needed to intercept webView(_:requestMediaCapturePermissionFor:) — otherwise permission dialog won't appear.

Android (Custom Tab vs WebView): Custom Tabs launch full Chrome with WebXR API and camera support — preferable option. Native WebView requires WebChromeClient with overridden onPermissionRequest. For seamless integration (no browser transition) — WebView with custom UA-string, if 8th Wall platform doesn't detect it as restricted.

Passing data between native layer and 8th Wall scene — via WKScriptMessageHandler / addJavascriptInterface. Typical case: pass userId or product SKU to scene so it loads correct 3D model from CDN.

Licensing and Limitations

8th Wall works by subscription: Starter ($99/mo), Pro ($250/mo), Enterprise (custom). License tied to domain. For white-label product or multiple client domains — Enterprise only. Account for this in budget.

Timeline

WebView container integration into existing app — 3-5 days. AR scene development on 8th Wall (1-2 objects, basic interaction) — another 5-10 days. Cost calculated individually after analysis of scene requirements and target devices.