Most visited

Recently visited

Added in API level 1

PhoneNumberUtils

public class PhoneNumberUtils
extends Object

java.lang.Object
   ↳ android.telephony.PhoneNumberUtils


处理电话号码字符串的各种实用程序。

Summary

Constants

int FORMAT_JAPAN

日语格式

int FORMAT_NANP

NANP格式

int FORMAT_UNKNOWN

当前的语言环境未知,请查找国家/地区代码或不格式化

char PAUSE

int TOA_International

int TOA_Unknown

char WAIT

char WILD

Public constructors

PhoneNumberUtils()

Public methods

static void addTtsSpan(Spannable s, int start, int endExclusive)

TtsSpan附加到指定位置提供的 Spannable ,将该位置标注为包含电话号码。

static String calledPartyBCDFragmentToString(byte[] bytes, int offset, int length)

就像调用了PartyBCDToString一样,但是字段不是以TOA字节开始的。

static String calledPartyBCDToString(byte[] bytes, int offset, int length)

3GPP TS 24.008 10.5.4.7被叫方BCD号码另请参见TS 51.011 10.5.1“拨号号码/ ssc字符串”和TS 11.11“10.3.1 EF adn(缩位拨号号码)”

static boolean compare(Context context, String a, String b)

比较电话号码a和b,如果它们足够用于呼叫者ID目的,则返回true。

static boolean compare(String a, String b)

比较电话号码a和b,如果它们足够用于呼叫方ID目的,则返回true。

static String convertKeypadLettersToDigits(String input)

