diff --git a/java/com/android/dialer/phonenumberutil/PhoneNumberHelper.java b/java/com/android/dialer/phonenumberutil/PhoneNumberHelper.java
index df7716c..9e30394 100644
--- a/java/com/android/dialer/phonenumberutil/PhoneNumberHelper.java
+++ b/java/com/android/dialer/phonenumberutil/PhoneNumberHelper.java
@@ -202,6 +202,9 @@
     if (presentation == CallLog.Calls.PRESENTATION_RESTRICTED) {
       return false;
     }
+    if (presentation == CallLog.Calls.PRESENTATION_UNAVAILABLE) {
+      return false;
+    }
     if (presentation == CallLog.Calls.PRESENTATION_PAYPHONE) {
       return false;
     }
diff --git a/java/com/android/dialer/simulator/impl/SimulatorDialogFragment.java b/java/com/android/dialer/simulator/impl/SimulatorDialogFragment.java
index 96ea627..dcf8032 100644
--- a/java/com/android/dialer/simulator/impl/SimulatorDialogFragment.java
+++ b/java/com/android/dialer/simulator/impl/SimulatorDialogFragment.java
@@ -27,7 +27,7 @@
 public final class SimulatorDialogFragment extends DialogFragment {
 
   private final String[] callerIdPresentationItems = {
-    "ALLOWED", "PAYPHONE", "RESTRICTED", "UNKNOWN"
+    "ALLOWED", "PAYPHONE", "RESTRICTED", "UNKNOWN", "UNAVAILABLE"
   };
   private int callerIdPresentationChoice = 1;
 
@@ -68,6 +68,9 @@
                 case 3:
                   callerIdPresentationChoice = TelecomManager.PRESENTATION_UNKNOWN;
                   break;
+                case 4:
+                  callerIdPresentationChoice = TelecomManager.PRESENTATION_UNAVAILABLE;
+                  break;
                 default:
                   throw new IllegalStateException("Unknown presentation choice selected!");
               }
diff --git a/java/com/android/voicemail/impl/sms/LegacyModeSmsHandler.java b/java/com/android/voicemail/impl/sms/LegacyModeSmsHandler.java
index 29d376b..4e82722 100644
--- a/java/com/android/voicemail/impl/sms/LegacyModeSmsHandler.java
+++ b/java/com/android/voicemail/impl/sms/LegacyModeSmsHandler.java
@@ -109,7 +109,7 @@
                   context,
                   CallIntentBuilder.forVoicemail(
                       phoneAccountHandle, CallInitiationType.Type.LEGACY_VOICEMAIL_NOTIFICATION)),
-              PendingIntent.FLAG_UPDATE_CURRENT);
+              PendingIntent.FLAG_UPDATE_CURRENT | PendingIntent.FLAG_IMMUTABLE);
     } else {
       Intent launchVoicemailSettingsIntent =
           new Intent(TelephonyManager.ACTION_CONFIGURE_VOICEMAIL);
@@ -122,7 +122,7 @@
               context,
               LAUNCH_VOICEMAIL_SETTINGS_REQUEST_CODE,
               launchVoicemailSettingsIntent,
-              PendingIntent.FLAG_UPDATE_CURRENT);
+              PendingIntent.FLAG_UPDATE_CURRENT | PendingIntent.FLAG_IMMUTABLE);
     }
 
     intent.putExtra(TelephonyManager.EXTRA_VOICEMAIL_NUMBER, voicemailNumber);
