Commit Graph

76 Commits

Author SHA1 Message Date
Xia Ying
77ea3ee5ec Assisted dialing support of MO SMS
This is special for VZW requirement. Follow the specificaitons
of assisted dialing of MO SMS while traveling on VZW CDMA,
international CDMA or GSM markets.

Change-Id: I34a531b817095f4ce035f3f49a3bf7d6e2e8bc13
2014-09-05 16:52:56 -07:00
Nancy Chen
fe99099ea7 Remove check for voicemail number when parsing URI phone number.
Getting the voicemail number will be done in Telephony instead of in
PhoneNumberUtils which is called by Telecomm.

Bug: 17317190
Change-Id: Ia88a56516b4f57ac62dc5696ae359fd042fec040
2014-09-03 11:05:31 -07:00
giseok.seo
83749f3479 Use proper ril.ecclist when no sim state
Bug: 17139446
Signed-off-by: giseok.seo <giseok.seo@lge.com>
Change-Id: I2f420973b29092b8a6cceb8cf4bd77d0ee8372bd
2014-08-22 20:27:20 +00:00
Wink Saville
fb40dd4d00 Merge kwd to master
Add initial IMS and MSIM support from klp-wireless-dev-mirror

Change-Id: Idb607c0aa32f80fe4fe1539aedea7a221e9e7f04
2014-06-13 13:30:57 +00:00
Yorke Lee
282129fd3f API changes to Telephony per API review
* Make context the first argument for isLocalEmergencyNumber and
isPotentialLocalEmergencyNumber

Bug: 15432083

Change-Id: I88b5ace925e3704bd032dc9694b0c2dd871b9cf9
2014-06-06 09:29:32 -07:00
Yorke Lee
8c2d8c0c27 Revert "API changes to Telephony per API review"
The original change was submitted into lmp-preview-dev and should
not have been auto-merged to master.

This reverts commit 80327f7a31b19213ec48e1ab66e6bdc8e76cb0fe.

Change-Id: I9ff8a868ffa3135583c52ef97b15311107716899
2014-06-05 22:55:49 +00:00
Yorke Lee
d8819baf85 API changes to Telephony per API review
* Make context the first argument for isLocalEmergencyNumber and
isPotentialLocalEmergencyNumber

* Hide DisconnectCause
Bug: 15432083

Change-Id: I88b5ace925e3704bd032dc9694b0c2dd871b9cf9
2014-06-05 13:48:12 -07:00
Andrew Lee
b31c310fcf Handle normalization of a "null" phone number.
Bug: 14900155
Change-Id: I1c4c5c6dec4c4c470b436102c72a7476d3d5237c
2014-05-14 13:00:28 -07:00
Yorke Lee
99d1699516 PhoneNumberUtils API changes
Unhide the following methods:
PhoneNumberFormattingTextWatcher(String countryCode)
formatNumber(String phoneNumber, String defaultCountryIso)
formatNumber(String phoneNumber, String phoneNumberE164, String defaultCountryISO)
formatNumberToE164(String phoneNumber, String defaultCountryIso)
(The previous 3 formatting methods use an instance of PhoneNumberUtil to do the formatting)
isLocalEmergencyNumber(String number, Context context)
isVoicemailNumber(String number)
replaceUnicodeDigits(String number)
normalizeNumber(String phoneNumber)

Deprecate the following methods. These formatting-related methods don't use
PhoneNumberUtil to perform the formatting, and so are considered broken:
formatNumber(String source)
formatNumber(String source, int defaultFormattingType)
getFormatTypeForLocale(Locale locale)
formatNumber(Editable text, int defaultFormattingType)
formatNanpNumber(Editable text)
formatJapaneseNumber(Editable text)

Change-Id: Ibf854092b7db05f7e3e9401cc909c9f1ed4997b0
2013-12-02 13:06:30 -08:00
Jake Hamby
921bf62462 Add PhoneNumberUtils method for CDMA SMS number formatting.
For CDMA networks, convert "+" prefix to "011" if the home network
is using the North American Numbering Plan (NANP). New method is
only used for MO SMS messages.

Bug: 11360679
Change-Id: I534e0322b566de3fb49d7333bfcf62cfbfafb78a
2013-11-04 15:22:55 -08:00
Santos Cordon
04dfb5ec3c Protecting against NPE with null country detector.
bug:10514454
Change-Id: I316c47eddbe4929599866a3f9da9129d0056e3e2
2013-08-27 16:45:37 -07:00
Magnus Karlsson
2227067d99 Fixing crash in PhoneNumberUtils getNumberFromIntent
Handling intent with no data when trying to retrieve number from
intent.