翻译任何字母(即

static TtsSpan createTtsSpan(String phoneNumberString)

创建 TtsSpan的供应 String

static CharSequence createTtsSpannable(CharSequence phoneNumber)

将提供的 CharSequenceTtsSpan ,注释为包含整个电话号码。

static String extractNetworkPortion(String phoneNumber)

提取网络地址部分并进行规范化(过滤分隔符)。网络地址部分是DTMF控制数字分隔符(暂停或等待)之前的所有内容,但不包含非可拨号字符。

static String extractPostDialPortion(String phoneNumber)

提取DTMF控制数字的拨号后序列,暂停和等待。

static void formatJapaneseNumber(Editable text)

此方法在API级别21中已弃用。请改用链接#formatNumber(String phoneNumber,String defaultCountryIso)

static void formatNanpNumber(Editable text)

此方法在API级别21中已弃用。请改用链接#formatNumber(String phoneNumber,String defaultCountryIso)

static String formatNumber(String phoneNumber, String phoneNumberE164, String defaultCountryIso)

只有在给定号码没有被格式化的情况下,才能格式化电话号码。

static void formatNumber(Editable text, int defaultFormattingType)

此方法在API级别21中已弃用。请改用链接#formatNumber(String phoneNumber,String defaultCountryIso)

static String formatNumber(String source)

此方法在API级别21中已弃用。请改用链接#formatNumber(String phoneNumber,String defaultCountryIso)

static String formatNumber(String phoneNumber, String defaultCountryIso)

格式化电话号码。

static String formatNumberToE164(String phoneNumber, String defaultCountryIso)

将指定的 phoneNumber为E.164表示。

static String formatNumberToRFC3966(String phoneNumber, String defaultCountryIso)

将指定的 phoneNumber为RFC3966表示形式。

static int getFormatTypeForLocale(Locale locale)

此方法在API级别21中已弃用。请改用链接#formatNumber(String phoneNumber,String defaultCountryIso)

static String getNumberFromIntent(Intent intent, Context context)

从意图中提取电话号码。

static String getStrippedReversed(String phoneNumber)

返回相反的网络部分。

static final boolean is12Key(char c)

如果c是ISO-LATIN字符,则为true 0-9,*,#

static final boolean isDialable(char c)

如果c是ISO-LATIN字符0-9,*,#,+,WILD,则为true

static boolean isEmergencyNumber(String number)

根据RIL和SIM卡提供的紧急号码列表检查给定号码。

static boolean isGlobalPhoneNumber(String phoneNumber)
static boolean isISODigit(char c)

如果c是ISO-LATIN字符0-9,则为真

static boolean isLocalEmergencyNumber(Context context, String number)

检查给定号码是否为该用户所在国家的紧急号码。

static final boolean isNonSeparator(char c)

如果c是ISO-LATIN字符0-9,*,#,+,WILD,WAIT,PAUSE,则为真

static final boolean isReallyDialable(char c)

如果c是ISO-LATIN字符,则为真0-9,*,#,+(无WILD)

static final boolean isStartsPostDial(char c)

这个字符右侧的任何内容都是拨号后字符串的一部分(例如,这是暂停或等待)

static boolean isVoiceMailNumber(String number)

isVoiceMailNumber:根据RIL和SIM卡提供的语音邮件号码检查给定的号码。

static boolean isWellFormedSmsAddress(String address)

如果 address的网络部分就我们在设备上可以 address情况而言适用于SMS目标地址,则返回true。

static byte[] networkPortionToCalledPartyBCD(String s)

注意:调用extractNetworkPortion(),所以不要用于SIM EF [ADN]样式记录如果网络部分为空,则返回null。

static byte[] networkPortionToCalledPartyBCDWithLength(String s)

networkPortionToCalledPartyBCD(String)相同,但包含一个字节长度的前缀。

static String normalizeNumber(String phoneNumber)

通过删除数字以外的字符来标准化电话号码。

static byte[] numberToCalledPartyBCD(String number)

将拨号号码转换为BCD字节数组

static String replaceUnicodeDigits(String number)

替换所有的Unicode(例如

static String stringFromStringAndTOA(String s, int TOA)

基本上:确保TOA_International数字前面有一个+如果s == null,则返回null

static String stripSeparators(String phoneNumber)

将分隔符从电话号码字符串中剥离。

static String toCallerIDMinMatch(String phoneNumber)

以*颠倒的顺序返回网络部分中最右边的MIN_MATCH(5)字符这可以用于对存储的列进行数据库查找getStrippedReversed()如果phoneNumber为null,则返回null

static int toaFromString(String s)

返回给定拨号字符串的TOA基本上,如果有+前缀,则返回TOA_International

Inherited methods

From class java.lang.Object

Constants

FORMAT_JAPAN

Added in API level 3
int FORMAT_JAPAN

日语格式

常量值:2(0x00000002)

FORMAT_NANP

Added in API level 1
int FORMAT_NANP

NANP格式

常数值:1(0x00000001)

FORMAT_UNKNOWN

Added in API level 1
int FORMAT_UNKNOWN

当前的语言环境未知,请查找国家/地区代码或不格式化

常量值:0(0x00000000)

PAUSE

Added in API level 1
char PAUSE

常量值:44(0x0000002c)

TOA_International

Added in API level 1
int TOA_International

常量值:145(0x00000091)

TOA_Unknown

Added in API level 1
int TOA_Unknown

常量值:129(0x00000081)

WAIT

Added in API level 1
char WAIT

常量值:59(0x0000003b)

WILD

Added in API level 1
char WILD

常量值:78(0x0000004e)

Public constructors

PhoneNumberUtils

Added in API level 1
PhoneNumberUtils ()

Public methods

addTtsSpan

Added in API level 23
void addTtsSpan (Spannable s, 
                int start, 
                int endExclusive)

TtsSpan附加到指定位置提供的 Spannable ,将该位置标注为包含电话号码。

Parameters
s Spannable: A Spannable to annotate.
start int: The starting character position of the phone number in s.
endExclusive int: The position after the ending character in the phone number s.

calledPartyBCDFragmentToString

Added in API level 1
String calledPartyBCDFragmentToString (byte[] bytes, 
                int offset, 
                int length)

就像调用了PartyBCDToString一样,但是字段不是以TOA字节开始的。 例如:SIM ADN扩展字段

Parameters
bytes byte
offset int
length int
Returns
String

calledPartyBCDToString

Added in API level 1
String calledPartyBCDToString (byte[] bytes, 
                int offset, 
                int length)

3GPP TS 24.008 10.5.4.7被叫方BCD号码另请参见TS 51.011 10.5.1“拨号号码/ ssc字符串”和TS 11.11“10.3.1 EF adn(缩位拨号号码)”

Parameters
bytes byte: the data buffer
offset int: should point to the TOA (aka. TON/NPI) octet after the length byte
length int: is the number of bytes including TOA byte and must be at least 2
Returns
String partial string on invalid decode FIXME(mkf) support alphanumeric address type currently implemented in SMSMessage.getAddress()

compare

Added in API level 5
boolean compare (Context context, 
                String a, 
                String b)

比较电话号码a和b,如果它们足够用于呼叫者ID目的,则返回true。 检查资源以确定是使用严格还是松散的比较算法。

Parameters
context Context
a String
b String
Returns
boolean

compare

Added in API level 1
boolean compare (String a, 
                String b)

比较电话号码a和b,如果它们足够用于呼叫方ID目的,则返回true。

Parameters
a String
b String
Returns
boolean

convertKeypadLettersToDigits

Added in API level 1
String convertKeypadLettersToDigits (String input)

根据ITU E.161和ISO / IEC 9995-8中描述的电话键盘字母映射,将指定电话号码中的任何字母字母(即[A-Za-z])转换为等效数字数字。

Parameters
input String
Returns
String the input string, with alpha letters converted to numeric digits using the phone keypad letter mapping. For example, an input of "1-800-GOOG-411" will return "1-800-4664-411".

createTtsSpan

Added in API level 23
TtsSpan createTtsSpan (String phoneNumberString)

创建 TtsSpan的供应 String

Parameters
phoneNumberString String: A String the entirety of which represents a phone number.
Returns
TtsSpan A TtsSpan for .

createTtsSpannable

Added in API level 23
CharSequence createTtsSpannable (CharSequence phoneNumber)

将提供的 CharSequenceTtsSpan ,注释为包含整个电话号码。

Parameters
phoneNumber CharSequence: A CharSequence the entirety of which represents a phone number.
Returns
CharSequence A CharSequence with appropriate annotations.

extractNetworkPortion

Added in API level 1
String extractNetworkPortion (String phoneNumber)

提取网络地址部分并进行规范化(过滤分隔符)。网络地址部分是DTMF控制数字分隔符(暂停或等待)之前的所有内容,但不包含非可拨号字符。 请注意,结果中允许使用GSM通配符。 拨号前必须解决这个问题。 如果phoneNumber == null,则返回null

Parameters
phoneNumber String
Returns
String

extractPostDialPortion

Added in API level 1
String extractPostDialPortion (String phoneNumber)

提取DTMF控制数字的拨号后序列,暂停和等待。 带分隔符。 此字符串可能为空,但不会为空,除非phoneNumber == null。 如果phoneNumber == null,则返回null

Parameters
phoneNumber String
Returns
String

formatJapaneseNumber

Added in API level 3
void formatJapaneseNumber (Editable text)

此方法在API级别21中已弃用。
改用链接#formatNumber(String phoneNumber,String defaultCountryIso)

使用日语格式规则在原地格式化电话号码。 数字将被格式化为:

03-xxxx-xxxx 090-xxxx-xxxx 0120-xxx-xxx +81-3-xxxx-xxxx +81-90-xxxx-xxxx

Parameters
text Editable: the number to be formatted, will be modified with the formatting

formatNanpNumber

Added in API level 1
void formatNanpNumber (Editable text)

此方法在API级别21中已弃用。
改用链接#formatNumber(String phoneNumber,String defaultCountryIso)

使用NANP格式化规则在原地格式化电话号码。 数字将被格式化为:

xxxxx xxx-xxxx xxx-xxx-xxxx 1-xxx-xxx-xxxx +1-xxx-xxx-xxxx

Parameters
text Editable: the number to be formatted, will be modified with the formatting

formatNumber

Added in API level 21
String formatNumber (String phoneNumber, 
                String phoneNumberE164, 
                String defaultCountryIso)

只有在给定号码没有被格式化的情况下,才能格式化电话号码。

只有可以字符的数字被视为未被格式化。

Parameters
phoneNumber String: the number to be formatted.
phoneNumberE164 String: the E164 format number whose country code is used if the given phoneNumber doesn't have the country code.
defaultCountryIso String: the ISO 3166-1 two letters country code whose convention will be used if the phoneNumberE164 is null or invalid, or if phoneNumber contains IDD.
Returns
String the formatted number if the given number has been formatted, otherwise, return the given number.

formatNumber

Added in API level 1
void formatNumber (Editable text, 
                int defaultFormattingType)

此方法在API级别21中已弃用。
改用链接#formatNumber(String phoneNumber,String defaultCountryIso)

格式化电话号码。 目前支持FORMAT_JAPANFORMAT_NANP作为第二个参数。

Parameters
text Editable: The number to be formatted, will be modified with the formatting
defaultFormattingType int: The default formatting rules to apply if the number does not begin with +[country_code]

formatNumber

Added in API level 1
String formatNumber (String source)

此方法在API级别21中已弃用。
改用链接#formatNumber(String phoneNumber,String defaultCountryIso)

打破给定的数字,并根据数字来自的国家的规则进行格式化。

Parameters
source String: The phone number to format
Returns
String A locally acceptable formatting of the input, or the raw input if formatting rules aren't known for the number

formatNumber

Added in API level 21
String formatNumber (String phoneNumber, 
                String defaultCountryIso)

格式化电话号码。

如果给定号码没有国家代码,电话将被格式化为默认国家的惯例。

Parameters
phoneNumber String: the number to be formatted.
defaultCountryIso String: the ISO 3166-1 two letters country code whose convention will be used if the given number doesn't have the country code.
Returns
String the formatted number, or null if the given number is not valid.

formatNumberToE164

Added in API level 21
String formatNumberToE164 (String phoneNumber, 
                String defaultCountryIso)

将指定的 phoneNumber为E.164表示。

Parameters
phoneNumber String: the phone number to format.
defaultCountryIso String: the ISO 3166-1 two letters country code.
Returns
String the E.164 representation, or null if the given phone number is not valid.

formatNumberToRFC3966

Added in API level 23
String formatNumberToRFC3966 (String phoneNumber, 
                String defaultCountryIso)

将指定的 phoneNumber为RFC3966表示形式。

Parameters
phoneNumber String: the phone number to format.
defaultCountryIso String: the ISO 3166-1 two letters country code.
Returns
String the RFC3966 representation, or null if the given phone number is not valid.

getFormatTypeForLocale

Added in API level 1
int getFormatTypeForLocale (Locale locale)

此方法在API级别21中已弃用。
改用链接#formatNumber(String phoneNumber,String defaultCountryIso)

返回给定语言环境的电话号码格式类型。

Parameters
locale Locale: The locale of interest, usually getDefault()
Returns
int The formatting type for the given locale, or FORMAT_UNKNOWN if the formatting rules are not known for the given locale

getNumberFromIntent

Added in API level 1
String getNumberFromIntent (Intent intent, 
                Context context)

从意图中提取电话号码。

Parameters
intent Intent: the intent to get the number of
context Context: a context to use for database access
Returns
String the phone number that would be called by the intent, or null if the number cannot be found.

getStrippedReversed

Added in API level 1
String getStrippedReversed (String phoneNumber)

返回相反的网络部分。 该字符串旨在进入数据库查找的索引列。 如果phoneNumber == null,则返回null

Parameters
phoneNumber String
Returns
String

is12Key

Added in API level 1
boolean is12Key (char c)

如果c是ISO-LATIN字符,则为true 0-9,*,#

Parameters
c char
Returns
boolean

isDialable

Added in API level 1
boolean isDialable (char c)

如果c是ISO-LATIN字符0-9,*,#,+,WILD,则为true

Parameters
c char
Returns
boolean

isEmergencyNumber

Added in API level 1
boolean isEmergencyNumber (String number)

根据RIL和SIM卡提供的紧急号码列表检查给定号码。

Parameters
number String: the number to look up.
Returns
boolean true if the number is in the list of emergency numbers listed in the RIL / SIM, otherwise return false.

isGlobalPhoneNumber

Added in API level 1
boolean isGlobalPhoneNumber (String phoneNumber)

Parameters
phoneNumber String
Returns
boolean

isISODigit

Added in API level 1
boolean isISODigit (char c)

如果c是ISO-LATIN字符0-9,则为真

Parameters
c char
Returns
boolean

isLocalEmergencyNumber

Added in API level 21
boolean isLocalEmergencyNumber (Context context, 
                String number)

检查给定号码是否为该用户所在国家的紧急号码。

Parameters
context Context: the specific context which the number should be checked against
number String: the number to look up.
Returns
boolean true if the specified number is an emergency number for the country the user is currently in.

isNonSeparator

Added in API level 1
boolean isNonSeparator (char c)

如果c是ISO-LATIN字符0-9,*,#,+,WILD,WAIT,PAUSE,则为真

Parameters
c char
Returns
boolean

isReallyDialable

Added in API level 1
boolean isReallyDialable (char c)

如果c是ISO-LATIN字符,则为真0-9,*,#,+(无WILD)

Parameters
c char
Returns
boolean

isStartsPostDial

Added in API level 1
boolean isStartsPostDial (char c)

这个字符右侧的任何内容都是拨号后字符串的一部分(例如,这是暂停或等待)

Parameters
c char
Returns
boolean

isVoiceMailNumber

Added in API level 21
boolean isVoiceMailNumber (String number)

isVoiceMailNumber:根据RIL和SIM卡提供的语音邮件号码检查给定的号码。 调用者必须具有READ_PHONE_STATE凭证。

Parameters
number String: the number to look up.
Returns
boolean true if the number is in the list of voicemail. False otherwise, including if the caller does not have the permission to read the VM number.

isWellFormedSmsAddress

Added in API level 1
boolean isWellFormedSmsAddress (String address)

如果 address的网络部分,就我们在设备上可以看到的情况而言,适用于SMS目标地址,则返回true。

Parameters
address String
Returns
boolean

networkPortionToCalledPartyBCD

Added in API level 1
byte[] networkPortionToCalledPartyBCD (String s)

注意:调用extractNetworkPortion(),所以不要用于SIM EF [ADN]样式记录如果网络部分为空,则返回null。

Parameters
s String
Returns
byte[]

networkPortionToCalledPartyBCDWithLength

Added in API level 1
byte[] networkPortionToCalledPartyBCDWithLength (String s)

networkPortionToCalledPartyBCD(String)相同,但包含一个字节长度的前缀。

Parameters
s String
Returns
byte[]

normalizeNumber

Added in API level 21
String normalizeNumber (String phoneNumber)

通过删除数字以外的字符来标准化电话号码。 如果给定的号码有键盘字母,则这些字母将首先转换为数字。

Parameters
phoneNumber String: the number to be normalized.
Returns
String the normalized number.

numberToCalledPartyBCD

Added in API level 1
byte[] numberToCalledPartyBCD (String number)

将拨号号码转换为BCD字节数组

Parameters
number String: dialing number string if the dialing number starts with '+', set to international TOA
Returns
byte[] BCD byte array

replaceUnicodeDigits

Added in API level 21
String replaceUnicodeDigits (String number)

用所有的十进制数字替换所有的Unicode(例如阿拉伯,波斯)数字。

Parameters
number String: the number to perform the replacement on.
Returns
String the replaced number.

stringFromStringAndTOA

Added in API level 1
String stringFromStringAndTOA (String s, 
                int TOA)

基本上:确保TOA_International数字前面有一个+如果s == null,则返回null

Parameters
s String
TOA int
Returns
String

stripSeparators

Added in API level 1
String stripSeparators (String phoneNumber)

将分隔符从电话号码字符串中剥离。

Parameters
phoneNumber String: phone number to strip.
Returns
String phone string stripped of separators.

toCallerIDMinMatch

Added in API level 1
String toCallerIDMinMatch (String phoneNumber)

以*颠倒的顺序返回网络部分中最右边的MIN_MATCH(5)字符这可以用于对存储的列进行数据库查找getStrippedReversed()如果phoneNumber为null,则返回null

Parameters
phoneNumber String
Returns
String

toaFromString

Added in API level 1
int toaFromString (String s)

返回给定拨号字符串的TOA基本上,如果有+前缀,则返回TOA_International

Parameters
s String
Returns
int

Hooray!