Commit Graph

62 Commits

Author SHA1 Message Date
Wink Saville
a639b311e9 Create telephony-common and mms-common
These have been created to reduce the size and complexity
of frameworks/base.

mms-common was created by moving all of
  frameworks/base/core/java/com/google/android/mms
to:
   frameworks/opt/mms

telephony-common was created by moving some of
   frameworks/base/telephony
to:
   frameworks/opt/telephony

Change-Id: If6cb3c6ff952767fc10210f923dc0e4b343cd4ad
2012-07-11 16:02:08 -07:00
John Wang
2119ade6d7 Merge "Enhance Cell Location Api." 2012-04-05 16:51:32 -07:00
Jeff Sharkey
8fc27e8b87 Support metered Wi-Fi NetworkPolicy.
Add networkId field to NetworkIdentity to identify Wi-Fi networks by
SSID.  Add support for policies without usage cycles.

Only apply mobile policies when SIM state is ready, which is cleaner
than just checking for airplane mode.  Also avoids creating no-op
default policies when subscriberId is null.

Bug: 3001465, 3291052
Change-Id: I1f8aaa49a5db306df022c402ea7f3f5d4bc0cfc7
2012-04-05 16:02:25 -07:00
John Wang
963db55d59 Enhance Cell Location Api.
To boost accurary and enhance capability of cell location api,
two new APIs, TelephonyManager.getAllCellInfo() and
TelephonyManager.listen(LISTEN_CELL_INFO), are added. Two new
Class, CellInfo and CellIdentity, are created.

This API change returns all information of one cell locaiton
at the same time. It also provides additional LTE and timestamp information.

Change-Id: I4d0f813107e625ec4ac88c8d980ffd171aa5fc30
2012-04-05 11:30:37 -07:00
Robert Greenwalt
8f4f814beb Fix TelephonyManager to grab the best context
It may not be called from an app so the app context may not exist.
Check and grab the best one.
Also remove the log that nobody paid attention to if the constructor
is called again from the same process.  One context seems to be as
useful as another.

bug:5572369
bug:5622514
Change-Id: Iad23b30c7c8fe5b8d1f81a1e060eaf0cd0e3019d
2011-11-16 11:36:08 -08:00
duckyoung.chai
80c32a37b6 [toro] Add telephonyManager API ( getMsisdnNumber() ) for IMS Module.
IMS Module need the MSISDN value for IMS registration.(VZW Requirement)

Change-Id: I8713b6c55788276246ee1c2f91eaf2d3ab8cc813
Signed-off-by: duckyoung.chai <duckyoung.chai@samsung.com>
2011-09-15 11:10:12 -07:00
Jeff Sharkey
52d0f9882f More robust check around TelephonyManager init.
Only complain when Context radically changed.

Bug: 4676714
Change-Id: Ia183f9ba51056c857e634d901c618a73e45d2d05
2011-08-31 11:15:34 -07:00
Jake Hamby
463f221145 Add ISIM application support for LTE devices.
- Add methods to TelephonyManager to provide access to IMS records on
  the ISIM application of the UICC, as well as access to the ISIM
  AKA authentication algorithm.

- Add support for the new IMS methods to CDMALTEPhone, using the helper class
  ImsUiccRecords to load the IMS records from the ISIM. The same approach
  can be used to implement IMS support for UMTS/LTE devices.

- There is a new RIL request, RIL_REQUEST_ISIM_AUTHENTICATION, which is
  used to perform IMS AKA authentication using the algorithm on the ISIM
  application of the UICC. The challenge nonce and response are both encoded
  as Base64 strings.

Change-Id: I73367c7d9bc573d0d883d68adf09891de1319129
2011-08-26 12:33:11 -07:00
Dianne Hackborn
de4c26fa1a Fix a couple static leaks.
Change-Id: If2564dc822fbcb3bb3baf270ad2b3c29c78bf421
2011-07-17 13:49:27 -07:00
John Wang
f9ab96f9d3 Revert "Do not merge. Return null id for Non-phone device."
This reverts commit cea03df201

Change-Id: I68470e729d9304f1c27473a71334e1b0de99ff01
2011-06-29 15:36:35 -07:00
John Wang
3fa5f37346 am 229d3a0c: am fc94d45f: Merge "Make getDeviceId return null for Non-phone device." into honeycomb-LTE
* commit '229d3a0cbce70db82003705abf6844deec136d20':
  Make getDeviceId return null for Non-phone device.
