Merge "Fix NPE when assistant component name is null" into tm-qpr-dev am: f0734a24e7
Original change: https://googleplex-android-review.googlesource.com/c/platform/frameworks/base/+/19441919 Change-Id: I651f7c71a8b37e7c52dc82edd771ac1db66bb1da Signed-off-by: Automerger Merge Worker <android-build-automerger-merge-worker@system.gserviceaccount.com>
This commit is contained in:
@@ -25,10 +25,10 @@ import com.android.internal.logging.InstanceId
|
|||||||
import com.android.internal.logging.InstanceIdSequence
|
import com.android.internal.logging.InstanceIdSequence
|
||||||
import com.android.internal.logging.UiEventLogger
|
import com.android.internal.logging.UiEventLogger
|
||||||
import com.android.internal.util.FrameworkStatsLog
|
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.deviceStateFromLegacyDeviceState
|
||||||
import com.android.systemui.assist.AssistantInvocationEvent.Companion.eventFromLegacyInvocationType
|
import com.android.systemui.assist.AssistantInvocationEvent.Companion.eventFromLegacyInvocationType
|
||||||
import com.android.systemui.dagger.SysUISingleton
|
import com.android.systemui.dagger.SysUISingleton
|
||||||
|
import com.android.systemui.settings.UserTracker
|
||||||
import javax.inject.Inject
|
import javax.inject.Inject
|
||||||
|
|
||||||
/** Class for reporting events related to Assistant sessions. */
|
/** Class for reporting events related to Assistant sessions. */
|
||||||
@@ -37,7 +37,8 @@ open class AssistLogger @Inject constructor(
|
|||||||
protected val context: Context,
|
protected val context: Context,
|
||||||
protected val uiEventLogger: UiEventLogger,
|
protected val uiEventLogger: UiEventLogger,
|
||||||
private val assistUtils: AssistUtils,
|
private val assistUtils: AssistUtils,
|
||||||
private val phoneStateMonitor: PhoneStateMonitor
|
private val phoneStateMonitor: PhoneStateMonitor,
|
||||||
|
private val userTracker: UserTracker,
|
||||||
) {
|
) {
|
||||||
|
|
||||||
private val instanceIdSequence = InstanceIdSequence(INSTANCE_ID_MAX)
|
private val instanceIdSequence = InstanceIdSequence(INSTANCE_ID_MAX)
|
||||||
@@ -78,7 +79,7 @@ open class AssistLogger @Inject constructor(
|
|||||||
FrameworkStatsLog.ASSISTANT_INVOCATION_REPORTED,
|
FrameworkStatsLog.ASSISTANT_INVOCATION_REPORTED,
|
||||||
invocationEvent.id,
|
invocationEvent.id,
|
||||||
assistantUid,
|
assistantUid,
|
||||||
assistComponentFinal.flattenToString(),
|
assistComponentFinal?.flattenToString() ?: "",
|
||||||
getOrCreateInstanceId().id,
|
getOrCreateInstanceId().id,
|
||||||
deviceStateFinal,
|
deviceStateFinal,
|
||||||
false)
|
false)
|
||||||
@@ -91,7 +92,7 @@ open class AssistLogger @Inject constructor(
|
|||||||
uiEventLogger.logWithInstanceId(
|
uiEventLogger.logWithInstanceId(
|
||||||
sessionEvent,
|
sessionEvent,
|
||||||
assistantUid,
|
assistantUid,
|
||||||
assistantComponent.flattenToString(),
|
assistantComponent?.flattenToString(),
|
||||||
getOrCreateInstanceId())
|
getOrCreateInstanceId())
|
||||||
|
|
||||||
if (SESSION_END_EVENTS.contains(sessionEvent)) {
|
if (SESSION_END_EVENTS.contains(sessionEvent)) {
|
||||||
@@ -112,11 +113,15 @@ open class AssistLogger @Inject constructor(
|
|||||||
currentInstanceId = null
|
currentInstanceId = null
|
||||||
}
|
}
|
||||||
|
|
||||||
protected fun getAssistantComponentForCurrentUser(): ComponentName {
|
protected fun getAssistantComponentForCurrentUser(): ComponentName? {
|
||||||
return assistUtils.getAssistComponentForUser(KeyguardUpdateMonitor.getCurrentUser())
|
return assistUtils.getAssistComponentForUser(userTracker.userId)
|
||||||
}
|
}
|
||||||
|
|
||||||
protected fun getAssistantUid(assistantComponent: ComponentName): Int {
|
protected fun getAssistantUid(assistantComponent: ComponentName?): Int {
|
||||||
|
if (assistantComponent == null) {
|
||||||
|
return 0
|
||||||
|
}
|
||||||
|
|
||||||
var assistantUid = 0
|
var assistantUid = 0
|
||||||
try {
|
try {
|
||||||
assistantUid = context.packageManager.getApplicationInfo(
|
assistantUid = context.packageManager.getApplicationInfo(
|
||||||
|
|||||||
Reference in New Issue
Block a user