Код: Выделить всё
fun getUsageData(startTime: Double, endTime: Double, successCallback: Callback) {
val usageStatsManager = reactApplicationContext.getSystemService(Context.USAGE_STATS_SERVICE) as
// Query usage stats
val usageStatsList = usageStatsManager.queryUsageStats(UsageStatsManager.INTERVAL_DAILY, startTime.toLong(), endTime.toLong())
// Sort usage stats by total time in foreground
usageStatsList.sortByDescending { it.totalTimeInForeground }
// Extract package names of top 5 used apps
val topApps: WritableArray = WritableNativeArray()
for (i in 0 until minOf(5, usageStatsList.size)) {
val packageName = usageStatsList[i].packageName
topApps.pushString(packageName)
}
// // Pass the top apps list back to React Native
successCallback.invoke(topApps)
}
Код: Выделить всё
LOG Top 5 used apps: []Код: Выделить всё
const getUsageData = () => {
const startTime = new Date().getTime() - (7 * 24 * 60 * 60 * 1000);
const endTime = new Date().getTime();
UsageStatsModule.getUsageData(Number(startTime), Number(endTime), (topApps : any) => {
console.log('Top 5 used apps:', topApps);
});
};
Подробнее здесь: https://stackoverflow.com/questions/782 ... empty-list
Мобильная версия