Merge "Allow MmsConfig override per request (1/3)" into lmp-dev
This commit is contained in:
@@ -29262,12 +29262,12 @@ package android.telephony {
|
||||
|
||||
public class MessagingConfigurationManager {
|
||||
method public boolean getCarrierConfigBoolean(java.lang.String, boolean);
|
||||
method public boolean getCarrierConfigBoolean(long, java.lang.String, boolean);
|
||||
method public int getCarrierConfigInt(java.lang.String, int);
|
||||
method public int getCarrierConfigInt(long, java.lang.String, int);
|
||||
method public java.lang.String getCarrierConfigString(java.lang.String, java.lang.String);
|
||||
method public java.lang.String getCarrierConfigString(long, java.lang.String, java.lang.String);
|
||||
method public static android.telephony.MessagingConfigurationManager getDefault();
|
||||
method public void setCarrierConfigBoolean(java.lang.String, boolean);
|
||||
method public void setCarrierConfigInt(java.lang.String, int);
|
||||
method public void setCarrierConfigString(java.lang.String, java.lang.String);
|
||||
field public static final java.lang.String CONF_ALIAS_ENABLED = "aliasEnabled";
|
||||
field public static final java.lang.String CONF_ALIAS_MAX_CHARS = "aliasMaxChars";
|
||||
field public static final java.lang.String CONF_ALIAS_MIN_CHARS = "aliasMinChars";
|
||||
@@ -29446,19 +29446,19 @@ package android.telephony {
|
||||
method public boolean deleteStoredConversation(long);
|
||||
method public boolean deleteStoredMessage(android.net.Uri);
|
||||
method public java.util.ArrayList<java.lang.String> divideMessage(java.lang.String);
|
||||
method public void downloadMultimediaMessage(java.lang.String, android.app.PendingIntent);
|
||||
method public void downloadMultimediaMessage(long, java.lang.String, android.app.PendingIntent);
|
||||
method public void downloadMultimediaMessage(java.lang.String, android.content.ContentValues, android.app.PendingIntent);
|
||||
method public void downloadMultimediaMessage(long, java.lang.String, android.content.ContentValues, android.app.PendingIntent);
|
||||
method public boolean getAutoPersisting();
|
||||
method public static android.telephony.SmsManager getDefault();
|
||||
method public android.net.Uri importMultimediaMessage(byte[], java.lang.String, long, boolean, boolean);
|
||||
method public android.net.Uri importTextMessage(java.lang.String, int, java.lang.String, long, boolean, boolean);
|
||||
method public void injectSmsPdu(byte[], java.lang.String, android.app.PendingIntent);
|
||||
method public void sendDataMessage(java.lang.String, java.lang.String, short, byte[], android.app.PendingIntent, android.app.PendingIntent);
|
||||
method public void sendMultimediaMessage(byte[], java.lang.String, android.app.PendingIntent);
|
||||
method public void sendMultimediaMessage(long, byte[], java.lang.String, android.app.PendingIntent);
|
||||
method public void sendMultimediaMessage(byte[], java.lang.String, android.content.ContentValues, android.app.PendingIntent);
|
||||
method public void sendMultimediaMessage(long, byte[], java.lang.String, android.content.ContentValues, android.app.PendingIntent);
|
||||
method public void sendMultipartTextMessage(java.lang.String, java.lang.String, java.util.ArrayList<java.lang.String>, java.util.ArrayList<android.app.PendingIntent>, java.util.ArrayList<android.app.PendingIntent>);
|
||||
method public void sendStoredMultimediaMessage(android.net.Uri, android.app.PendingIntent);
|
||||
method public void sendStoredMultimediaMessage(long, android.net.Uri, android.app.PendingIntent);
|
||||
method public void sendStoredMultimediaMessage(android.net.Uri, android.content.ContentValues, android.app.PendingIntent);
|
||||
method public void sendStoredMultimediaMessage(long, android.net.Uri, android.content.ContentValues, android.app.PendingIntent);
|
||||
method public void sendStoredMultipartTextMessage(android.net.Uri, java.lang.String, java.util.ArrayList<android.app.PendingIntent>, java.util.ArrayList<android.app.PendingIntent>);
|
||||
method public void sendStoredMultipartTextMessage(long, android.net.Uri, java.lang.String, java.util.ArrayList<android.app.PendingIntent>, java.util.ArrayList<android.app.PendingIntent>);
|
||||
method public void sendStoredTextMessage(android.net.Uri, java.lang.String, android.app.PendingIntent, android.app.PendingIntent);
|
||||
|
||||
@@ -191,25 +191,28 @@ public class MmsServiceBroker extends SystemService {
|
||||
private final class BinderService extends IMms.Stub {
|
||||
@Override
|
||||
public void sendMessage(long subId, String callingPkg, byte[] pdu, String locationUrl,
|
||||
PendingIntent sentIntent) throws RemoteException {
|
||||
ContentValues configOverrides, PendingIntent sentIntent) throws RemoteException {
|
||||
mContext.enforceCallingPermission(Manifest.permission.SEND_SMS, "Send MMS message");
|
||||
if (getAppOpsManager().noteOp(AppOpsManager.OP_SEND_SMS, Binder.getCallingUid(),
|
||||
callingPkg) != AppOpsManager.MODE_ALLOWED) {
|
||||
return;
|
||||
}
|
||||
getServiceGuarded().sendMessage(subId, callingPkg, pdu, locationUrl, sentIntent);
|
||||
getServiceGuarded().sendMessage(subId, callingPkg, pdu, locationUrl, configOverrides,
|
||||
sentIntent);
|
||||
}
|
||||
|
||||
@Override
|
||||
public void downloadMessage(long subId, String callingPkg, String locationUrl,
|
||||
PendingIntent downloadedIntent) throws RemoteException {
|
||||
ContentValues configOverrides, PendingIntent downloadedIntent)
|
||||
throws RemoteException {
|
||||
mContext.enforceCallingPermission(Manifest.permission.RECEIVE_MMS,
|
||||
"Download MMS message");
|
||||
if (getAppOpsManager().noteOp(AppOpsManager.OP_RECEIVE_MMS, Binder.getCallingUid(),
|
||||
callingPkg) != AppOpsManager.MODE_ALLOWED) {
|
||||
return;
|
||||
}
|
||||
getServiceGuarded().downloadMessage(subId, callingPkg, locationUrl, downloadedIntent);
|
||||
getServiceGuarded().downloadMessage(subId, callingPkg, locationUrl, configOverrides,
|
||||
downloadedIntent);
|
||||
}
|
||||
|
||||
@Override
|
||||
@@ -225,53 +228,21 @@ public class MmsServiceBroker extends SystemService {
|
||||
}
|
||||
|
||||
@Override
|
||||
public boolean getCarrierConfigBoolean(String name, boolean defaultValue)
|
||||
public boolean getCarrierConfigBoolean(long subId, String name, boolean defaultValue)
|
||||
throws RemoteException {
|
||||
return getServiceGuarded().getCarrierConfigBoolean(name, defaultValue);
|
||||
return getServiceGuarded().getCarrierConfigBoolean(subId, name, defaultValue);
|
||||
}
|
||||
|
||||
@Override
|
||||
public int getCarrierConfigInt(String name, int defaultValue) throws RemoteException {
|
||||
return getServiceGuarded().getCarrierConfigInt(name, defaultValue);
|
||||
public int getCarrierConfigInt(long subId, String name, int defaultValue)
|
||||
throws RemoteException {
|
||||
return getServiceGuarded().getCarrierConfigInt(subId, name, defaultValue);
|
||||
}
|
||||
|
||||
@Override
|
||||
public String getCarrierConfigString(String name, String defaultValue)
|
||||
public String getCarrierConfigString(long subId, String name, String defaultValue)
|
||||
throws RemoteException {
|
||||
return getServiceGuarded().getCarrierConfigString(name, defaultValue);
|
||||
}
|
||||
|
||||
@Override
|
||||
public void setCarrierConfigBoolean(String callingPkg, String name, boolean value)
|
||||
throws RemoteException {
|
||||
mContext.enforceCallingPermission(Manifest.permission.SEND_SMS, "Set MMS config");
|
||||
if (getAppOpsManager().noteOp(AppOpsManager.OP_SEND_SMS, Binder.getCallingUid(),
|
||||
callingPkg) != AppOpsManager.MODE_ALLOWED) {
|
||||
return;
|
||||
}
|
||||
getServiceGuarded().setCarrierConfigBoolean(callingPkg, name, value);
|
||||
}
|
||||
|
||||
@Override
|
||||
public void setCarrierConfigInt(String callingPkg, String name, int value)
|
||||
throws RemoteException {
|
||||
mContext.enforceCallingPermission(Manifest.permission.SEND_SMS, "Set MMS config");
|
||||
if (getAppOpsManager().noteOp(AppOpsManager.OP_SEND_SMS, Binder.getCallingUid(),
|
||||
callingPkg) != AppOpsManager.MODE_ALLOWED) {
|
||||
return;
|
||||
}
|
||||
getServiceGuarded().setCarrierConfigInt(callingPkg, name, value);
|
||||
}
|
||||
|
||||
@Override
|
||||
public void setCarrierConfigString(String callingPkg, String name, String value)
|
||||
throws RemoteException {
|
||||
mContext.enforceCallingPermission(Manifest.permission.SEND_SMS, "Set MMS config");
|
||||
if (getAppOpsManager().noteOp(AppOpsManager.OP_SEND_SMS, Binder.getCallingUid(),
|
||||
callingPkg) != AppOpsManager.MODE_ALLOWED) {
|
||||
return;
|
||||
}
|
||||
getServiceGuarded().setCarrierConfigString(callingPkg, name, value);
|
||||
return getServiceGuarded().getCarrierConfigString(subId, name, defaultValue);
|
||||
}
|
||||
|
||||
@Override
|
||||
@@ -370,14 +341,15 @@ public class MmsServiceBroker extends SystemService {
|
||||
|
||||
@Override
|
||||
public void sendStoredMessage(long subId, String callingPkg, Uri messageUri,
|
||||
PendingIntent sentIntent) throws RemoteException {
|
||||
ContentValues configOverrides, PendingIntent sentIntent) throws RemoteException {
|
||||
mContext.enforceCallingPermission(Manifest.permission.SEND_SMS,
|
||||
"Send stored MMS message");
|
||||
if (getAppOpsManager().noteOp(AppOpsManager.OP_SEND_SMS, Binder.getCallingUid(),
|
||||
callingPkg) != AppOpsManager.MODE_ALLOWED) {
|
||||
return;
|
||||
}
|
||||
getServiceGuarded().sendStoredMessage(subId, callingPkg, messageUri, sentIntent);
|
||||
getServiceGuarded().sendStoredMessage(subId, callingPkg, messageUri, configOverrides,
|
||||
sentIntent);
|
||||
}
|
||||
|
||||
@Override
|
||||
|
||||
@@ -31,11 +31,14 @@ interface IMms {
|
||||
* @param callingPkg the package name of the calling app
|
||||
* @param pdu the MMS message encoded in standard MMS PDU format
|
||||
* @param locationUrl the optional location url for where this message should be sent to
|
||||
* @param configOverrides the carrier-specific messaging configuration values to override for
|
||||
* sending the message. See {@link android.telephony.MessagingConfigurationManager} for the
|
||||
* value names and types.
|
||||
* @param sentIntent if not NULL this <code>PendingIntent</code> is
|
||||
* broadcast when the message is successfully sent, or failed
|
||||
*/
|
||||
void sendMessage(long subId, String callingPkg, in byte[] pdu, String locationUrl,
|
||||
in PendingIntent sentIntent);
|
||||
in ContentValues configOverrides, in PendingIntent sentIntent);
|
||||
|
||||
/**
|
||||
* Download an MMS message using known location and transaction id
|
||||
@@ -44,11 +47,14 @@ interface IMms {
|
||||
* @param callingPkg the package name of the calling app
|
||||
* @param locationUrl the location URL of the MMS message to be downloaded, usually obtained
|
||||
* from the MMS WAP push notification
|
||||
* @param configOverrides the carrier-specific messaging configuration values to override for
|
||||
* downloading the message. See {@link android.telephony.MessagingConfigurationManager} for the
|
||||
* value names and types.
|
||||
* @param downloadedIntent if not NULL this <code>PendingIntent</code> is
|
||||
* broadcast when the message is downloaded, or the download is failed
|
||||
*/
|
||||
void downloadMessage(long subId, String callingPkg, String locationUrl,
|
||||
in PendingIntent downloadedIntent);
|
||||
in ContentValues configOverrides, in PendingIntent downloadedIntent);
|
||||
|
||||
/**
|
||||
* Update the status of a pending (send-by-IP) MMS message handled by the carrier app.
|
||||
@@ -75,53 +81,30 @@ interface IMms {
|
||||
* Get carrier-dependent configuration value as boolean. For example, if multipart SMS
|
||||
* is supported.
|
||||
*
|
||||
* @param subId the SIM id
|
||||
* @param name the configuration name
|
||||
* @param defaultValue the default value if fail to find the name
|
||||
*/
|
||||
boolean getCarrierConfigBoolean(String name, boolean defaultValue);
|
||||
boolean getCarrierConfigBoolean(long subId, String name, boolean defaultValue);
|
||||
|
||||
/**
|
||||
* Get carrier-dependent configuration value as int. For example, the MMS message size limit.
|
||||
*
|
||||
* @param subId the SIM id
|
||||
* @param name the configuration name
|
||||
* @param defaultValue the default value if fail to find the name
|
||||
*/
|
||||
int getCarrierConfigInt(String name, int defaultValue);
|
||||
int getCarrierConfigInt(long subId, String name, int defaultValue);
|
||||
|
||||
/**
|
||||
* Get carrier-dependent configuration value as String. For example, extra HTTP headers for
|
||||
* MMS request.
|
||||
*
|
||||
* @param subId the SIM id
|
||||
* @param name the configuration name
|
||||
* @param defaultValue the default value if fail to find the name
|
||||
*/
|
||||
String getCarrierConfigString(String name, String defaultValue);
|
||||
|
||||
/**
|
||||
* Set carrier-dependent configuration value as boolean. For example, if multipart SMS
|
||||
* is supported.
|
||||
*
|
||||
* @param name the configuration name
|
||||
* @param value the configuration value
|
||||
*/
|
||||
void setCarrierConfigBoolean(String callingPkg, String name, boolean value);
|
||||
|
||||
/**
|
||||
* Set carrier-dependent configuration value as int. For example, the MMS message size limit.
|
||||
*
|
||||
* @param name the configuration name
|
||||
* @param value the configuration value
|
||||
*/
|
||||
void setCarrierConfigInt(String callingPkg, String name, int value);
|
||||
|
||||
/**
|
||||
* Set carrier-dependent configuration value as String. For example, extra HTTP headers for
|
||||
* MMS request.
|
||||
*
|
||||
* @param name the configuration name
|
||||
* @param value the configuration value
|
||||
*/
|
||||
void setCarrierConfigString(String callingPkg, String name, String value);
|
||||
String getCarrierConfigString(long subId, String name, String defaultValue);
|
||||
|
||||
/**
|
||||
* Import a text message into system's SMS store
|
||||
@@ -220,11 +203,14 @@ interface IMms {
|
||||
* @param subId the SIM id
|
||||
* @param callingPkg the package name of the calling app
|
||||
* @param messageUri the URI of the stored message
|
||||
* @param configOverrides the carrier-specific messaging configuration values to override for
|
||||
* sending the message. See {@link android.telephony.MessagingConfigurationManager} for the
|
||||
* value names and types.
|
||||
* @param sentIntent if not NULL this <code>PendingIntent</code> is
|
||||
* broadcast when the message is successfully sent, or failed
|
||||
*/
|
||||
void sendStoredMessage(long subId, String callingPkg, in Uri messageUri,
|
||||
in PendingIntent sentIntent);
|
||||
in ContentValues configOverrides, in PendingIntent sentIntent);
|
||||
|
||||
/**
|
||||
* Turns on/off the flag to automatically write sent/received SMS/MMS messages into system
|
||||
|
||||
Reference in New Issue
Block a user