diff --git a/telephony/java/Android.bp b/telephony/java/Android.bp index 3941b300206f9..76a420c430d11 100644 --- a/telephony/java/Android.bp +++ b/telephony/java/Android.bp @@ -13,6 +13,15 @@ filegroup { srcs: [ "**/*.java", "**/*.aidl", + ":statslog-telephony-java-gen", ], visibility: ["//frameworks/base"], } + +genrule { + name: "statslog-telephony-java-gen", + tools: ["stats-log-api-gen"], + cmd: "$(location stats-log-api-gen) --java $(out) --module telephony" + + " --javaPackage com.android.internal.telephony --javaClass TelephonyStatsLog", + out: ["com/android/internal/telephony/TelephonyStatsLog.java"], +} diff --git a/telephony/java/android/telephony/AnomalyReporter.java b/telephony/java/android/telephony/AnomalyReporter.java index ffdb23f98fb80..f47cf33847914 100644 --- a/telephony/java/android/telephony/AnomalyReporter.java +++ b/telephony/java/android/telephony/AnomalyReporter.java @@ -16,6 +16,8 @@ package android.telephony; +import static com.android.internal.telephony.TelephonyStatsLog.TELEPHONY_ANOMALY_DETECTED; + import android.annotation.NonNull; import android.annotation.RequiresPermission; import android.content.Context; @@ -24,6 +26,7 @@ import android.content.pm.PackageManager; import android.content.pm.ResolveInfo; import android.os.ParcelUuid; +import com.android.internal.telephony.TelephonyStatsLog; import com.android.internal.util.IndentingPrintWriter; import com.android.telephony.Rlog; @@ -83,6 +86,12 @@ public final class AnomalyReporter { return; } + TelephonyStatsLog.write( + TELEPHONY_ANOMALY_DETECTED, + 0, // TODO: carrier id needs to be populated + eventId.getLeastSignificantBits(), + eventId.getMostSignificantBits()); + // If this event has already occurred, skip sending intents for it; regardless log its // invocation here. Integer count = sEvents.containsKey(eventId) ? sEvents.get(eventId) + 1 : 1;