Merge "Add telephony.sms.receive and telephony.sms.send properties." into honeycomb
This commit is contained in:
@@ -37,6 +37,7 @@ import android.os.Handler;
|
|||||||
import android.os.Message;
|
import android.os.Message;
|
||||||
import android.os.PowerManager;
|
import android.os.PowerManager;
|
||||||
import android.os.StatFs;
|
import android.os.StatFs;
|
||||||
|
import android.os.SystemProperties;
|
||||||
import android.provider.Telephony;
|
import android.provider.Telephony;
|
||||||
import android.provider.Telephony.Sms.Intents;
|
import android.provider.Telephony.Sms.Intents;
|
||||||
import android.provider.Settings;
|
import android.provider.Settings;
|
||||||
@@ -156,8 +157,10 @@ public abstract class SMSDispatcher extends Handler {
|
|||||||
protected boolean mStorageAvailable = true;
|
protected boolean mStorageAvailable = true;
|
||||||
protected boolean mReportMemoryStatusPending = false;
|
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 mSmsCapable = true;
|
||||||
|
protected boolean mSmsReceiveDisabled;
|
||||||
|
protected boolean mSmsSendDisabled;
|
||||||
|
|
||||||
protected static int getNextConcatenatedRef() {
|
protected static int getNextConcatenatedRef() {
|
||||||
sConcatenatedRef += 1;
|
sConcatenatedRef += 1;
|
||||||
@@ -255,6 +258,13 @@ public abstract class SMSDispatcher extends Handler {
|
|||||||
|
|
||||||
mSmsCapable = mContext.getResources().getBoolean(
|
mSmsCapable = mContext.getResources().getBoolean(
|
||||||
com.android.internal.R.bool.config_sms_capable);
|
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() {
|
public void dispose() {
|
||||||
@@ -783,13 +793,13 @@ public abstract class SMSDispatcher extends Handler {
|
|||||||
*/
|
*/
|
||||||
protected void sendRawPdu(byte[] smsc, byte[] pdu, PendingIntent sentIntent,
|
protected void sendRawPdu(byte[] smsc, byte[] pdu, PendingIntent sentIntent,
|
||||||
PendingIntent deliveryIntent) {
|
PendingIntent deliveryIntent) {
|
||||||
if (!mSmsCapable) {
|
if (mSmsSendDisabled) {
|
||||||
if (sentIntent != null) {
|
if (sentIntent != null) {
|
||||||
try {
|
try {
|
||||||
sentIntent.send(RESULT_ERROR_NO_SERVICE);
|
sentIntent.send(RESULT_ERROR_NO_SERVICE);
|
||||||
} catch (CanceledException ex) {}
|
} catch (CanceledException ex) {}
|
||||||
}
|
}
|
||||||
Log.d(TAG, "Device does not support sms service.");
|
Log.d(TAG, "Device does not support sending sms.");
|
||||||
return;
|
return;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|||||||
@@ -147,4 +147,16 @@ public interface TelephonyProperties
|
|||||||
* when there is a radio technology change.
|
* when there is a radio technology change.
|
||||||
*/
|
*/
|
||||||
static final String PROPERTY_RESET_ON_RADIO_TECH_CHANGE = "persist.radio.reset_on_switch";
|
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";
|
||||||
}
|
}
|
||||||
|
|||||||
@@ -107,10 +107,10 @@ final class CdmaSMSDispatcher extends SMSDispatcher {
|
|||||||
return Activity.RESULT_OK;
|
return Activity.RESULT_OK;
|
||||||
}
|
}
|
||||||
|
|
||||||
if (!mSmsCapable) {
|
if (mSmsReceiveDisabled) {
|
||||||
// Device doesn't support SMS service,
|
// Device doesn't support receiving SMS,
|
||||||
Log.d(TAG, "Received short message on device which doesn't support "
|
Log.d(TAG, "Received short message on device which doesn't support "
|
||||||
+ "SMS service. Ignored.");
|
+ "receiving SMS. Ignored.");
|
||||||
return Intents.RESULT_SMS_HANDLED;
|
return Intents.RESULT_SMS_HANDLED;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|||||||
@@ -110,7 +110,7 @@ final class GsmSMSDispatcher extends SMSDispatcher {
|
|||||||
return Intents.RESULT_SMS_HANDLED;
|
return Intents.RESULT_SMS_HANDLED;
|
||||||
}
|
}
|
||||||
|
|
||||||
if (!mSmsCapable) {
|
if (mSmsReceiveDisabled) {
|
||||||
// Device doesn't support SMS service,
|
// Device doesn't support SMS service,
|
||||||
Log.d(TAG, "Received short message on device which doesn't support "
|
Log.d(TAG, "Received short message on device which doesn't support "
|
||||||
+ "SMS service. Ignored.");
|
+ "SMS service. Ignored.");
|
||||||
|
|||||||
Reference in New Issue
Block a user