Merge "Add metricsCategory for dualsim and apnEdit" into main
This commit is contained in:
committed by
Android (Google) Code Review
commit
0cc20946c8
@@ -16,6 +16,7 @@
|
|||||||
|
|
||||||
package com.android.settings.network.apn
|
package com.android.settings.network.apn
|
||||||
|
|
||||||
|
import android.app.settings.SettingsEnums
|
||||||
import android.net.Uri
|
import android.net.Uri
|
||||||
import android.os.Bundle
|
import android.os.Bundle
|
||||||
import android.provider.Telephony
|
import android.provider.Telephony
|
||||||
@@ -62,6 +63,7 @@ const val INSERT_URL = "insertUrl"
|
|||||||
object ApnEditPageProvider : SettingsPageProvider {
|
object ApnEditPageProvider : SettingsPageProvider {
|
||||||
|
|
||||||
override val name = "ApnEdit"
|
override val name = "ApnEdit"
|
||||||
|
override val metricsCategory = SettingsEnums.APN_EDITOR
|
||||||
const val TAG = "ApnEditPageProvider"
|
const val TAG = "ApnEditPageProvider"
|
||||||
|
|
||||||
override val parameter = listOf(
|
override val parameter = listOf(
|
||||||
|
@@ -43,6 +43,7 @@ import com.android.settings.spa.app.specialaccess.TurnScreenOnAppsAppListProvide
|
|||||||
import com.android.settings.spa.app.specialaccess.UseFullScreenIntentAppListProvider
|
import com.android.settings.spa.app.specialaccess.UseFullScreenIntentAppListProvider
|
||||||
import com.android.settings.spa.app.specialaccess.WifiControlAppListProvider
|
import com.android.settings.spa.app.specialaccess.WifiControlAppListProvider
|
||||||
import com.android.settings.spa.app.storage.StorageAppListPageProvider
|
import com.android.settings.spa.app.storage.StorageAppListPageProvider
|
||||||
|
import com.android.settings.spa.core.instrumentation.SpaLogMetricsProvider
|
||||||
import com.android.settings.spa.core.instrumentation.SpaLogProvider
|
import com.android.settings.spa.core.instrumentation.SpaLogProvider
|
||||||
import com.android.settings.spa.development.UsageStatsPageProvider
|
import com.android.settings.spa.development.UsageStatsPageProvider
|
||||||
import com.android.settings.spa.development.compat.PlatformCompatAppListPageProvider
|
import com.android.settings.spa.development.compat.PlatformCompatAppListPageProvider
|
||||||
@@ -127,6 +128,6 @@ open class SettingsSpaEnvironment(context: Context) : SpaEnvironment(context) {
|
|||||||
override val logger = if (FeatureFlagUtils.isEnabled(
|
override val logger = if (FeatureFlagUtils.isEnabled(
|
||||||
context, FeatureFlagUtils.SETTINGS_ENABLE_SPA_METRICS
|
context, FeatureFlagUtils.SETTINGS_ENABLE_SPA_METRICS
|
||||||
)
|
)
|
||||||
) SpaLogProvider
|
) SpaLogMetricsProvider // ToDo: Implement 'SpaLogProvider' for SPA settings.
|
||||||
else object : SpaLogger {}
|
else object : SpaLogger {}
|
||||||
}
|
}
|
||||||
|
@@ -0,0 +1,62 @@
|
|||||||
|
/*
|
||||||
|
* Copyright (C) 2024 The Android Open Source Project
|
||||||
|
*
|
||||||
|
* Licensed under the Apache License, Version 2.0 (the "License");
|
||||||
|
* you may not use this file except in compliance with the License.
|
||||||
|
* You may obtain a copy of the License at
|
||||||
|
*
|
||||||
|
* http://www.apache.org/licenses/LICENSE-2.0
|
||||||
|
*
|
||||||
|
* Unless required by applicable law or agreed to in writing, software
|
||||||
|
* distributed under the License is distributed on an "AS IS" BASIS,
|
||||||
|
* WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
|
||||||
|
* See the License for the specific language governing permissions and
|
||||||
|
* limitations under the License.
|
||||||
|
*/
|
||||||
|
|
||||||
|
package com.android.settings.spa.core.instrumentation
|
||||||
|
|
||||||
|
import android.app.settings.SettingsEnums
|
||||||
|
import android.os.Bundle
|
||||||
|
import android.util.Log
|
||||||
|
import com.android.settings.overlay.FeatureFactory.Companion.featureFactory
|
||||||
|
import com.android.settingslib.spa.framework.common.LOG_DATA_METRICS_CATEGORY
|
||||||
|
import com.android.settingslib.spa.framework.common.LogCategory
|
||||||
|
import com.android.settingslib.spa.framework.common.LogEvent
|
||||||
|
import com.android.settingslib.spa.framework.common.SpaLogger
|
||||||
|
|
||||||
|
/**
|
||||||
|
* To receive the events from spa framework and logging the these events.
|
||||||
|
*/
|
||||||
|
object SpaLogMetricsProvider : SpaLogger {
|
||||||
|
override fun event(id: String, event: LogEvent, category: LogCategory, extraData: Bundle) {
|
||||||
|
val metricsFeatureProvider = featureFactory.metricsFeatureProvider
|
||||||
|
val metricsCategoryOfPage = extraData.getInt(LOG_DATA_METRICS_CATEGORY)
|
||||||
|
Log.d("SpaLogMetricsProvider", "${event} page ${metricsCategoryOfPage}")
|
||||||
|
|
||||||
|
if (metricsCategoryOfPage == SettingsEnums.PAGE_UNKNOWN) {
|
||||||
|
return
|
||||||
|
}
|
||||||
|
|
||||||
|
when (event) {
|
||||||
|
LogEvent.PAGE_ENTER -> {
|
||||||
|
metricsFeatureProvider.visible(
|
||||||
|
null,
|
||||||
|
SettingsEnums.PAGE_UNKNOWN,
|
||||||
|
metricsCategoryOfPage,
|
||||||
|
0
|
||||||
|
)
|
||||||
|
}
|
||||||
|
|
||||||
|
LogEvent.PAGE_LEAVE -> {
|
||||||
|
metricsFeatureProvider.hidden(
|
||||||
|
null,
|
||||||
|
metricsCategoryOfPage,
|
||||||
|
0
|
||||||
|
)
|
||||||
|
}
|
||||||
|
|
||||||
|
else -> return
|
||||||
|
}
|
||||||
|
}
|
||||||
|
}
|
@@ -16,6 +16,7 @@
|
|||||||
|
|
||||||
package com.android.settings.spa.network
|
package com.android.settings.spa.network
|
||||||
|
|
||||||
|
import android.app.settings.SettingsEnums
|
||||||
import android.content.Context
|
import android.content.Context
|
||||||
import android.content.IntentFilter
|
import android.content.IntentFilter
|
||||||
import android.os.Bundle
|
import android.os.Bundle
|
||||||
@@ -78,7 +79,7 @@ import kotlinx.coroutines.withContext
|
|||||||
*/
|
*/
|
||||||
open class NetworkCellularGroupProvider : SettingsPageProvider {
|
open class NetworkCellularGroupProvider : SettingsPageProvider {
|
||||||
override val name = fileName
|
override val name = fileName
|
||||||
|
override val metricsCategory = SettingsEnums.MOBILE_NETWORK_LIST
|
||||||
private val owner = createSettingsPage()
|
private val owner = createSettingsPage()
|
||||||
|
|
||||||
var defaultVoiceSubId: Int = SubscriptionManager.INVALID_SUBSCRIPTION_ID
|
var defaultVoiceSubId: Int = SubscriptionManager.INVALID_SUBSCRIPTION_ID
|
||||||
|
Reference in New Issue
Block a user