more sms provider docs

Change-Id: I1967446a9709d88625cbcbc89b70228744dbf38a
Fix bug in isOperatorConsideredNonRoaming

Mistakenly exits if the first check of many doesn't match.

bug:11136023
Change-Id: I04883d75f32214def360292c90b2f628c4e60991
Few PIN/PUK fixes

Following changes have been made as part of this:
-> Changes done to display retry counter on wrong entry of
   PIN1,and message to indicate Code accepted/PIN1 blocked
   during PIN1 verification as per certain carrier requirements.
-> The current APIs that are used to verify the PIN and PUK only convey
   whether the operation succeeded or failed. As a result on ANY failure
   clients ask the user to re-enter the PIN.
   Add 2 new APIs that report the actual error code and returns the
   number of attempts remaing in case of failure.
-> FDN Service state was derived based on the state of PIN2. Update the
   state of FDN service based on the FACILTY_LOCK messages instead.
-> Change the default value of function getIccLockEnabled to false.
   When sim is deactivated/absent & user navigates to
   Settings->Security->Set up SIM/RUIM card lock,
   checkbox for "Lock Sim Card" option should be
   unchecked by default.
-> PIN1 can be changed only after enabling SIM lock. RIL returns
   REQUEST_NOT_SUPPORTED error if user tries to change PIN1 without
   enabling SIM lock.
   Handle the error and display appropriate message when trying to
   change PIN1 using MMI code.
-> Added MMI support for change PIN1/PIN2 and unblocking PIN2

Bug: 9928717
Change-Id: I73718c9e6a8aa7244097e0dd4593a6226ff0ac08
Telephony:  set default language of Canada as 'en'

The Canada SIM cards have the dual-IMSI functionality for the roaming
service. If it is working and the default system language is not set,
the system language can be changed by the MCC of the 2nd IMSI. So, the
default language should not be 'null'. This patch fills in the default
language of Canada as English.

Bug: 11361337
Change-Id: Iea6213e3ceca4a1cf054ebd9a13bb1d5574013b1
When phone changes update InBoundSmsHandlers and CellBroadcastHandlers.

Without this change for devices where the phone can change, for instance
on N5 with Sprint the phone will change from a GSMPhone to a CDMALTEPhone
and messages will not be sent to the appropriate handler.

For Sprint this was most readily seen when the voice mail notification
wasn't sent to the notification manager.

Bug: 11254397
Change-Id: Ia0e764cf6fa04208a7e194a35435f251a177309f
add SMS write permission for bluetooth package to support MAP profile.

bug:11415002
Change-Id: I177210e4139560b066ae40f100ca09ea35805359
problem to send SMS message by bluetooth MAP profile.

Currently SMSDispatcher will add the message to Sms.Sent database
for all non default SMS application.
This won't work for Bluetooth MAP profile.
In the bluetooth MAP spec, at 5.8 PushMessageFunction,
there are a parameter to control how to send the message by Bluetooth MAP.
Transparent:This parameter may be used to indicate to the MSE(phone)
that no copy of the message shall be kept in the 'Sent' folder
after the message was sent. This is especially useful for telematics applications,
 e.g., frequent sending of car's speed and position for traffic measurements
(floating car data).
This application parameter is optional. The value of this parameter is "OFF"
(keep messages in 'Sent' folder) and "ON" (don't keep messages in Sent' folder).
If Transparent is "ON", we shouldn't put the message in Sent folder.
SMSDispatcher always put the message in Sms.Sent
which is mapped to the Sent folder in bluetooth MAP.
Prefer to let bluetooth to decide whether put the message in Sms.Sent based
on Transparent parameter value.

bug:11454636
Change-Id: I2e6c8deb5c4ed8bc9a3d90d492f4d4eb7dac7e5c
Do not display dialog when PUK attempts remaining is 0.