Change-Id: If7c5930e7048aec732fb7a3fbeb3391e1408b071
2013-05-02 09:59:29 +02:00
Wink Saville
22b1e80c24 Use Rlog
Change-Id: I44919126606cd55f7dce7c942027ed0d914f04bd
2012-12-08 09:06:51 -08:00
Daisuke Miyakawa
e69ec2253c Remove STOPSHIP part of the logging in telephony
We still need the log itself to trap the exceptional case.

Bug: 6201805
Change-Id: I62d12f6a1ed41817ee12c0f5c7fc4aa0a967a60f
2012-05-09 11:44:58 -07:00
Daisuke Miyakawa
0205537536 Add debug log for 5914560 and 6383850
This won't be shown in usual condition since in most cases the method
will just use the block just above the logging and return true/false
there. On the other hand this might be useful if the case is truely
exceptional and thus this path is really used.

Bug: 5914560
Bug: 6383850
Change-Id: I2242f93a9b905b5a39d997aa30d9fd6f5bfbdf49
2012-04-25 08:03:22 -07:00
jshin
f80310d3c5 Added API to replace unicoded digits to ascii numbers
Users can enter arabic phone number or click arabic phone number
to send MMS. Works for generic Unicode digits (full-width, etc.).

bug:5615791
Change-Id: Ieec8c5c6c3736ee2b4ac8ddf17f8c41b2001460e

Signed-off-by: Jake Hamby <jhamby@google.com>
2012-04-16 15:06:40 -07:00
Jake Hamby
e333c82da3 Convert Arabic phone numbers to ASCII when sending SMS.
Modify PhoneNumberUtils to automatically convert non-ASCII digits,
such as Arabic-Indic numbers, CJK full-width digits, etc., to ASCII
in normalizeNumber(), extractNetworkPortion(), and stripSeparators().

This enables the SMS application to support sending SMS's to phone
numbers written with Arabic, or other non-ASCII digits. The number will
be converted to ASCII digits and formatted for the user according to the
country formatting rules.

Bug: 5615791
Change-Id: I42039285db5795b1dda22e4251f54af302e27f13

Signed-off-by: Jake Hamby <jhamby@google.com>
2012-04-16 15:06:40 -07:00
Daisuke Miyakawa
510db8feb6 Introduce convertAndStrip()
Phone app will use this for actual phone calling, coping with
IccProvider, etc.

Add unit tests for the method, and stripSeparators() which is missing

Bug: 5546664
Change-Id: I49b996abe7a44f7db4301b62f667189281fc40e9
2012-02-15 11:29:21 -08:00
Shaopeng Jia
26cd243601 Fix the 3-parameter formatNumber to correctly handle IDDs.
Also added more unittests.

Bug: 5726454

Change-Id: I7fd96b47e7b0c34b66a2fe698308342e125ec0f3
2012-02-06 15:46:10 +01:00
Shaopeng Jia
ab971d3c26 Add support for country specific emergency number handling.
Bug: 5247602, 5615428
Change-Id: I1bdfbc987f45e0f2ebbe68adaab215395c83ca35
2011-11-20 14:52:59 +01:00
David Brown
158f116eb7 Fix a crash caused by SIP addresses containing "%40" instead of "@"
CallerInfo.doSecondaryLookupIfNecessary() was assuming that SIP addresses
would always contain the character '@', but that's not always true since
the username/domainname delimiter can actually be "%40" (the URI-escaped
equivalent.)

This would cause the in-call UI to crash if you ever called a SIP address
like "xyz%40example.com".

TESTED:
 - Make an outgoing call to the SIP address "xyz%40example.com"
   ==> The call ultimately fails, but the in-call UI no longer crashes when
       it first comes up.

Bug: 5637074
Change-Id: I62d15a7ccd509924d38b780b92e657b9efa26125
2011-11-17 15:39:21 -08:00
David Brown
277b13e091 SIP addresses containing "911" shouldn't be considered emergency calls
This change updates isEmergencyNumberInternal() to always return false if
you pass in a SIP address, since the concept of "emergency numbers" is
only meaningful for calls placed over the cell network.

Previously we *did* try to compare SIP addresses against the list of known
emergency numbers, which caused bad behavior with SIP addresses that even
contained "911"/"112"/etc as a substring (since we were filtering out
non-dialable characters before doing the comparison!)

