A Flutter package to analyze your app's performance, resource usage, and gather runtime information like CPU temperature, memory usage, network traffic, and more.
ONLY ANDROID OS IS SUPPORTED!
- Start and stop app analysis easily.
- Monitor CPU information (temperature, frequency).
- Track memory usage.
- Collect and analyze HTTP traffic data.
- Retrieve comprehensive analysis data as JSON.
Add this package to your pubspec.yaml file:
dependencies:
app_analysis: ^latest_versionThen run:
flutter pub getImport the package:
import 'package:app_analysis/app_analysis.dart';final analyser = AppAnalyser();
analyser.initialise();
analyser.start();final info = await analyser.stop();
print(info.toMap());final request = await HttpClient().getUrl(Uri.parse('https://your-api.com'));
final response = await request.close();
AppAnalyser().collectTraffic(
HttpClientTrafficConsumptionAdapter(
HttpClientRequestResponse(request.toExtended(), response.toExtended()),
),
);final cpuInfo = CpuInfoProvider();
print('Temperature: ${await cpuInfo.temperature}');
print('Average Temp: ${await cpuInfo.averageTemperature}');
print('Current Freq: ${await cpuInfo.currentFrequency}');
print('Extremum Freq: ${await cpuInfo.extremumFrequency}');{
"cpu": {
"temperature": 45.5,
"averageTemperature": 43.2,
"currentFrequency": "2.4GHz",
"extremumFrequency": "1.2GHz - 2.8GHz"
},
"memory": {
"total": "4096MB",
"used": "1536MB",
"free": "2560MB"
},
"network": {
"trafficConsumption": [
{
"requestSize": "2KB",
"responseSize": "5KB"
}
]
}
}Check out the example directory for a complete implementation.
Feel free to post a feature requests or report a bug here.
- Add docs
- Migrate to platform agnostic file operations
- Remove external
battery_infodependency in favour of custom data provider - Add interesting data based on analysis results in
AnalysisInfomodel