2011-06-09 11:25:50 -07:00
Robert Greenwalt
8a02401129 resolved conflicts for merge of e139167c to master
Change-Id: Ic4d8aae7dd457457d9cc8ba081b273e425729f86
2011-06-08 10:01:06 -07:00
Jeff Sharkey
d2a458750e Map network identity using ConnectivityService.
Instead of deriving network identity based on raw subsystem broadcasts,
listen for updates from ConnectivityService.  Added atomic view of all
active NetworkState, and build map from "iface" to NetworkIdentity set
for stats tracking.

To avoid exposing internal complexity, INetworkStatsService calls use
general templates.  Added TelephonyManager mapping to classify network
types using broad labels like "3G" or "4G", used to drive templates.

Cleaned up Objects and Preconditions.

Change-Id: I1d4c1403f0503bc3635a59bb378841ba42239a91
2011-06-07 23:09:25 -07:00
John Wang
fc94d45fc2 Merge "Make getDeviceId return null for Non-phone device." into honeycomb-LTE 2011-06-07 15:49:34 -07:00
John Wang
e19736f052 Make getDeviceId return null for Non-phone device.
For non-phone device, i.e. tablet doesn't have voice capability,

getDeviceId returns null while getPhoneType returns PHONE_TYPE_NONE.

This behavior is suggested by developer scheme

http://android-developers.blogspot.com/2011/03/identifying-app-installations.html

and enforced by CTS testGetDeviceId.

bug:4464907
Change-Id: Iaa3832b7323a50deccd438cb884c8e776a7a9640
2011-06-07 15:37:09 -07:00
Robert Greenwalt
5df69fad6e resolved conflicts for merge of 8de47a2f to honeycomb-LTE
Change-Id: I8193235a4c7e574635e17b2eb05bb5420a3c6749
2011-06-07 12:45:41 -07:00
Robert Greenwalt
97ab2d4f86 Reveal some network constants.
Since we've already decided to inc the sdk version we should try to get these in too.

bug:4500218
Change-Id: I6dcb401bf30f1b06f02be0a93681a190d7ee5775
2011-05-31 12:06:08 -07:00
Wink Saville
5e9270bfd5 Add getLteOnCdamMode.
Change-Id: Iebf027f956d543d7a69cad64aaba47900937a785
2011-05-12 13:37:32 -07:00
Robert Greenwalt
5e9bf7a908 Merge "Add new network type for HSPA+." 2011-02-02 16:42:10 -08:00
Robert Greenwalt
9e4ba121dc Add new network type for HSPA+.
Change-Id: Ia949a02e5cb66bc9f7d4d5e7e771e592231c729b
2011-02-02 15:41:44 -08:00
Robert Greenwalt
6e2884817d Use a cached context when possible.
It's always possible after services have been registered, so it's just early
in the process that's a problem.  Lie correctly in those early cases and fix this
in MR1.

bug:3415254
Change-Id: I95811d1efd676fde01f66b742393d3aa4623482f
2011-02-02 10:57:35 -08:00
Wink Saville
9d72be3318 Add TelephonyManager.getCurrentPhoneType
The new method getCurrentPhoneType has the old behavior of getPhoneType
and does not check for voice capable. This allows code to assume
the old behavior.

bug: 3198435
Change-Id: I0542838ceca2f757cceb6cd7f795e95fe886523e
2011-02-01 19:22:15 -08:00
Wink Saville
9b9e6778dd Have getPhoneType return PHONE_TYPE_NONE for non-voice capable devices.
bug: 3198435
Change-Id: I1a19863c106a9394dbc941f396400e31dca95b92
2011-01-31 17:33:05 -08:00
Jean-Baptiste Queru
7ea919c44b Merge 6b739dc7 from gingerbread
Change-Id: If94889da67977aff7daa1e201c10cd51b7e2fff8
2011-01-29 12:59:20 -08:00
Robert Greenwalt
e12aec941d Add some network types that OEM's are asking for.
Adding them hidden so that if OEM's are rolling their own at least they can
use the same values.  Will mark them unhidden in a future sdk release.

bug:3395729
Change-Id: I90eabe036a96e1aa7c8cac49ca51efd9b1776a0c
2011-01-28 14:48:37 -08:00
John Wang
c049f9ad5b Block SMS service for non-sms-capable device.
If device doesn't support sms service, SMSDispatcher
will ignore incoming SMS in dispatching messge and return
ERROR_NO_SERVICE in sending sms messgae.