TESTED:

  - Before this change, calls to "abc911def@example.com" or
    "911abcdef@example.com" were incorrectly detected as emergency
    numbers, and fail.

  - After this change, SIP addresses like "abc911def@example.com" and
    "911abcdef@example.com" work fine.

  - Also, confirmed that this change doesn't break the restriction that
    3rd party apps shouldn't be able to make emergency calls.

    Specifically, I fired off ACTION_CALL intents (using the CallDialTest
    activity) for a bunch of numbers *similar* to emergency numbers, and
    confirmed that none of them actually resulted in an emergency call
    being placed.
    The specific ACTION_CALL intents I tested were:
      "911"         ==> Didn't place the call; brought up dialer instead
      "tel:911"     ==> Didn't place the call; brought up dialer instead
      "911@foo"     ==> Tried to start a SIP call (which failed)
      "911%40foo"     ==> Tried to start a SIP call (which failed)
      "tel:911@foo" ==> Tried to start a SIP call (which failed)
      "tel:911%40foo" ==> Tried to start a SIP call (which failed)
      "911@example.com" ==> Tried to start a SIP call (which failed)
      "sip:911"     ==> Didn't place the call; brought up dialer instead
      "sip:911@foo" ==> Tried to start a SIP call (which failed)
      "sip:911%40foo" ==> Tried to start a SIP call (which failed)

Bug: 5515452
Change-Id: I6f9f8690b08564c53c7a76f480654477b475d94d
2011-11-16 21:14:11 -08:00
David Brown
1a811695f9 Add "potential" variants for PhoneNumberUtils.isEmergencyNumber()
The phone app needs a way to distinguish between (a) numbers that are
definitely emergency numbers, and (b) numbers that *might* result in an
emergency call being dialed, but aren't specifically emergency numbers
themselves.

(The phone app needs this distinction in order to enforce the restriction
that 3rd party apps should not be allowed to make emergency calls using
the ACTION_CALL intent, while still making sure that the in-call UI only
displays the "emergency call" state for numbers that are *definitely*
emergency numbers.  See bug 5493790 for the full details;)

So this change adds a full set of "isPotentialEmergencyNumber()" methods
to go along with the "isEmergencyNumber()" methods we've had all along.
The "potential" variants behave identically to the original methods,
*except* that they ultimately use number.startsWith() rather than
number.equals() when comparing against the list of emergency numbers.

TESTED:

- Unit test 'PhoneNumberUtilsTest#testIsEmergencyNumber' passes.
  (The PhoneNumberUtilsTest class doesn't pass in its entirety, but it was
  broken before this change also.)

- Also see the commit description of change
  Ib949fea3c0ce6b341a90e617a03ba3f22c69018b for the exact tests I ran
  against the phone app.

This change should be submitted along with
  Change-Id: Ib949fea3c0ce6b341a90e617a03ba3f22c69018b
in apps/Phone (but this change must go in first to avoid breaking the
build.)

Bug: 5493790
Change-Id: Ic528cfcc555734cdaf4ca8a18a50199771ba49b1
2011-11-08 15:51:50 -08:00
Flavio Lerda
2613e0064b Do not format numbers starting with hash or star.
If the user asks to format a number that starts with either a hash or a
star symbol, do not further format the phone number since we are not
actually able to parse such a number correctly and current this results
in the star or hash being dropped.

Bug: 5362177
Change-Id: Iff8d317c087d0ca07f2b107459ce8c47882ef367
2011-09-27 13:53:23 +01:00
Shaopeng Jia
c6027ee464 Temp fix to the problem of incorrectly classifying Brazilian local
numbers as emergency numbers.

Bug: 5247602
Change-Id: Ib1626ef25ced2e149c526601bfac72de39e3f1b9
2011-09-22 23:22:56 +02:00
Shaopeng Jia
6b7c3f8a1c Update code to use location aware isEmergencyNumber.
Bug: 5247602
Change-Id: Ieeda4a17464795b3591db754bc991759609f88c2
2011-09-16 20:28:39 +02:00
Shaopeng Jia
9683f990a2 Adding isEmergencyNumber which also takes in a defaultCountryIso.
Also update CallerInfo and CallerInfoAsyncQuery to use the new method.

Bug: 5247602
Change-Id: I2bbb0806ad2787d53b19bc1e9bdfb0ee8be26980
2011-09-13 16:10:08 +02:00
inshik
4eb45cc98b Add utility functions for pause and tonewait pause.
Add a function that converts a string with RFC3601 defintion
of pause and wait into android representation.