When using MMI codes to set a new pin and the attempts remaining becomes
zero the lock screen, KeyguardSimPukView, will be handling resetting the
PIN using the PUK. Therefore we set the MmiCode state to CANCELLED which
causes the dialog to be dismissed. If we don't do this then after setting
the new PIN from the lock screen the dialog will still be present
indicating the user still needs to set the PIN.

Bug: 9928717
Change-Id: Ic7dc51ba684a1fd623f2cab0a89f40ef8ff491d5
Use new PhoneNumberUtils method for CDMA MO SMS formatting.

For CDMA networks, convert "+" prefix to "011" if the home network
is using the North American Numbering Plan (NANP). Previously the
roaming network numbering plan was also checked, but for MO SMS,
only the home network numbering plan is relevant.

Bug: 11360679
Change-Id: Ia54f00c0ff2012622003ed4003b7fb59451b0bea
Add single-pdn arbitration.

If a device or network can only support a single data connection
then we need to tear down lower priority connections in favor
of higher priority requests.

bug:10212445
Change-Id: I5ff38ae3be993aee51b6716045e6857b4f2942af
SMS over IMS bug fixes

This change includes the following:
1) SMS over IMS remaining patches which address review comments

2) Fix for Bug:11378993
For MT SMS over IMS, if an application uses the createFromPdu(byte[] pdu) API
instead of createFromPdu(byte[] pdu,String format) API, we first try to create
SmsMessage from raw PDU with the format of active phone. That either returns a
valid SmsMessage object or throws a RuntimeException causing the correct format
to be used the next time. If GsmSmsAddress is not valid, we should throw
a RuntimeException which is handled by createFromPdu(byte[] pdu)

3) Fix for Bug:11424054
Register for ICC changes and handle new SMS on ICC

Bug: 11378993, 11424054
Change-Id: I94bcfcf93d8205c2916997091617899c6ebdd5e5
Fix GSMPhone.getServiceState() when mSST is null.

Prevent NPE when getServiceState() is called on GSMPhone after
removeReferences() is called on it.

Bug: 11561165
Change-Id: I77c3638dc33b24711db2d8541b067e17e30255a1
Fix documenation IMS registration state.

Bug: 11599127
Change-Id: Id0016bca45ea84983c9280f55b0b1ccdcececc03
Notify all ApnContexts on a conn of Disconnect

Without this you can end up with default thinking
it's connected when it's actually not.

bug:10212445
Change-Id: Iffe3bf2064ac6c9f8e68ddb0d2b5115deaac2033
Update preferred activity for SMS related SENDTO intents

Updates the preferred SENDTO activity for sms/mms schemes so that the user
will not see an intent disambiguation dialog for SENDTO sms/mms.

- Update preferred activity on set default SMS app
- Update preferred activity on "secure" get default SMS app
- Update preferred activity on package install/uninstall

Bug:11482259 When default SMS app changes we need to update the default app for the SEND intent
Change-Id: Ib2752fe84389f1c50cf2aa5841e75c3913b94e18
Use settings DB only when mcc/mnc matches SIM

Bug: 11600521
Change-Id: Iaeb1f279bf454ad0e7b933b8ac97d6384d599b59
Telephony: unchange SIM info from CDMAPhone when SIM exists

This change is to prevent for updating the properties of 3GPP SIM
from the CDMAPhone when the 3GPP SIM exists on the card.

Bug: 11189478
Bug: 11360679
Change-Id: If849f8e0d6d6a1750cae045e35f3f92d73db4a20
Do not attempt to configure null preferred activity

On non-phone devices the default SMS app is null. During the set/get paths
we would not try to configure the activity, but during the package update
path we called 'getDefaultSendToApplication" and configured it without
validating that it is non-null. This change adds the null check.

Bug: 11482259 When default SMS app changes we need to update the default app for the SEND intent
Change-Id: I227cfd803fd0667d78918a720b5a6eae9d57ea9d
if provisioning apn conditionally restart the radio.

Some radios need a swift kick in the butt after provisioning.

Bug: 11673637
Change-Id: Ie758a303fd751d204fd6baa60217e88df6376aae