bug: 3250029
bug: 3038102
Change-Id: Ic72a9192aa128c43cf31da04907620bc680656c6
2010-12-10 15:29:03 -08:00
John Wang
4d76f36422 Add iDEN to getNetworkTypeName.
For bug 2667143.

Integrated Digital Enhanced Network (iDEN) is a mobile telecommunications

technology which provides its users the benefits of a trunked radio and

a cellular telephone.

Change-Id: I4a1f5dbdd22a2c4ce5252688053ec4a47805d6b9
2010-12-06 10:25:52 -08:00
Robert Greenwalt
8e7e0a9fd5 Fix data state change callbacks
Initial state should be unknown or we miss the first connected change.
Don't send a disconnected msg when changing network types.
Filter out redundent disconnects.
Add some logging.

bug:3060742
Change-Id: Idc797c1276b7417337a91ed60b12b1bf392d57c0
2010-11-09 16:28:51 -08:00
Robert Greenwalt
962a990a45 Add some network/phone type constants.
Support for LTE (and SIP-based voice) and the stepping-stone eHPRD.

bug:3125398
Change-Id: Ied3d96fa09d9c758a82a2fd1817f55db711d1a4f
2010-11-03 17:02:37 -07:00
Wink Saville
b422ca809c am d9034879: am b2cc86da: am 3158cf68: Change CDMAPhone.getDeviceId to return MEID or ESN.
Merge commit 'd90348796829f3d3a443e73ea3b3f2f9e79071c2'

* commit 'd90348796829f3d3a443e73ea3b3f2f9e79071c2':
  Change CDMAPhone.getDeviceId to return MEID or ESN.
2010-08-24 10:16:42 -07:00
Wink Saville
b2cc86da29 am 3158cf68: Change CDMAPhone.getDeviceId to return MEID or ESN.
Merge commit '3158cf689f4994ec53c3b727f9b6ad7751a5551b' into gingerbread

* commit '3158cf689f4994ec53c3b727f9b6ad7751a5551b':
  Change CDMAPhone.getDeviceId to return MEID or ESN.
2010-08-20 16:34:16 -07:00
Wink Saville
3158cf689f Change CDMAPhone.getDeviceId to return MEID or ESN.
This allows devices with only ESN's to work.

bug: 2938223
Change-Id: I33939151c59f598b939e73d98f1178669d6ceb75
2010-08-20 16:24:02 -07:00
David Brown
ae3efa53a9 Move the "voice_capable" resource into the framework.
There's currently a config.xml param in the phone app saying whether the
current device is "voice capable", which is used to determine (among other
things) whether the OTASP call should run in interactive mode.

But both Contacts and Settings are about to need this flag too, so it
really belongs in the framework instead.  As of this change it's now
"com.android.internal.R.bool.voice_capable".

Also add a corresponding TelephonyManager call so that unbundled and 3rd
party apps can access it too.

Change-Id: Ie9a8803295bf97eb32154291aac8fce1e21c7b25
2010-08-18 14:12:30 -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
The Android Open Source Project
4adacd23d4 merge from open-source master
Change-Id: If6730b50627b2231bd345e594d8d30a37557849e
2010-05-12 14:53:25 -07:00
Naveen Kalla
0a5174a6e9 Add support for EVDO Rev B
Change-Id: I8588e8b342c51f4b79bced8ef8fe60d57f07aefa
2010-05-11 10:12:07 -07:00
Jake Hamby
633dfb6da6 Fix some typos and logging of calls to CDMA methods.
Fixed some comment typos and cleaned up logging of unexpected calls to
CDMA-specific methods on a non-CDMA device.

Change-Id: Ia6e5fba765122cbf3186fd9fecca7a3931a76dcc
2010-03-22 14:41:43 -07:00
jsh
8214deb542 Add definitions for WiMAX and iDen network types.
b/2509185

Change-Id: Icf07ce857874e200712218713edbdbb47e646297
2010-03-15 15:31:08 -07:00
John Wang
41a46718b3 Make getCellLocation return null if not available.
For bug 2422284.

Check the cell location and return null if the location is not available.

