device_all_ggez 1.0.1
device_all_ggez: ^1.0.1 copied to clipboard
A very easily accessible and easy to use android exclusive device metric plugin.
device_all_ggez #
A zero-boilerplate, hyper-detailed Android device system information and telemetry package for Flutter. Access low-level SoC models, JVM heap sizes, JVM memory stats, RAM thresholds, storage layers, and system clocks synchronously anywhere in your app after a single setup call.
Features #
- π± Deep Build Profiles: Fetch low-level SoC data (
socModel,socManufacturer), hardware boards, SKUs, and device identifiers. - βοΈ OS Metrics: Extract SDK integers, granular security patch timestamps, and incremental firmware versions.
- β° Advanced Clocks: Monitor device uptime, runtime loops, boot epochs, and active timezone configurations.
- π§ Memory & JVM Monitoring: Read underlying hardware RAM boundaries alongside real-time JVM maximum, active, and free heap byte arrays.
- πΎ Multi-Partition Storage: Seamlessly check total, free, and target usable blocks across both internal structures and root paths.
- βοΈ Hardware Telemetry: Read real-time thermal throttling statuses (
thermalStatus), locale structures, and active OpenGL versions.
Platform Support #
| Android | iOS | Linux | macOS | Windows | Web |
|---|---|---|---|---|---|
| β | β | β | β | β | β |
Note: This package is explicitly tailored to extract low-level Android system frameworks and Linux bindings.
Installation #
Add device_all_ggez to your project's pubspec.yaml file:
dependencies:
device_all_ggez: ^1.0.0
Then, pull down the dependency:
flutter pub get
Usage #
Unlike complex plugins that require asynchronous lookups every time you fetch a property, device_all_ggez updates global cache references instantly. Just execute refresh() once at app initialization or ahead of analytics snapshots.
import 'package:device_all_ggez/device_all_ggez.dart';
void main() async {
// Ensure Flutter engine bindings are alive if calling before runApp()
WidgetsFlutterBinding.ensureInitialized();
// Populate data caches synchronously across the application layer
await DeviceAllGgez.refresh();
runApp(const MyApp());
}
// Access nested metrics anywhere, instantly without utilizing FutureBuilders!
void checkSystemDetails() {
print("Device: DeviceAllGgez.build.manufacturer {DeviceAllGgez.build.model}");
print("Silicon: DeviceAllGgez.build.socModel ({DeviceAllGgez.build.socManufacturer})");
print("Android SDK: \${DeviceAllGgez.osVersion.sdkInt}");
print("Total RAM: \${DeviceAllGgez.system.ramTotalGB} GB");
print("Thermal Health: \${DeviceAllGgez.hardware.thermalStatus}");
}
Telemetry Mapping API #
some of the properties available are as follows #
1. DeviceAllGgez.build #
| Property | Type | Description |
|---|---|---|
model |
String |
The end-user visible name for the product (e.g., Pixel 6). |
manufacturer |
String |
The product/hardware manufacturer (e.g., Google). |
socModel |
String |
The explicit System-on-Chip model string (e.g., GS101). |
socManufacturer |
String |
The explicit manufacturer of the underlying SoC. |
supportedAbis |
List<String> |
Ordered array of ABIs supported by this hardware binary layout. |
2. DeviceAllGgez.osVersion #
| Property | Type | Description |
|---|---|---|
release |
String |
User-visible operating system version string (e.g., 13). |
sdkInt |
int |
The framework API Level version integer (e.g., 33). |
securityPatch |
String |
The raw timestamp string of the active security patch. |
3. DeviceAllGgez.clock #
| Property | Type | Description |
|---|---|---|
bootTimeEpochMillis |
int |
Absolute wall clock time in milliseconds since epoch when the system booted. |
uptimeMillis |
int |
Count of active execution loop intervals since power-on excluding deep sleep. |
4. DeviceAllGgez.system #
| Property | Type | Description |
|---|---|---|
processorCount |
int |
Total available processing core lines exposed to the execution loop. |
ramTotalGB |
double |
Aggregated underlying physical volatile memory scaled to standard Gigabytes. |
ramTotalBytes |
int |
Exact system RAM available in raw bytes. |
jvmMaxMemoryBytes |
int |
The absolute ceiling threshold memory limit the local virtual machine will attempt to use. |
5. DeviceAllGgez.hardware #
| Property | Type | Description |
|---|---|---|
thermalStatus |
String |
Active core temperature mitigation state flags (e.g., NONE, LIGHT, SEVERE). |
openGlVersion |
String |
Supported system client driver bindings context name for application render surfaces. |
License #
This project is licensed under the MIT License - see the LICENSE file for details.