Telephony: fix null pointer exception

	that could force close phone app
	while inserting/modifying/deleting SIM contacts

Change-Id: I769cb184062c67af0d231c3d903e301c43ded335
Telephony: Mock SMS (2/4)

This change brings the possibility of simulate the reception of SMS on real devices.
This change adds a MockSmsReceiver inside SMSDispatcher that have a BroadcastReceiver listening
for Intents.MOCK_SMS_RECEIVED_ACTION actions. This class accept the SMS simulation if and only if
Settings.Secure.ALLOW_MOCK_SMS is enabled and the sender application has the
"android.permission.SEND_MOCK_SMS" permission.

This receiver should be used in the next way:

Devs should declare <uses-permission android:name="android.permission.SEND_MOCK_SMS" />
and call it with:

Intent in = new Intent(Intents.MOCK_SMS_RECEIVED_ACTION);
in.putExtra("scAddr", "+01123456789");
in.putExtra("senderAddr", "+01123456789");
in.putExtra("msg", "This is a mock SMS message.");
sendBroadcast(in);

or

String pdu = "07914151551512f2040B916105551511f100006060605130308A04D4F29C0E";
byte[][] pdus = new byte[1][];
pdus[0] = HexDump.hexStringToByteArray(pdu);
Intent in = new Intent(Intents.MOCK_SMS_RECEIVED_ACTION);
intent.putExtra("pdus", pdus);
sendBroadcast(in);

Ported from http://review.cyanogenmod.org/#/c/23017 + Some changes:

* Move receiver to ImsSMSDispatcher class
* Send message as SMS_DELIVER_ACTION action, so it send to the registered SMS app

Change-Id: I14cab3d8ceb484df71a676dcfa44ca1634be908d
Signed-off-by: Jorge Ruesga <jorge@ruesga.com>
Telephony: Bring back older IMSI method for legacy RIL

Non-MSIM RIL don't support the newer method.

Change-Id: Iccef3086f28ac1ae72c85b9143e6df84e3b1c08b
DCTracker: upgrade stubbed apn to Qcril Standard.

* this is still needed because sprint lte and legacy
 has the same operator numeric are not passing the check to
 lte apn is filled and not passing mDps.empty() check.
Change-Id: Ic13235744fca561cff4d49ae5c799420c30b3840
Remove SemcQualcomm7x30RIL

There's no officially supported device using this.
We'll put it in the device tree making it easier to maintain

Change-Id: I512841331ec4d126b23312f1d79153d2574e0c16
SamsungQualcommRIL: fix power on and off state

 remove obsolete code

Change-Id: Ib7b288e50e603ff91ac715113db9dc1769a3a09f
Merge "Telephony: Bring back older IMSI method for legacy RIL" into cm-11.0
Merge changes Ib7b288e5,Ic1323574 into cm-11.0

* changes:
  SamsungQualcommRIL: fix power on and off state
  DCTracker: upgrade stubbed apn to Qcril Standard.
DcTracker: wait for default apn to disconnect before setting up new

Including the removal of a previous attempt to fix this issue:

Revert "Frameworks : Make sure a reply is sent when not provisioning default apn"

This reverts commit 8733a2d2a1c5c88f661c4d6947cc9eb8f27d4874.

Revert "DcTrackerBase: Dont provision APN if default is disconnecting"

This reverts commit cf13f20b88c5add9d2e8ea74b8fe9fbeb88101b2.

Change-Id: I8181dca843eb3de4be68c5b2be6aac9d81732558
Merge "Telephony: fix null pointer exception" into cm-11.0
Merge "Telephony: Mock SMS (2/4)" into cm-11.0
Fix Whisperpush and Voice+ when using the new Hangouts.

Change-Id: I1ae96354e8d5679d1e7b781875081cec08108691
Merge branch 'cm-11.0' of https://github.com/CyanogenMod/android_frameworks_opt_telephony into HEAD