Move SIP broadcast receiver to dynamic registration

Background Check was causing some SIP broadcast intents
to never be received. This was causing issues with
settings configuation.

Bug: 64300565
Test: Manual, Bug repro procedure
Change-Id: I1ed17b3f93aaff92a25ad00c7ef514bddf83d988
diff --git a/src/com/android/phone/PhoneGlobals.java b/src/com/android/phone/PhoneGlobals.java
index 3b9ea03..20eedeb 100644
--- a/src/com/android/phone/PhoneGlobals.java
+++ b/src/com/android/phone/PhoneGlobals.java
@@ -28,6 +28,7 @@
 import android.media.AudioManager;
 import android.net.ConnectivityManager;
 import android.net.Uri;
+import android.net.sip.SipManager;
 import android.os.AsyncResult;
 import android.os.Bundle;
 import android.os.Handler;
@@ -64,6 +65,7 @@
 import com.android.phone.common.CallLogAsync;
 import com.android.phone.settings.SettingsConstants;
 import com.android.phone.vvm.CarrierVvmPackageInstalledReceiver;
+import com.android.services.telephony.sip.SipBroadcastReceiver;
 import com.android.services.telephony.sip.SipUtil;
 
 import java.io.FileDescriptor;
@@ -173,6 +175,8 @@
 
     // Broadcast receiver for various intent broadcasts (see onCreate())
     private final BroadcastReceiver mReceiver = new PhoneAppBroadcastReceiver();
+    // Broadcast receiver for SIP based intents (see onCreate())
+    private final SipBroadcastReceiver mSipBroadcastReceiver = new SipBroadcastReceiver();
 
     private final CarrierVvmPackageInstalledReceiver mCarrierVvmPackageInstalledReceiver =
             new CarrierVvmPackageInstalledReceiver();
@@ -362,6 +366,13 @@
             intentFilter.addAction(CarrierConfigManager.ACTION_CARRIER_CONFIG_CHANGED);
             registerReceiver(mReceiver, intentFilter);
 
+            IntentFilter sipIntentFilter = new IntentFilter(Intent.ACTION_BOOT_COMPLETED);
+            sipIntentFilter.addAction(SipManager.ACTION_SIP_INCOMING_CALL);
+            sipIntentFilter.addAction(SipManager.ACTION_SIP_SERVICE_UP);
+            sipIntentFilter.addAction(SipManager.ACTION_SIP_CALL_OPTION_CHANGED);
+            sipIntentFilter.addAction(SipManager.ACTION_SIP_REMOVE_PHONE);
+            registerReceiver(mSipBroadcastReceiver, sipIntentFilter);
+
             mCarrierVvmPackageInstalledReceiver.register(this);
 
             //set the default values for the preferences in the phone.