airo_device_profile 1.0.0
airo_device_profile: ^1.0.0 copied to clipboard
Runtime device profile, hardware capability signals, memory budget models, and legacy tier classification for Flutter.
airo_device_profile #
Runtime device profile, hardware capability signals, memory budget models, and legacy tier classification for Flutter applications across mobile, TV, desktop, and embedded hardware.
Part of the DevelopersCoffee open-source ecosystem.
Features #
- Device Capability Signals: Inspect API level, RAM, GPU class, available media decoders, thermal/memory pressure, and remote input modes.
- Support Tier Classification: Automatically classify devices into
fullySupported,legacyOptimized,experimental, orunsupported. - Memory Budget Enforcement: Model and monitor memory budgets for low-spec TV dongles and legacy receivers.
- Region Resolution: Geo-IP region resolution contracts with caching policies for streaming localization.
Usage #
import 'package:airo_device_profile/airo_device_profile.dart';
void main() {
final signals = AiroRuntimeDeviceSignals(
signalId: 'sig-123',
platformCategory: AiroNodePlatformCategory.androidTv,
apiLevel: 28,
memoryMb: 1536,
freeStorageMb: 4096,
gpuClass: AiroRuntimeGpuClass.standard,
decoderCount: 4,
supportedCodecs: const {MediaCodecCapability.h264, MediaCodecCapability.aac},
remoteInputs: const {AiroRuntimeRemoteInput.dpad, AiroRuntimeRemoteInput.mediaKeys},
networkClass: AiroRuntimeNetworkClass.stableWifi,
);
final policy = AiroRuntimeDeviceProfilePolicy();
final profile = policy.evaluate(signals, capturedAt: DateTime.now());
print('Support Tier: ${profile.supportTier}');
print('Is Legacy Receiver Mode Recommended: ${profile.legacyReceiverModeRecommended}');
}
Maintainers #
Maintained with ❤️ by DevelopersCoffee.