Merge "Add single use App specific incoming SMSes"
diff --git a/api/current.txt b/api/current.txt
index 3a70525..d158e10 100644
--- a/api/current.txt
+++ b/api/current.txt
@@ -37678,6 +37678,7 @@
   }
 
   public final class SmsManager {
+    method public java.lang.String createAppSpecificSmsToken(android.app.PendingIntent);
     method public java.util.ArrayList<java.lang.String> divideMessage(java.lang.String);
     method public void downloadMultimediaMessage(android.content.Context, java.lang.String, android.net.Uri, android.os.Bundle, android.app.PendingIntent);
     method public android.os.Bundle getCarrierConfigValues();
diff --git a/api/system-current.txt b/api/system-current.txt
index f7c1ed4..0bfeaf0 100644
--- a/api/system-current.txt
+++ b/api/system-current.txt
@@ -40750,6 +40750,7 @@
   }
 
   public final class SmsManager {
+    method public java.lang.String createAppSpecificSmsToken(android.app.PendingIntent);
     method public java.util.ArrayList<java.lang.String> divideMessage(java.lang.String);
     method public void downloadMultimediaMessage(android.content.Context, java.lang.String, android.net.Uri, android.os.Bundle, android.app.PendingIntent);
     method public android.os.Bundle getCarrierConfigValues();
diff --git a/api/test-current.txt b/api/test-current.txt
index 53521cc..9cd08d5 100644
--- a/api/test-current.txt
+++ b/api/test-current.txt
@@ -37775,6 +37775,7 @@
   }
 
   public final class SmsManager {
+    method public java.lang.String createAppSpecificSmsToken(android.app.PendingIntent);
     method public java.util.ArrayList<java.lang.String> divideMessage(java.lang.String);
     method public void downloadMultimediaMessage(android.content.Context, java.lang.String, android.net.Uri, android.os.Bundle, android.app.PendingIntent);
     method public android.os.Bundle getCarrierConfigValues();
diff --git a/telephony/java/com/android/internal/telephony/ISms.aidl b/telephony/java/com/android/internal/telephony/ISms.aidl
index 6115656..fe37531 100644
--- a/telephony/java/com/android/internal/telephony/ISms.aidl
+++ b/telephony/java/com/android/internal/telephony/ISms.aidl
@@ -447,4 +447,16 @@
     void sendStoredMultipartText(int subId, String callingPkg, in Uri messageUri,
                 String scAddress, in List<PendingIntent> sentIntents,
                 in List<PendingIntent> deliveryIntents);
+
+    /**
+     * Create an app-only incoming SMS request for the calling package.
+     *
+     * If an incoming text contains the token returned by this method the provided
+     * <code>PendingIntent</code> will be sent containing the SMS data.
+     *
+     * @param subId the SIM id.
+     * @param callingPkg the package name of the calling app.
+     * @param intent PendingIntent to be sent when an SMS is received containing the token.
+     */
+    String createAppSpecificSmsToken(int subId, String callingPkg, in PendingIntent intent);
 }