Change-Id: Id8a17c3a166422d62247acb227506549990ace12
2011-08-15 17:05:25 -07:00
Shaopeng Jia
e713576292 Renaming com.google.i18n.phonenumbers to com.android.i18n.phonenumbers
to avoid name collision.

Bug: 5157607
Change-Id: Ic397f371e381a71f17b0b70b955e89d08f7a9867
2011-08-12 13:25:41 +02:00
Nick Kralevich
1234ce117a Modify emergency number detection
It's possible for an application to dial an emergency
number by appending extra digits to the phone number.

For example, one could dial "9111" instead of "911",
and a strict .equals wouldn't detect this as an emergency
number.

Replace .equals() with .startsWith()

Change-Id: I87f34fc2b9bbee2c4fa6be511bcc3b955559e0a9
2010-12-07 11:27:20 -08:00
David Brown
a23935ab33 am bd6d5098: am d07833f5: Don\'t manually create CallerInfo objects from SipPhone
Merge commit 'bd6d5098a7995429713ae0ae43b3f666f7b9aed3'

* commit 'bd6d5098a7995429713ae0ae43b3f666f7b9aed3':
  Don't manually create CallerInfo objects from SipPhone
2010-10-11 17:48:47 -07:00
David Brown
bd6d5098a7 am d07833f5: Don\'t manually create CallerInfo objects from SipPhone
Merge commit 'd07833f54b6e8e361b666ae16efa15fdf60159de' into gingerbread-plus-aosp

* commit 'd07833f54b6e8e361b666ae16efa15fdf60159de':
  Don't manually create CallerInfo objects from SipPhone
2010-10-10 16:44:01 -07:00
David Brown
d07833f54b Don't manually create CallerInfo objects from SipPhone
Currently the SipPhone class manually creates a CallerInfo object, and
populates it with very basic info from the SIP address, when making an
outgoing call.

