PhoneNumber class

An object representing a phone number, suitable as an API wire format.

This representation:

  • should not be used for locale-specific formatting of a phone number, such as "+1 (650) 253-0000 ext. 123"

  • is not designed for efficient storage

  • may not be suitable for dialing - specialized libraries (see references) should be used to parse the number for that purpose

To do something meaningful with this number, such as format it for various use-cases, convert it to an i18n.phonenumbers.PhoneNumber object first.

For instance, in Java this would be:

com.google.type.PhoneNumber wireProto =
    com.google.type.PhoneNumber.newBuilder().build();
com.google.i18n.phonenumbers.Phonenumber.PhoneNumber phoneNumber =
    PhoneNumberUtil.getInstance().parse(wireProto.getE164Number(), "ZZ");
if (!wireProto.getExtension().isEmpty()) {
  phoneNumber.setExtension(wireProto.getExtension());
}

Reference(s):

Inheritance
  • Object
  • GeneratedMessage
  • PhoneNumber

Constructors

PhoneNumber({String? e164Number, PhoneNumber_ShortCode? shortCode, String? extension_3})
factory
PhoneNumber.fromBuffer(List<int> i, [ExtensionRegistry r = $pb.ExtensionRegistry.EMPTY])
factory
PhoneNumber.fromJson(String i, [ExtensionRegistry r = $pb.ExtensionRegistry.EMPTY])
factory

Properties

e164Number ↔ String
The phone number, represented as a leading plus sign ('+'), followed by a phone number that uses a relaxed ITU E.164 format consisting of the country calling code (1 to 3 digits) and the subscriber number, with no additional spaces or formatting, e.g.:
getter/setter pair
eventPlugin → EventPlugin?
Subclasses can override this getter to be notified of changes to protobuf fields.
no setterinherited
extension_3 ↔ String
The phone number's extension. The extension is not standardized in ITU recommendations, except for being defined as a series of numbers with a maximum length of 40 digits. Other than digits, some other dialing characters such as ',' (indicating a wait) or '#' may be stored here.
getter/setter pair
hashCode → int
Calculates a hash code based on the contents of the protobuf.
no setterinherited
info_ → BuilderInfo
no setteroverride
isFrozen → bool
Returns true if this message is marked read-only. Otherwise false.
no setterinherited
runtimeType → Type
A representation of the runtime type of the object.
no setterinherited
shortCode ↔ PhoneNumber_ShortCode
A short code.
getter/setter pair
unknownFields → UnknownFieldSet
no setterinherited

Methods

addExtension(Extension extension, Object? value) → void
Adds an extension field value to a repeated field.
inherited
check() → void
inherited
clear() → void
Clears all data that was set in this message.
inherited
clearE164Number() → void
clearExtension(Extension extension) → void
Clears an extension field and also removes the extension.
inherited
clearExtension_3() → void
clearField(int tagNumber) → void
Clears the contents of a given field.
inherited
clearKind() → void
clearShortCode() → void
clone() → PhoneNumber
Creates a deep copy of the fields in this message. (The generated code uses mergeFromMessage.)
override
copyWith(void updates(PhoneNumber)) → PhoneNumber
Apply updates to a copy of this message.
override
createEmptyInstance() → PhoneNumber
Creates an empty instance of the same message type as this.
override
createMapField<K, V>(int tagNumber, MapFieldInfo<K, V> fi) → Map<K, V>
Creates a Map representing a map field.
inherited
createRepeatedField<T>(int tagNumber, FieldInfo<T> fi) → List<T>
Creates List implementing a mutable repeated field.
inherited
ensureShortCode() → PhoneNumber_ShortCode
extensionsAreInitialized() → bool
inherited
freeze() → GeneratedMessage
Make this message read-only.
inherited
getDefaultForField(int tagNumber) → dynamic
Returns the default value for the given field.
inherited
getExtension(Extension extension) → dynamic
Returns the value of extension.
inherited
getField(int tagNumber) → dynamic
Returns the value of the field associated with tagNumber, or the default value if it is not set.
inherited
getFieldOrNull(int tagNumber) → dynamic
Returns the value of a field, ignoring any defaults.
inherited
getTagNumber(String fieldName) → int?
inherited
hasE164Number() → bool
hasExtension(Extension extension) → bool
Returns true if a value of extension is present.
inherited
hasExtension_3() → bool
hasField(int tagNumber) → bool
Whether this message has a field associated with tagNumber.
inherited
hasRequiredFields() → bool
Whether the message has required fields.
inherited
hasShortCode() → bool
isInitialized() → bool
Whether all required fields in the message and embedded messages are set.
inherited
mergeFromBuffer(List<int> input, [ExtensionRegistry extensionRegistry = ExtensionRegistry.EMPTY]) → void
Merges serialized protocol buffer data into this message.
inherited
mergeFromCodedBufferReader(CodedBufferReader input, [ExtensionRegistry extensionRegistry = ExtensionRegistry.EMPTY]) → void
inherited
mergeFromJson(String data, [ExtensionRegistry extensionRegistry = ExtensionRegistry.EMPTY]) → void
Merges field values from data, a JSON object, encoded as described by GeneratedMessage.writeToJson.
inherited
mergeFromJsonMap(Map<String, dynamic> json, [ExtensionRegistry extensionRegistry = ExtensionRegistry.EMPTY]) → void
Merges field values from a JSON object represented as a Dart map.
inherited
mergeFromMessage(GeneratedMessage other) → void
Merges the contents of the other into this message.
inherited
mergeFromProto3Json(Object? json, {TypeRegistry typeRegistry = const TypeRegistry.empty(), bool ignoreUnknownFields = false, bool supportNamesWithUnderscores = true, bool permissiveEnums = false}) → void
Merges field values from json, a JSON object using proto3 encoding.
inherited
mergeUnknownFields(UnknownFieldSet unknownFieldSet) → void
inherited
noSuchMethod(Invocation invocation) → dynamic
Invoked when a nonexistent method or property is accessed.
inherited
setExtension(Extension extension, Object value) → void
Sets the value of a non-repeated extension field to value.
inherited
setField(int tagNumber, Object value) → void
Sets the value of a field by its tagNumber.
inherited
toBuilder() → GeneratedMessage
Creates a writable, shallow copy of this message.
inherited
toDebugString() → String
Returns a String representation of this message.
inherited
toProto3Json({TypeRegistry typeRegistry = const TypeRegistry.empty()}) → Object?
Returns an Object representing Proto3 JSON serialization of this.
inherited
toString() → String
Returns a String representation of this message.
inherited
whichKind() → PhoneNumber_Kind
writeToBuffer() → Uint8List
inherited
writeToCodedBufferWriter(CodedBufferWriter output) → void
inherited
writeToJson() → String
Returns a JSON string that encodes this message.
inherited
writeToJsonMap() → Map<String, dynamic>
Returns the JSON encoding of this message as a Dart Map.
inherited

Operators

operator ==(Object other) → bool
The equality operator.
inherited

Static Methods

create() → PhoneNumber
createRepeated() → PbList<PhoneNumber>
getDefault() → PhoneNumber