Change-Id: Ie9a331b906a8253c9a9596365af8705dc03823ce
2010-03-11 13:53:46 -08:00
John Wang
99510681e9 Unhide constant DATA_ACTIVITY_DORMANT. 2009-10-01 10:00:54 -07:00
John Wang
fb2b04b7bc Unhide NETWORK_TYPE_XXX.
Make NETWORK_TYPE_HSDPA etc. unhide in TelephonyManager.
2009-09-25 14:50:26 -07:00
johnwang
9c118c80fd Update CID in NeighboringCellInfo
NeighboringCellInfo works in GSM and UMTS network.

In GSM network, the locaiton value is the combination of LAC and CID.

In UMTS network, the locaiton value is PSC code.

NeighboringCellInfo should access and store those two values seperately.

It involves the change of Public API.

1. Add new API getRadioType(), getLac(), and getPsc() to get location info in GSM and UMTS.

2. Deprecate setCid() and NeighboringCellInfo(int cid) because cid is set by interpreting network type.
2009-09-25 12:17:46 -07:00
Tammo Spalink
3cc97f8dbc Add Phone.getPhoneType() operation.
This routine returns integer values defined in the Phone interface,
derived from RILConstants values.  Direct references to the
RILConstants are replaced by references to these new ones for
consistency.

API CHANGE:
  unhide TelephonyManager.PHONE_TYPE_CDMA

Addresses issue:
http://buganizer/issue?id=1905415

Change-Id: Icfec6d457231b098c031677a66770b5e57be4a44
2009-09-24 13:19:08 +08:00
johnwang
5f1f26a7ff Fix NPE in TelephonyManager.
It is for bug 1971628 but affects almost every API function in TelephonyManager. When phone is not ready (for example, after crash and restart) the getSubscriberInfo and getITelephony returns null and causes NPE.
2009-09-11 14:49:47 -07:00
Wink Saville
e40f66ffc1 Allow hasIccCard to be useable by any processes.
This is accomplished by adding hasIccCard to ITelephony and do
the implemenation in PhoneInterfaceManager.java. Then change
TelephonyManager to use getITelephony().hasIccCard().

Change-Id: I26970fdf92a058502b8156a4f52c14e213217fc6
2009-09-03 13:34:04 -07:00
Wink Saville
65d62c774e Add hasIccCard to IccCard and TelephonyManager.
Expose the presence/absence of IccCards in the system.
This is needed to fix bug 2033811 which needs to show
some SIM menus in the Mms app and Contact apps only if
there is a SIM and on CDMA there is no sims yet.

The current implementation assumes CDMA never has an
IccCard this is true at the moment but needs to change.

Change-Id: I4167368e364623ea68e9b2778556e6d730b1e715
2009-09-01 15:52:42 -07:00
Li Zhe
ebe66345e7 Framework changes to support HSDPA/HSUPA/HSPA
HSDPA: High-Speed Downlink Packet Access
HSUPA: High-Speend Uplink Packet Access
HSPA:  High-Speed Packet Access

Add support for HSDPA/HSUPA/HSPA:
 1) extend TelephonyManager.NETWORK_TYPE for HSDPA/HSUPA/HSPA
 2) extend ServiceState.RADIO_TECHNOLOGY for HSDPA/HSUPA/HSPA
 3) set radioTechnology into ServiceState in GsmServiceStateTracker
 4) change the implementation of TelephonyManager.getNetworkType to
    solve the competition timing issue between the time of setting
    system property and the time of receiving notification through
    PhoneStateListener
    4.1) add a getNetworkType interface in ITelephony.aidl
 5) add icons resources for HSDPA/HSUPA/HSPA
 6) make use of HSDPA/HSUPA/HSPA icons in StatusBarPolicy
2009-08-21 13:41:05 -07:00
Wink Saville
b307c8945d Fix bug 1994955 where PHONE_TYPE_CDMA was 0 and it should be 2 and added RILConstants.NO_PHONE.
This bug originally reported that PHONE_TYPE_CDMA needed to be 2 because
it was public. But as far as I can tell it has never been public and it
is still marked @hide so is not public now. There is a bug in that
PHONE_TYPE_NONE and PHONE_TYPE_CDMA were both 0. But this doesn't
appear to have been a problem because PHONE_TYPE_NONE doesn't looked to be
used anywhere except in TelephonyManagerTest.
2009-07-29 10:25:09 -07:00
jsh
aa4593706e Update javadoc for TelephonyManager.getNetwork* for CDMA.
These are unreliable for CDMA, so note it in the javadoc. Also update
for the corresponding TelephonyProperties.
2009-07-13 12:54:45 -07:00