Elecriciview is an Android application designed to view and analyze electricity consumption data stored in JSON format. The app allows users to browse through JSON files in a selected folder, view detailed electricity consumption information, and navigate between file listings and detailed views.
- Folder Selection: Choose a folder containing electricity data JSON files
- File Browsing: View a sorted list of JSON files (newest first)
- Persistent Storage: Remembers the last selected folder
- Detailed View: Examine the contents of individual electricity consumption files
- User-Friendly Interface: Material Design 3 components with intuitive navigation
- UI Framework: Jetpack Compose
- File Access: DocumentFile API for storage access framework compatibility
- Data Parsing: JSON parsing for electricity consumption data
- State Management: Compose state management for UI updates
MainActivity
: Main entry point containing the app's Compose UIElectricityDetailsScreen
: Composable for displaying detailed electricity data- Storage permission handling via ActivityResultContracts
- Android Studio Arctic Fox (2020.3.1) or newer
- Minimum SDK: 21 (Android 5.0 Lollipop)
- Target SDK: 33 (Android 13)
- Clone the repository
- Open the project in Android Studio
- Sync Gradle files
- Build the project using:
./gradlew assembleDebug
Install the app on your device using:
./gradlew installDebug
- Launch the app
- Tap "Select Folder" to choose a directory containing electricity JSON files
- Browse through the list of available JSON files
- Tap on any file to view its detailed electricity consumption data
- Use the back button to return to the file list
The app expects JSON files with electricity consumption data. The JSON structure should include details about electricity usage, which will be displayed in the details screen.
READ_EXTERNAL_STORAGE
: Required to access JSON files
This project is licensed under the Apache License 2.0 - see the LICENSE file for details.
Contributions are welcome. Please feel free to submit a Pull Request.
Author: NNKtv28
For any inquiries, please open an issue in the repository.