Donate to e Foundation | Murena handsets with /e/OS | Own a part of Murena! Learn more

Commit c1ceb3bc authored by Govinda Wasserman's avatar Govinda Wasserman Committed by Automerger Merge Worker
Browse files

Merge "Fix NPE when assistant component name is null" into tm-qpr-dev am: f0734a24 am: b3139bec

parents 4ce1f9d4 b3139bec
Loading
Loading
Loading
Loading
+13 −8
Original line number Diff line number Diff line
@@ -25,10 +25,10 @@ import com.android.internal.logging.InstanceId
import com.android.internal.logging.InstanceIdSequence
import com.android.internal.logging.UiEventLogger
import com.android.internal.util.FrameworkStatsLog
import com.android.keyguard.KeyguardUpdateMonitor
import com.android.systemui.assist.AssistantInvocationEvent.Companion.deviceStateFromLegacyDeviceState
import com.android.systemui.assist.AssistantInvocationEvent.Companion.eventFromLegacyInvocationType
import com.android.systemui.dagger.SysUISingleton
import com.android.systemui.settings.UserTracker
import javax.inject.Inject

/** Class for reporting events related to Assistant sessions. */
@@ -37,7 +37,8 @@ open class AssistLogger @Inject constructor(
    protected val context: Context,
    protected val uiEventLogger: UiEventLogger,
    private val assistUtils: AssistUtils,
    private val phoneStateMonitor: PhoneStateMonitor
    private val phoneStateMonitor: PhoneStateMonitor,
    private val userTracker: UserTracker,
) {

    private val instanceIdSequence = InstanceIdSequence(INSTANCE_ID_MAX)
@@ -78,7 +79,7 @@ open class AssistLogger @Inject constructor(
                FrameworkStatsLog.ASSISTANT_INVOCATION_REPORTED,
                invocationEvent.id,
                assistantUid,
                assistComponentFinal.flattenToString(),
                assistComponentFinal?.flattenToString() ?: "",
                getOrCreateInstanceId().id,
                deviceStateFinal,
                false)
@@ -91,7 +92,7 @@ open class AssistLogger @Inject constructor(
        uiEventLogger.logWithInstanceId(
                sessionEvent,
                assistantUid,
                assistantComponent.flattenToString(),
                assistantComponent?.flattenToString(),
                getOrCreateInstanceId())

        if (SESSION_END_EVENTS.contains(sessionEvent)) {
@@ -112,11 +113,15 @@ open class AssistLogger @Inject constructor(
        currentInstanceId = null
    }

    protected fun getAssistantComponentForCurrentUser(): ComponentName {
        return assistUtils.getAssistComponentForUser(KeyguardUpdateMonitor.getCurrentUser())
    protected fun getAssistantComponentForCurrentUser(): ComponentName? {
        return assistUtils.getAssistComponentForUser(userTracker.userId)
    }

    protected fun getAssistantUid(assistantComponent: ComponentName?): Int {
        if (assistantComponent == null) {
            return 0
        }

    protected fun getAssistantUid(assistantComponent: ComponentName): Int {
        var assistantUid = 0
        try {
            assistantUid = context.packageManager.getApplicationInfo(