
Android Smart WebView is a modern, open-source solution for building advanced hybrid Android apps. Effortlessly extend your app with plugins, native features, and a customizable UI. Whether you're a hobbyist or a professional, Smart WebView helps you bring your web content to life on Android with ease and flexibility.
- Plugin Architecture: Easily extend app functionality with self-registering plugins.
- File Uploads & Camera Access: Support for file selection and direct camera capture in WebView.
- Push Notifications: Integrated Firebase Cloud Messaging.
- Google Analytics: Built-in analytics support.
- Custom UI Modes: Fullscreen and drawer layouts.
- Location & Permissions: Access device GPS/location and manage permissions.
- Content Sharing: Receive and handle shared content from other apps.
- Downloads & Printing: Handle file downloads and print web content.
- Modern WebView: Secure, up-to-date, and highly configurable.
Smart WebView now supports a powerful plugin system, allowing you to add new features and integrations with minimal effort. Plugins can be enabled, disabled, or customized to fit your app's needs. Here are some of the available plugins:
- Plugin Architecture: Learn how the plugin system works and how to integrate plugins.
- Creating Plugins: Guide to building your own custom plugins.
- Playground: Test and experiment with plugins in a sandboxed environment.
- Toast: Show native Android toast messages from your web content.
- Admob: Integrate Google AdMob ads into your app.
- Google Auth: Add Google authentication for seamless sign-in.
- QR & Barcode Reader: Scan QR codes and barcodes directly from your app.
- Biometric Auth: Enable fingerprint or face authentication.
- Image Compression: Compress images before uploading for better performance.
- CSS Injection: Dynamically inject custom CSS into your web pages.
- Payment Gateway: Integrate payment solutions for in-app purchases.
You can find more details and usage examples in the Plugin Documentation.
- Clone the repository:
git clone https://github.com/mgks/Android-SmartWebView.git
- Open in Android Studio:
File > Open > Select the project folder
- Add your
google-services.json
(if using Firebase services). - Build & Run:
Build > Clean Project
thenBuild > Rebuild Project
- Set Main URL:
- Edit
ASWV_APP_URL
inSmartWebView.java
to set your app's default web address.
- Edit
- Toggle Features:
- Enable/disable features (file upload, camera, location, etc.) by setting the corresponding
ASWP_*
variables inSmartWebView.java
.
- Enable/disable features (file upload, camera, location, etc.) by setting the corresponding
- Permissions:
- Adjust required permissions in
AndroidManifest.xml
based on your app's needs (e.g.,INTERNET
,CAMERA
,LOCATION
).
- Adjust required permissions in
- Plugins:
- Add or remove plugins in the
plugins/
directory and register them in your code. See Plugin Architecture.
- Add or remove plugins in the
- Getting Started
- Configuration
- Customization
- Plugin Architecture
- Playground
- FAQ & Troubleshooting
- Contributing
- License
- Found a bug or want to contribute? Open an issue or create a pull request.
- Support the project via GitHub Sponsors.
This project is licensed under the MIT License.
For new developers: Programming can be challenging at times, but with practice and persistence, you can develop the skills to create amazing things. The beauty of programming is that it empowers you to bring your ideas to life and create your own world. Keep exploring & experimenting, and all the best for your next project!