A small Android WebView browser that automatically disables JavaScript after a configurable interval following page load.
- WebView Browser with full web navigation support
- URL Sharing from other apps (handles
text/plain
share intents) - Automatic JavaScript Disabling after a user-configurable delay
- Settings Screen to adjust the disable interval (50–1000 ms)
- Preferences Persistence via Jetpack DataStore
- Android Studio Hedgehog (2023.1.1) or later
- Android SDK 34 (compile target)
- Android 7.0+ (API 24) for runtime
- Kotlin 1.9.0+
- Gradle 8.2.0+
MainActivity.kt
– Main activity and Navigation Compose setupBrowserScreen.kt
– Composable hosting the WebView mini-browserSettingsScreen.kt
– Composable for configuring the JavaScript-disable intervalDelayDataStore.kt
– DataStore-based persistence implementationAndroidManifest.xml
– Manifest configuration including the share-intent filter- Gradle build files
- Clone or download the repository
- Open Android Studio Hedgehog (or newer)
- Select “Open an Existing Project”
- Navigate to and open the project folder
- Wait for Gradle sync to complete
- Connect an Android device or start an emulator
- Click “Run” (
▶️ ) to build and install the app
- On launch, the app opens a default browser page (Google as the home page)
- If started via “Share” from another app with a URL, that link loads immediately
- Enter a new URL in the top text field
- Tap the “Go” (→) button or press Enter to navigate
- Tap the “Refresh” (↻) button to reload the current page
- Tap the “Settings” (⚙️) button to open the settings screen
- In Settings, use the slider to choose how many milliseconds before JavaScript is disabled
- Tap “Save” to persist your choice and return to the browser
- Preferences are stored using Jetpack DataStore
- The theme follows the system light/dark setting automatically
- Supports dynamic theming on Android 12+