← Return to Systems Portfolio
Production Android Bundle Kotlin • Jetpack Compose • API 36

Camelot Web Tools: Mobile App

Offline-first Android application delivering the complete 75+ utility suite directly to mobile devices using zero-cloud local asset virtualization and native Scoped Storage.

View 7 Standalone Apps →
Kotlin 2.x Jetpack Compose Material3 Android SDK 34+ / API 36 WebViewAssetLoader Scoped Storage Signed .AAB
CWT Mobile Hub Screen
CWT Mobile Financial Suite Screen
CWT Mobile Business Tools Screen

Mobile Architecture: Zero-Cloud Native Hybrid

Rather than maintaining separate, diverging calculation codebases across Android and web, the CWT Mobile architecture employs AndroidX WebViewAssetLoader to serve pre-compiled, optimized web bundles from local APK/AAB assets.

By establishing a virtual secure origin at https://appassets.androidplatform.net/assets/, the application completely bypasses CORS restrictions, local file-scheme limitations (file:///), and modern Android security blocks. The app runs 100% offline, guaranteeing instant cold boot times without hitting remote servers.

Key Native Android Subsystems

1. Scoped Storage & MediaStore PDF Export

In compliance with modern Android 11+ (API 30+) and Android 15 (API 36) storage requirements, the app uses MediaStore.Downloads and content:// URIs. Invoices, Bates-stamped PDFs, and CSV exports are written directly to public downloads with zero legacy storage permissions (WRITE_EXTERNAL_STORAGE is completely avoided).

2. Native Print Manager Integration

A two-way JavaScript interface (@JavascriptInterface) exposes native printing services via android.print.PrintManager. When a user clicks "Print" on an invoice or balance sheet, base64-encoded PDF bytes are decoded into an isolated cache file and streamed into a native Android PrintDocumentAdapter.

3. Hardened WebSettings & Surface Security

Network access is strictly locked down: setAllowFileAccess(false) and setAllowContentAccess(false) prevent arbitrary filesystem traversal. The web view only communicates through the sandboxed virtual asset loader.

Google Play Console Readiness Profile

Parameter Production Value Description
Application ID com.camelotwebtools.app Official Google Play package namespace
Release Artifact app-release.aab (23.37 MB) Compiled, optimized Android App Bundle
Target SDK API 36 (Android 15+) Compliant with latest 2026 Play Store API mandates
Minimum SDK API 30 (Android 11+) Modern runtime compatibility coverage
Signing Certificate SHA-256 (D9:93:CB:...:93:BB) Official Camelot production keystore (Valid to 2054)
Store Graphical Assets 512x512 Icon, 1024x500 Banner, 12 Screens White & Blue high-resolution assets generated