summaryrefslogtreecommitdiffstats
path: root/telephony/java
diff options
context:
space:
mode:
authorWink Saville <wink@google.com>2011-01-07 11:00:42 -0800
committerAndroid (Google) Code Review <android-gerrit@google.com>2011-01-07 11:00:42 -0800
commit81f573de6361b0420b22c857afa7e03df125d1a5 (patch)
tree7dc1778e6c097c4421f8553368fb481fb3600fe6 /telephony/java
parent3c38e0a2a617f87a43d3647b532e3b493b7dae6d (diff)
parentcde0233512f8dbbc62238e90c850c310894e3972 (diff)
downloadframeworks_base-81f573de6361b0420b22c857afa7e03df125d1a5.zip
frameworks_base-81f573de6361b0420b22c857afa7e03df125d1a5.tar.gz
frameworks_base-81f573de6361b0420b22c857afa7e03df125d1a5.tar.bz2
Merge "Add telephony.sms.receive and telephony.sms.send properties." into honeycomb
Diffstat (limited to 'telephony/java')
-rw-r--r--telephony/java/com/android/internal/telephony/SMSDispatcher.java16
-rw-r--r--telephony/java/com/android/internal/telephony/TelephonyProperties.java12
-rw-r--r--telephony/java/com/android/internal/telephony/cdma/CdmaSMSDispatcher.java6
-rw-r--r--telephony/java/com/android/internal/telephony/gsm/GsmSMSDispatcher.java2
4 files changed, 29 insertions, 7 deletions
diff --git a/telephony/java/com/android/internal/telephony/SMSDispatcher.java b/telephony/java/com/android/internal/telephony/SMSDispatcher.java
index e7cfe75..99123af 100644
--- a/telephony/java/com/android/internal/telephony/SMSDispatcher.java
+++ b/telephony/java/com/android/internal/telephony/SMSDispatcher.java
@@ -37,6 +37,7 @@ import android.os.Handler;
import android.os.Message;
import android.os.PowerManager;
import android.os.StatFs;
+import android.os.SystemProperties;
import android.provider.Telephony;
import android.provider.Telephony.Sms.Intents;
import android.provider.Settings;
@@ -156,8 +157,10 @@ public abstract class SMSDispatcher extends Handler {
protected boolean mStorageAvailable = true;
protected boolean mReportMemoryStatusPending = false;
- /* Flag indicating whether the current device allows sms service */
+ /* Flags indicating whether the current device allows sms service */
protected boolean mSmsCapable = true;
+ protected boolean mSmsReceiveDisabled;
+ protected boolean mSmsSendDisabled;
protected static int getNextConcatenatedRef() {
sConcatenatedRef += 1;
@@ -255,6 +258,13 @@ public abstract class SMSDispatcher extends Handler {
mSmsCapable = mContext.getResources().getBoolean(
com.android.internal.R.bool.config_sms_capable);
+ mSmsReceiveDisabled = !SystemProperties.getBoolean(
+ TelephonyProperties.PROPERTY_SMS_RECEIVE, mSmsCapable);
+ mSmsSendDisabled = !SystemProperties.getBoolean(
+ TelephonyProperties.PROPERTY_SMS_SEND, mSmsCapable);
+ Log.d(TAG, "SMSDispatcher: ctor mSmsCapable=" + mSmsCapable
+ + " mSmsReceiveDisabled=" + mSmsReceiveDisabled
+ + " mSmsSendDisabled=" + mSmsSendDisabled);
}
public void dispose() {
@@ -783,13 +793,13 @@ public abstract class SMSDispatcher extends Handler {
*/
protected void sendRawPdu(byte[] smsc, byte[] pdu, PendingIntent sentIntent,
PendingIntent deliveryIntent) {
- if (!mSmsCapable) {
+ if (mSmsSendDisabled) {
if (sentIntent != null) {
try {
sentIntent.send(RESULT_ERROR_NO_SERVICE);
} catch (CanceledException ex) {}
}
- Log.d(TAG, "Device does not support sms service.");
+ Log.d(TAG, "Device does not support sending sms.");
return;
}
diff --git a/telephony/java/com/android/internal/telephony/TelephonyProperties.java b/telephony/java/com/android/internal/telephony/TelephonyProperties.java
index 136d5b1..e6189be 100644
--- a/telephony/java/com/android/internal/telephony/TelephonyProperties.java
+++ b/telephony/java/com/android/internal/telephony/TelephonyProperties.java
@@ -147,4 +147,16 @@ public interface TelephonyProperties
* when there is a radio technology change.
*/
static final String PROPERTY_RESET_ON_RADIO_TECH_CHANGE = "persist.radio.reset_on_switch";
+
+ /**
+ * Set to false to disable SMS receiving, default is
+ * the value of config_sms_capable
+ */
+ static final String PROPERTY_SMS_RECEIVE = "telephony.sms.receive";
+
+ /**
+ * Set to false to disable SMS sending, default is
+ * the value of config_sms_capable
+ */
+ static final String PROPERTY_SMS_SEND = "telephony.sms.send";
}
diff --git a/telephony/java/com/android/internal/telephony/cdma/CdmaSMSDispatcher.java b/telephony/java/com/android/internal/telephony/cdma/CdmaSMSDispatcher.java
index 01234b0..6bd2d09 100644
--- a/telephony/java/com/android/internal/telephony/cdma/CdmaSMSDispatcher.java
+++ b/telephony/java/com/android/internal/telephony/cdma/CdmaSMSDispatcher.java
@@ -107,10 +107,10 @@ final class CdmaSMSDispatcher extends SMSDispatcher {
return Activity.RESULT_OK;
}
- if (!mSmsCapable) {
- // Device doesn't support SMS service,
+ if (mSmsReceiveDisabled) {
+ // Device doesn't support receiving SMS,
Log.d(TAG, "Received short message on device which doesn't support "
- + "SMS service. Ignored.");
+ + "receiving SMS. Ignored.");
return Intents.RESULT_SMS_HANDLED;
}
diff --git a/telephony/java/com/android/internal/telephony/gsm/GsmSMSDispatcher.java b/telephony/java/com/android/internal/telephony/gsm/GsmSMSDispatcher.java
index 497c552..bbe579d 100644
--- a/telephony/java/com/android/internal/telephony/gsm/GsmSMSDispatcher.java
+++ b/telephony/java/com/android/internal/telephony/gsm/GsmSMSDispatcher.java
@@ -110,7 +110,7 @@ final class GsmSMSDispatcher extends SMSDispatcher {
return Intents.RESULT_SMS_HANDLED;
}
- if (!mSmsCapable) {
+ if (mSmsReceiveDisabled) {
// Device doesn't support SMS service,
Log.d(TAG, "Received short message on device which doesn't support "
+ "SMS service. Ignored.");