Merge "update PhoneAccount and PhoneAccountHandle docs on char limit"
diff --git a/telecomm/java/android/telecom/PhoneAccount.java b/telecomm/java/android/telecom/PhoneAccount.java
index b8c056e..ca15422 100644
--- a/telecomm/java/android/telecom/PhoneAccount.java
+++ b/telecomm/java/android/telecom/PhoneAccount.java
@@ -540,6 +540,11 @@
/**
* Creates a builder with the specified {@link PhoneAccountHandle} and label.
+ * <p>
+ * Note: each CharSequence or String field is limited to 256 characters. This check is
+ * enforced when registering the PhoneAccount via
+ * {@link TelecomManager#registerPhoneAccount(PhoneAccount)} and will cause an
+ * {@link IllegalArgumentException} to be thrown if the character field limit is over 256.
*/
public Builder(PhoneAccountHandle accountHandle, CharSequence label) {
this.mAccountHandle = accountHandle;
@@ -570,6 +575,11 @@
/**
* Sets the label. See {@link PhoneAccount#getLabel()}.
+ * <p>
+ * Note: Each CharSequence or String field is limited to 256 characters. This check is
+ * enforced when registering the PhoneAccount via
+ * {@link TelecomManager#registerPhoneAccount(PhoneAccount)} and will cause an
+ * {@link IllegalArgumentException} to be thrown if the character field limit is over 256.
*
* @param label The label of the phone account.
* @return The builder.
@@ -636,6 +646,11 @@
/**
* Sets the short description. See {@link PhoneAccount#getShortDescription}.
+ * <p>
+ * Note: Each CharSequence or String field is limited to 256 characters. This check is
+ * enforced when registering the PhoneAccount via
+ * {@link TelecomManager#registerPhoneAccount(PhoneAccount)} and will cause an
+ * {@link IllegalArgumentException} to be thrown if the character field limit is over 256.
*
* @param value The short description.
* @return The builder.
@@ -680,6 +695,13 @@
* <p>
* {@code PhoneAccount}s only support extra values of type: {@link String}, {@link Integer},
* and {@link Boolean}. Extras which are not of these types are ignored.
+ * <p>
+ * Note: Each Bundle (Key, Value) String field is limited to 256 characters. Additionally,
+ * the bundle is limited to 100 (Key, Value) pairs total. This check is
+ * enforced when registering the PhoneAccount via
+ * {@link TelecomManager#registerPhoneAccount(PhoneAccount)} and will cause an
+ * {@link IllegalArgumentException} to be thrown if the character field limit is over 256
+ * or more than 100 (Key, Value) pairs are in the Bundle.
*
* @param extras
* @return
@@ -711,6 +733,11 @@
* <p>
* Note: This is an API specific to the Telephony stack; the group Id will be ignored for
* callers not holding the correct permission.
+ * <p>
+ * Additionally, each CharSequence or String field is limited to 256 characters.
+ * This check is enforced when registering the PhoneAccount via
+ * {@link TelecomManager#registerPhoneAccount(PhoneAccount)} and will cause an
+ * {@link IllegalArgumentException} to be thrown if the character field limit is over 256.
*
* @param groupId The group Id of the {@link PhoneAccount} that will replace any other
* registered {@link PhoneAccount} in Telecom with the same Group Id.
diff --git a/telecomm/java/android/telecom/PhoneAccountHandle.java b/telecomm/java/android/telecom/PhoneAccountHandle.java
index ec94f8a..e5db8cf 100644
--- a/telecomm/java/android/telecom/PhoneAccountHandle.java
+++ b/telecomm/java/android/telecom/PhoneAccountHandle.java
@@ -70,6 +70,12 @@
* ID provided does not expose personally identifying information. A
* {@link ConnectionService} should use an opaque token as the
* {@link PhoneAccountHandle} identifier.
+ * <p>
+ * Note: Each String field is limited to 256 characters. This check is enforced when
+ * registering the PhoneAccount via
+ * {@link TelecomManager#registerPhoneAccount(PhoneAccount)} and will cause an
+ * {@link IllegalArgumentException} to be thrown if the character field limit is
+ * over 256.
*/
public PhoneAccountHandle(
@NonNull ComponentName componentName,
@@ -88,6 +94,13 @@
* {@link ConnectionService} should use an opaque token as the
* {@link PhoneAccountHandle} identifier.
* @param userHandle The {@link UserHandle} associated with this {@link PhoneAccountHandle}.
+ *
+ * <p>
+ * Note: Each String field is limited to 256 characters. This check is enforced when
+ * registering the PhoneAccount via
+ * {@link TelecomManager#registerPhoneAccount(PhoneAccount)} and will cause an
+ * {@link IllegalArgumentException} to be thrown if the character field limit is
+ * over 256.
*/
public PhoneAccountHandle(
@NonNull ComponentName componentName,