But this is no longer needed, now that we do caller-id lookup properly for
SIP addresses (based on real data from the contacts database -- see
bug 3004127 and change https://android-git.corp.google.com/g/70555).
And in fact the presence of this initial CallerInfo object actually
*disabled* contacts lookup for outgoing calls (bug 3072731).

This change removes all that CallerInfo-related stuff from SipPhone.

(Thus SipPhone is now consistent with the other phone objects, like
GSMPhone and CDMAPhone, in that it doesn't muck with CallerInfo data at
all, but instead lets the phone app do it.)

Also, update isUriNumber() to handle "%40" in case the passed-in string is
URI-escaped.  (Nobody depends on that now, but it may be needed in the
future, and it's certainly safe to say that "%40" will never be found in a
legal PSTN number.)

TESTED:
  - Outgoing SIP call:
    - In-call UI shows correct contact info
    - After the call, Call Log shows correct contact info

  - Incoming SIP call:
    - In-call UI shows correct contact info
    - After the call, Call Log shows correct contact info

  - PSTN calls:
    - correct contact info everywhere

Bug: 3072731

Change-Id: I51434e4e5ad66d2e8ff51fc220001fb74485f0f5
2010-10-10 16:40:21 -07:00
Chung-yih Wang
7e0598d066 am 4f24aed2: am 66907078: Merge "Fix the dialing from contact for internet address." into gingerbread
Merge commit '4f24aed2a13d9ba89e2402894353176e19571e6e'

* commit '4f24aed2a13d9ba89e2402894353176e19571e6e':
  Fix the dialing from contact for internet address.
2010-09-08 10:38:35 -07:00
Chung-yih Wang
4f24aed2a1 am 66907078: Merge "Fix the dialing from contact for internet address." into gingerbread
Merge commit '669070787cc10377c2e5c3fa187babc728d96245' into gingerbread-plus-aosp

* commit '669070787cc10377c2e5c3fa187babc728d96245':
  Fix the dialing from contact for internet address.
2010-09-08 10:32:13 -07:00
Chung-yih Wang
6f0f870f16 Fix the dialing from contact for internet address.
the bug is http://b/issue?id=2982290

+Log outbound proxy address if exists for debugging.
2010-09-08 18:26:05 +08:00
Bai Tao
2a4e96067d Added new method to format the phone number when neccessary.
Change-Id: I90fb38c1d36dc1ccf7eaa3b4cc34cd29f5151493
2010-08-30 10:52:15 +08:00
Dmitri Plotnikov
3e4b7c332f Keep the '+' when normalizing the phone number
Change-Id: I24731735ed18dbc92a643a0d99d35a1b58be40c8
2010-08-13 11:09:29 -07:00
John Wang
c178b95c1f am 2835391c: am 686a9505: Merge "Update switch call and accept call." into gingerbread
Merge commit '2835391c1709a2b655940200dab0fc74ef08512d'

* commit '2835391c1709a2b655940200dab0fc74ef08512d':
  Update switch call and accept call.
2010-08-12 17:35:53 -07:00
John Wang
2835391c17 am 686a9505: Merge "Update switch call and accept call." into gingerbread
Merge commit '686a95055896c221c62fe7f4c3dda137809df91e' into gingerbread-plus-aosp

* commit '686a95055896c221c62fe7f4c3dda137809df91e':
  Update switch call and accept call.
2010-08-12 17:33:19 -07:00
John Wang
c159c84699 Update switch call and accept call.
Change-Id: Ifdd1af77e3eca08f6c931605ecfb275835b78709
2010-08-12 14:52:39 -07:00
Wink Saville
ae2036a8f9 am 7472c219: am 1540a7ea: am c69f5be0: Add PhoneSubInfo.getCompleteVoiceMailNumber.
Merge commit '7472c219a13e3f9f74d9a4adf1478e9c4f9248a2'

* commit '7472c219a13e3f9f74d9a4adf1478e9c4f9248a2':
  Add PhoneSubInfo.getCompleteVoiceMailNumber.
2010-08-02 12:09:03 -07:00
Wink Saville
7472c219a1 am 1540a7ea: am c69f5be0: Add PhoneSubInfo.getCompleteVoiceMailNumber.
Merge commit '1540a7ea1afcb772b5fcf90f635153f6489eb8ed' into gingerbread-plus-aosp

* commit '1540a7ea1afcb772b5fcf90f635153f6489eb8ed':
  Add PhoneSubInfo.getCompleteVoiceMailNumber.
2010-08-02 12:06:34 -07:00
Wink Saville
1540a7ea1a am c69f5be0: Add PhoneSubInfo.getCompleteVoiceMailNumber.
Merge commit 'c69f5be0ed3529564e5db6874de52775c2c99007' into gingerbread

* commit 'c69f5be0ed3529564e5db6874de52775c2c99007':
  Add PhoneSubInfo.getCompleteVoiceMailNumber.
2010-08-02 12:02:42 -07:00
Wink Saville
c69f5be0ed Add PhoneSubInfo.getCompleteVoiceMailNumber.
PhoneSubInfo.getVoiceMailNumber now returns only the network
portion of the voicemail number. Use the new method
PhoneSubInfo.getCompleteVoiceMailNumber to get the netowrk
portion and the post dial portion.

Bug: 2881483
Change-Id: I7637d4fa0ffa046b4eebc4d599719bb668c940b5
2010-08-02 11:07:51 -07:00
Bai Tao
fae6ec9e96 Added country based formatNumber methods
a. Format the number to E164.
b. Format the number based on country convention.
c. Normailize the number.

Change-Id: I39d59b99aa1a5136371dd20c74d9d9c8ec855369
2010-07-29 06:54:25 +08:00
The Android Open Source Project
1b1f0bc1f8 am 4248d588: merge from open-source master
Merge commit '4248d5887bf9d7d65b649a9ca0c7ba623135eed5'

* commit '4248d5887bf9d7d65b649a9ca0c7ba623135eed5':
  Makes PhoneNumberUtils support international numbers after a CLIR command.
2010-07-16 13:46:08 -07:00
Babis Triantafyllou
adff0ad3cd Makes PhoneNumberUtils support international numbers after a CLIR command.
Makes PhoneNumberUtils.java support numbers in international
format (starting with ‘+’ character) after a CLIR command.

Previously a plus character would always be removed unless it
occupied the first position of the number string. In this case,
when the number is preceded by #31# (CLIR), the plus character
will be removed as well.

This is an error, prohibiting a type approval of the phone.

This change will detect the plus character after the CLIR command
and will insert it at the right position.

Change-Id: Ib220aee7b3eda30cde960db8c7470523dc5fd313
2010-07-14 13:59:01 +02:00
The Android Open Source Project
d994dcbd81 am cefdedc3: merge from froyo-plus-aosp 2010-06-07 16:45:04 -07:00
The Android Open Source Project
7ad843d66d merge from open-source master
Change-Id: I56de40bad4be52a06300bfc310e16d27b2fb14df
2010-06-07 16:32:53 -07:00