From ee506ae30e8df1a13af215676e9e29a07bd8d75a Mon Sep 17 00:00:00 2001 From: linyuh Date: Fri, 18 May 2018 14:33:33 -0700 Subject: Don't show an outgoing call to a spam number as spam. Bug: 79770053 Test: SpamTest + Existing tests PiperOrigin-RevId: 197201496 Change-Id: Iff2eb03d00d3b559d2a008487b19a2d044b2cb5b --- java/com/android/dialer/spam/Spam.java | 22 ++++++++++++++++++++++ 1 file changed, 22 insertions(+) (limited to 'java/com/android/dialer/spam') diff --git a/java/com/android/dialer/spam/Spam.java b/java/com/android/dialer/spam/Spam.java index 0229782bf..028bda40a 100644 --- a/java/com/android/dialer/spam/Spam.java +++ b/java/com/android/dialer/spam/Spam.java @@ -18,6 +18,7 @@ package com.android.dialer.spam; import android.preference.Preference; import android.preference.Preference.OnPreferenceChangeListener; +import android.provider.CallLog.Calls; import android.support.annotation.Nullable; import com.android.dialer.DialerPhoneNumber; import com.android.dialer.logging.ContactLookupResult; @@ -166,4 +167,25 @@ public interface Spam { int callType, ReportingLocation.Type from, ContactSource.Type contactSourceType); + + /** + * Given a number's spam status and a call type, determine if the call should be shown as spam. + * + *

We show a call as spam if + * + *

+ * + *

This is because spammers can hide behind a legit number (e.g., a customer service number). + * We don't want to show a spam icon when users call it. + * + * @param isNumberSpam Whether the number is spam. + * @param callType One of the types in {@link android.provider.CallLog.Calls#TYPE}. + * @return true if the number is spam *and* the call is not an outgoing call. + */ + static boolean shouldShowAsSpam(boolean isNumberSpam, int callType) { + return isNumberSpam && (callType != Calls.OUTGOING_TYPE); + } } -- cgit v1.2.3