am 81f573de: Merge "Add telephony.sms.receive and telephony.sms.send properties." into honeycomb

* commit '81f573de6361b0420b22c857afa7e03df125d1a5':
  Add telephony.sms.receive and telephony.sms.send properties.
This commit is contained in:
Wink Saville
2011-01-07 11:04:26 -08:00
committed by Android Git Automerger
4 changed files with 29 additions and 7 deletions

View File

@@ -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;
}

View File

@@ -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";
}

View File

@@ -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;
}

View File

@@ -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.");