Update Usage statistics string to avoid confusion
Bug: 314134835 Test: manually by typing *#*#4636#*#* on phone Change-Id: Idac3f58f8c21ff5ecf6a1b7e9d686d770e2e09ba
This commit is contained in:
@@ -4511,7 +4511,9 @@
|
|||||||
<!-- Spinner label to indicate sort by app name. [CHAR LIMIT=30] -->
|
<!-- Spinner label to indicate sort by app name. [CHAR LIMIT=30] -->
|
||||||
<string name="usage_stats_sort_by_app_name">Sort by app name</string>
|
<string name="usage_stats_sort_by_app_name">Sort by app name</string>
|
||||||
<!-- label for last time used -->
|
<!-- label for last time used -->
|
||||||
<string name="last_time_used_label">Last time used</string>
|
<string name="last_time_used_label">Last used</string>
|
||||||
|
<!-- label for last time used of never opened apps -->
|
||||||
|
<string name="last_time_used_never">never</string>
|
||||||
<!-- label for usage time -->
|
<!-- label for usage time -->
|
||||||
<string name="usage_time_label">Usage time</string>
|
<string name="usage_time_label">Usage time</string>
|
||||||
|
|
||||||
|
@@ -29,6 +29,7 @@ import com.android.settingslib.spaprivileged.model.app.AppEntry
|
|||||||
import com.android.settingslib.spaprivileged.model.app.AppListModel
|
import com.android.settingslib.spaprivileged.model.app.AppListModel
|
||||||
import com.android.settingslib.spaprivileged.model.app.AppRecord
|
import com.android.settingslib.spaprivileged.model.app.AppRecord
|
||||||
import java.text.DateFormat
|
import java.text.DateFormat
|
||||||
|
import java.time.Duration
|
||||||
import java.util.concurrent.TimeUnit
|
import java.util.concurrent.TimeUnit
|
||||||
import kotlinx.coroutines.flow.Flow
|
import kotlinx.coroutines.flow.Flow
|
||||||
import kotlinx.coroutines.flow.combine
|
import kotlinx.coroutines.flow.combine
|
||||||
@@ -77,15 +78,25 @@ class UsageStatsListModel(private val context: Context) : AppListModel<UsageStat
|
|||||||
@Composable
|
@Composable
|
||||||
override fun getSummary(option: Int, record: UsageStatsAppRecord): (() -> String)? {
|
override fun getSummary(option: Int, record: UsageStatsAppRecord): (() -> String)? {
|
||||||
val usageStats = record.usageStats ?: return null
|
val usageStats = record.usageStats ?: return null
|
||||||
val lastTimeUsed = DateUtils.formatSameDayTime(
|
val lastTimeUsedLine =
|
||||||
usageStats.lastTimeUsed, now, DateFormat.MEDIUM, DateFormat.MEDIUM
|
"${context.getString(R.string.last_time_used_label)}: ${usageStats.getLastUsedString()}"
|
||||||
)
|
|
||||||
val lastTimeUsedLine = "${context.getString(R.string.last_time_used_label)}: $lastTimeUsed"
|
|
||||||
val usageTime = DateUtils.formatElapsedTime(usageStats.totalTimeInForeground / 1000)
|
val usageTime = DateUtils.formatElapsedTime(usageStats.totalTimeInForeground / 1000)
|
||||||
val usageTimeLine = "${context.getString(R.string.usage_time_label)}: $usageTime"
|
val usageTimeLine = "${context.getString(R.string.usage_time_label)}: $usageTime"
|
||||||
return { "$lastTimeUsedLine\n$usageTimeLine" }
|
return { "$lastTimeUsedLine\n$usageTimeLine" }
|
||||||
}
|
}
|
||||||
|
|
||||||
|
private fun UsageStats.getLastUsedString() = when {
|
||||||
|
lastTimeUsed < Duration.ofDays(1)
|
||||||
|
.toMillis() -> context.getString(R.string.last_time_used_never)
|
||||||
|
|
||||||
|
else -> DateUtils.formatSameDayTime(
|
||||||
|
lastTimeUsed,
|
||||||
|
now,
|
||||||
|
DateFormat.MEDIUM,
|
||||||
|
DateFormat.MEDIUM
|
||||||
|
)
|
||||||
|
}
|
||||||
|
|
||||||
private fun getUsageStats(): Map<String, UsageStats> {
|
private fun getUsageStats(): Map<String, UsageStats> {
|
||||||
val startTime = now - TimeUnit.DAYS.toMillis(5)
|
val startTime = now - TimeUnit.DAYS.toMillis(5)
|
||||||
|
|
||||||
|
Reference in New Issue
Block a user