File Downloader API
Let users download images, PDFs, and other files from your web app to their Android device.
WebViewGold’s Download API allows you to provide document, image, and audio file downloads within your WebView app. The following steps outline how to enable and customize the downloader functionality:
1. Downloading Images:
Save images to the camera roll of the user by calling links with savethisimage://?url= prefix:
<a href="savethisimage://?url=IMAGE URL HERE">Download Image</a>
2. Downloading PDF Files:
Save PDF files by calling links with a .pdf suffix:
<a href="https://www.example.org/file.pdf">Download PDF</a>
3. Downloading Music Files:
Save music files by simply calling links with a .mp3, .mp4 or .wav suffix:
<a href="https://www.example.org/file.mp3">Download MP3</a> <a href="https://www.example.org/file.mp4">Download MP4</a> <a href="https://www.example.org/file.wav">Download WAV</a>
4. Customizing Supported File Types:
To add additional file formats to the downloader, insert them into the downloadableExtension list in Config.java.
5. Enabling Automatic File Downloads:
Consider setting the AUTO_DOWNLOAD_FILES option in Config.java to enable automatic downloads for files flagged with Content-Disposition HTTP headers, independent of the downloadableExtension list. This ensures files are downloaded automatically based on server configurations.
SDK-style implementation notes
Treat this feature as a native capability exposed to your web layer: keep your production website or PWA as the source of truth, then use the documented WebViewGold configuration flags, URL commands, and JavaScript bridge calls to opt in to native Android behavior only where it adds value. This approach keeps your codebase maintainable because the same web application can serve browsers, WebViewGold for Android, and the other WebViewGold platforms with minimal conditional logic.
For reliable results, prefer HTTPS endpoints, stable route names, explicit success/error states in your UI, and small JavaScript helper functions that wrap native calls. For example, a web app built with jQuery Mobile, Lovable, Base44, Bolt, WordPress, Bubble, a custom React/Vue/Angular stack, or static HTML can expose a single button or event handler that triggers the native WebViewGold API while still showing a graceful browser fallback.
- Recommended integration pattern: detect the app context, call the WebViewGold API, then update your web UI after the native callback or route change.
- Testing checklist: validate the feature on a real device or packaged build, verify permissions and store review text, and confirm that browser-only users still receive a useful fallback.
- SEO benefit: keep feature pages, route titles, and structured content indexable on your website while WebViewGold delivers the native app shell for Android users.