History log of /frameworks/opt/telephony/src/java/com/android/internal/telephony/PhoneFactory.java
Revision Date Author Comments (<<< Hide modified files) (Show modified files >>>)
2a63f28dd26512f45b706ddab00c18c4f91bc7e4 16-Mar-2018 Malcolm Chen <refuhoo@google.com> Remove ACTION_INTERNAL_SIM_STATE_CHANGED.

Since ACTION_INTERNAL_SIM_STATE_CHANGED is only listened by
SubscriptionInfoUpdater, broadcast is unnecessary and costly. We
remove it and use a direct function call.

Bug: 72463137
Test: regression test
Change-Id: I17e7bb7445ac9d287c0ee70869adf0d011005b14
Merged-In: I17e7bb7445ac9d287c0ee70869adf0d011005b14
(cherry picked from commit 1ffbb3c56675ff4ff9a26bccbbed0519a5c12573)
/frameworks/opt/telephony/src/java/com/android/internal/telephony/PhoneFactory.java
3f7854f913eccbaa7a0a2979546ece735dae121e 20-Mar-2018 Malcolm Chen <refuhoo@google.com> Add null check on UiccProfile before dumping.

Bug: 75282275
Test: build
Change-Id: Ib58d27d1d19d647f7a2df4a4931b211da0c3f5b2
Merged-In: Ib58d27d1d19d647f7a2df4a4931b211da0c3f5b2
(cherry picked from commit a7d66eea355587be85b26e3499f256688a084c7e)
/frameworks/opt/telephony/src/java/com/android/internal/telephony/PhoneFactory.java
17f2f414f633530ae3f9bd2f10a3b59fc1690f8d 15-Mar-2018 Pengquan Meng <mpq@google.com> Merge "MSIM: Default NW mode property for each slot" into pi-dev
bc571d25924c112392699065547d1131faef2652 07-Jun-2016 Sandeep Gutta <sangutta@codeaurora.org> MSIM: Default NW mode property for each slot

Pick slot specific default Network mode value while
setting Network Mode for new subscription info record.

Bug: 28384694
Bug: 36850854
Test: manual - Checked different default NW mode can be set
for each slot.
Test: auto - Confirmed that run SubscriptionInfoUpdaterTest
and PhoneFactoryTest it has no problem.
Merged-Id: I72b11522cb51a425e28ddc407014387a20cb2cd7
Change-Id: I72b11522cb51a425e28ddc407014387a20cb2cd7
/frameworks/opt/telephony/src/java/com/android/internal/telephony/PhoneFactory.java
5f6a521925b16e8c5f6dfdfa7dad928f65dfc362 23-Feb-2018 Brad Ebinger <breadley@google.com> Framework Integration of dynamic query for ImsService

1) Adds support for dynamic query of ImsService features.
When the ImsResolver is notified of a change to the ImsService
package (via PackageManager or CarrierConfig), we perform
an async query to the affected ImsService. The updated
feature configuration is then saved to the ImsServiceInfo
cache and features are recalculated. This will cause the
Service to create/remove features according to this
config. We currently keep the ability for "compat"
ImsServices and device default ImsServices to communicate
their feature configurations via manifest query, but
all carrier ImsServices will need to do a dynamic query
to relay feature configuration information.

2) Fixes issue where we were sometimes not unbinding
to ImsServices, even if there were no features assigned.

3) We now drop down to the device default ImsService
when the SIM card is removed.

Test: Telephony Unit Tests, Telephony Test ImsService
Bug: 72642524

Merged-In: If65f25eb6b0696b38bd55b96c1d5a64d2a112a6b
Change-Id: Ieafa99c1454606016c71e4d183adf445f4189dc2
/frameworks/opt/telephony/src/java/com/android/internal/telephony/PhoneFactory.java
630d7567b4a78320f52662ad45f0d0726f676474 03-Feb-2018 Qingxi Li <qingxi@google.com> Start OTA in EuiccCardController

We will try to start OTA when we receive the broadcast of SIM slot
status change, since at this time, radio is on and the slot info. is
ready. We will only try to start OTA if we current is on eSIM slot.

Bug: 72880982
Test: Included
Change-Id: Id2fec7dab328f5ccd8b0f0ee7ff83aa24bc1dda3
/frameworks/opt/telephony/src/java/com/android/internal/telephony/PhoneFactory.java
9ed21a8776f94091ffda14778a9fe52674814a22 26-Jan-2018 Brad Ebinger <breadley@google.com> Adds compat layer for older devices when IMS binding

Modifies the ImsResolver to support binding to older
IMS implementations that use the ServiceManager
to expose IMS implementation.

Bug: 63987047
Test: Telephony Unit Tests
Change-Id: I4d7ccbad9f4aed310af92f4832e51ec6bbeec27d
/frameworks/opt/telephony/src/java/com/android/internal/telephony/PhoneFactory.java
b8d6fafa17b6be739a61e6fa90cbb186875d0bb0 24-Jan-2018 Amit Mahajan <amitmahajan@google.com> Disable IccCardProxy and enable new code in UiccProfile.

Test: Basic telephony sanity with TMo, VZW, Fi SIMs; telephony unit tests
Bug: 64131518
Change-Id: I03e523bfebf731ad35018583c8ace12fa48ca397
/frameworks/opt/telephony/src/java/com/android/internal/telephony/PhoneFactory.java
f57225cc89b6dbc5d29126ef5b2d2f6227888509 22-Dec-2017 Holly Jiuyu Sun <jiuyu@google.com> Add EuiccCardManager and EuiccCardController.

EuiccCardManager is in the same path with EuiccManager.
EuiccCardController is in the same path with EuiccController.
Use getAllProfiles() as an example interface.
The implementation of EuiccCard and its content will be added in a
follow up CL.

Bug: 38206971
Test: test on phone
Change-Id: I9f09da5305cb2d3c9444692e96c308f291b6ae26
Merged-In: I9f09da5305cb2d3c9444692e96c308f291b6ae26
/frameworks/opt/telephony/src/java/com/android/internal/telephony/PhoneFactory.java
d1d2aa157fa5047507393405b76dfb49fc9ffc0f 08-Jul-2017 Amit Mahajan <amitmahajan@google.com> Add class IntentBroadcaster to rebroadcast intents on USER_UNLOCKED.

This is to have a single point for broadcasting intents that need
to be rebroadcast, and helps rebroadcast them in the right order.

Test: Verified manually through logcat
Bug: 37730013
Change-Id: I5285dc1b96b3f6429e86eaa6b4aee58dfb55ccd1
/frameworks/opt/telephony/src/java/com/android/internal/telephony/PhoneFactory.java
d728841b17b19ab8268a426051f51f64a6913142 10-Jun-2017 Jeff Davidson <jpd@google.com> Make eUICC SubInfo refreshes blocking.

Otherwise, after a profile download/delete completes and returns
control to the caller, the SubscriptionInfo may not be in a complete
state. For example, a newly-downloaded profile will not return true in
SubscriptionInfo#isEmbedded() until this refresh completes.

Fixes: 62547811
Test: TreeHugger / verified bug fix
Change-Id: I40ef30feb3dce94ed456abe930749e9c30da6d96
/frameworks/opt/telephony/src/java/com/android/internal/telephony/PhoneFactory.java
dce529f00c52bedf4377ee5f7ae1b284fe6452be 09-Apr-2017 Jeff Davidson <jpd@google.com> Implement embedded subscription list APIs.

Listing embedded subscriptions is fairly simple - we just return all
subscriptions for which IS_EMBEDDED = 1. We expose these through two
new APIs which return subscriptions which are either active or
embedded; one API (for the LPA and other callers with permission)
returns all such subscriptions, and the other (for carrier apps)
returns only subscriptions accessible to the calling app.

The cache of embedded subscriptions is updated whenever the SIM state
becomes ABSENT, ERROR, or LOADED; whenever an API call happens which
impacts the list of subscriptions (like a download or a delete); or
whenever the LPA requests a refresh due to some data change.

To support this change, the update process now runs on a background
thread instead of the main thread, as IPCs can't be made from the main
thread without deadlocking, in general. (Note though that this
probably should have been done before as the update logic was still
reading from/writing to a SQLite-backed ContentProvider, and since the
phone process currently contains UI for settings).

The update process pulls all cached embedded subscriptions (omitting
non-removable ones if the update is for a removable eUICC), as well as
non-embedded subscriptions with matching IMSIs. Subscriptions are
matched with those returned by the LPA and updated; any other cached
subscription in the above list is "removed" by marking it as
IS_EMBEDDED = 0. (This is equivalent to what happens when a physical
SIM is removed).

For the nickname, we repurpose the existing DISPLAY_NAME field.
However, there are settings UIs which allow updating this field, which
means those updates will be clobbered every time the list is updated.
A follow-up CL will propagate updates to this field from Settings to
the stored nickname on the eUICC's profile so that they persist.

Bug: 35851809
Test: Unit tests; e2e tests switching back and forth between embedded
and removable eUICC.
Change-Id: Ie714c0f7fc1a9d147008a2598dfdeac865ba120c
/frameworks/opt/telephony/src/java/com/android/internal/telephony/PhoneFactory.java
0f3e27e5b77a3ce3756987592dc3335155e49ede 03-May-2017 Chen Xu <fionaxu@google.com> Merge "support locale change for notification channels" into oc-dev am: f3f52f5cd1
am: fe19b40a85

Change-Id: I7a3bbd2af5f5b19ff1110a87723cd47159141a35
7c29cabeb38ae8cb4f5764c2dc0a768de22d2f92 02-May-2017 fionaxu <fionaxu@google.com> support locale change for notification channels

- create all notification channels when phone process started to provide
an consistent UX experience
- support locale changes

Test: Manual test with different languages
Bug: 37911731
Change-Id: Ib2d2bb27d307a3570923ca176f7d02f0c1985a43
/frameworks/opt/telephony/src/java/com/android/internal/telephony/PhoneFactory.java
7a9b640ed1ef153a9df46ba6959a49b6a85a643e 18-Apr-2017 shuoq <shuoq@google.com> Add SharedPreference information in TelephonyDebugService dumpsys

Test: Mannual
Bug: 32342371
Change-Id: Ic34812b8a562a8aa3d26ab19e97cd9e4b9364d6d
/frameworks/opt/telephony/src/java/com/android/internal/telephony/PhoneFactory.java
277a5a2aae73ef0233fffc350f3829aee779899f 01-Mar-2017 Jeff Davidson <jpd@google.com> Squashed merge of master-sim into master.

Includes the following commits:

==

Add stub implementation of EuiccController.

This class will provide the backing implementation for EuiccManager.

The service is only initialized if the eUICC hardware feature is
defined. This provides a simple gate to turn on/off the feature during
development.

==

Initial implementation of EuiccConnector.

EuiccConnector is a state machine responsible for finding and
connecting to, and then dispatching commands to the system
EuiccService implementation.

==

Update references to UiccAccessRule in UiccCarrierPrivilegeRules.

AccessRule is being moved to frameworks/base/telephony so that it can
be used to transfer access rules between an EuiccService
implementation and the platform.

==

Implementation of getEid() command.

Adds unit tests of command dispatch and bind lingering.

Also fixes a bug in ContextFixture that prevented bindService from
working when the Intent specified a component name but not a package
name.

==

Generalize EuiccConnector's resolution to work for activities.

Overall, resolving the active EuiccService implementation and
resolving the active Activity for a particular LUI intent action are
quite similar - both perform the same permission check on the app and
the activity/service declaration and require a priority. So we can
generalize the existing service lookup method to work for LUI
activities as well, and make this a utility method accessible to other
callers.

Also tweak the priority definition to use the more standard
android:priority instead of our own custom metadata. This reduces the
API surface and also ensures some sane behavior (like unbundled APK
updates not being able to adjust priorities without the OEM updating
the copy in /system in an OTA).

==

Euicc implementations for getting metadata and downloading.

These are fully implemented except for the following, which will be
handled as separate follow-up pieces:

-Carrier privilege checks (the privileged permission is currently a
strict requirement for the download API; this will be relaxed later
per the method spec)
-Resolution of user-resolvable errors

==

Test: TreeHugger
Change-Id: Ide3d81fdbdccff4573d58220fc2c603a7b9de5c4
/frameworks/opt/telephony/src/java/com/android/internal/telephony/PhoneFactory.java
7152d901c51e288759259ae3e482bb5fe1c23173 25-Jan-2017 Brad Ebinger <breadley@google.com> Modifications to support ImsResolver and adds Tests

1) Adds unit tests for ImsService and related classes.
2) Modifies the ImsPhoneCallTracker to support the new ImsResolver.
3) Modifies the ImsServiceController to relay ImsService status callbacks.

Test: Unit Tests added
Change-Id: Ibcb001ce13e0bcc21f02deede64f7ee8f1549e59
/frameworks/opt/telephony/src/java/com/android/internal/telephony/PhoneFactory.java
5470a3b34b58cd7a5ce0bde9820b2f5f64bc5820 24-Jan-2017 Brad Ebinger <breadley@google.com> Integrates ImsResolver into telephony

This change integrates ImsResolver into the PhoneFactory.

Test: Manual
Change-Id: Idcb1a421aa40c33b22dcdca24a13b7ef0c2efab3
/frameworks/opt/telephony/src/java/com/android/internal/telephony/PhoneFactory.java
0f7d1220e8584c7f227e6c6c0be0e26d1c6b7de1 15-Apr-2016 Amit Mahajan <amitmahajan@google.com> Delete PhoneBase and PhoneProxy.

Bug: 26544841
Change-Id: If95584d81f28829faf7bd91f88af2c0a60aad69f
/frameworks/opt/telephony/src/java/com/android/internal/telephony/PhoneFactory.java
9521f8c043c167e3a3fa97ea50bf1e2e0cd188a1 09-Mar-2016 Robert Greenwalt <rgreenwalt@google.com> Improve TelephonyNetworkRequest logs.

Preserve historic logs and list them in bugreports.
General aid to debugging.

bug:27517447
Change-Id: I5d82047b9c0a84edb9ae40782fd6868360bebeaf
/frameworks/opt/telephony/src/java/com/android/internal/telephony/PhoneFactory.java
43bc691fbb0fbb39507458c5d64a8088650255c4 03-Mar-2016 Amit Mahajan <amitmahajan@google.com> Remove unused functions from PhoneFactory.

Also added a simple unit test.

Bug: 25691379
Change-Id: I39b7dbe3914b0821a3f8aa31fe057d54ea5455da
/frameworks/opt/telephony/src/java/com/android/internal/telephony/PhoneFactory.java
85953e2a7e5bc75cf1f5353feee97b3993dad5b3 10-Feb-2016 Robert Greenwalt <rgreenwalt@google.com> Remove DctController

Replaced by SubscriptionMonitor, PhoneSwitcher and TelephonyNetworkFactory.

Change-Id: I1b86349caf9ce43e27fac266d3b916669d29911e
/frameworks/opt/telephony/src/java/com/android/internal/telephony/PhoneFactory.java
e9bf1f44cc6a888fff8419c8f35612d503ba3216 05-Feb-2016 Robert Greenwalt <rgreenwalt@google.com> Create TelephonyNetworkFactory.

It replaces DctController. Also adds tests.

Change-Id: I7cff9197fe26dee3eb7df9be166b92e4c26e8970
/frameworks/opt/telephony/src/java/com/android/internal/telephony/PhoneFactory.java
6bfc71d2b5340f6274b3e63926a7068e364fc9ff 28-Jan-2016 Robert Greenwalt <rgreenwalt@google.com> Make PhoneSwitcher class.

Monitors subscription->phone mapping, default subscription setting and
all mobile network requests to prioritize things, activate/deactivate phones
and also notify the curious about which phones are currently active.

Change-Id: I0ee67e6b05a5571b2f3c4e641823cf029420cb50
/frameworks/opt/telephony/src/java/com/android/internal/telephony/PhoneFactory.java
7a477263108748903cf5a4151a4e8b739f12264a 16-Dec-2015 Robert Greenwalt <rgreenwalt@google.com> Create the new SubscriptionMonitor

Add some unit tests too.

Change-Id: I9e40be14d61f8f43d6bd37915f0c2ab5b3bf8289
/frameworks/opt/telephony/src/java/com/android/internal/telephony/PhoneFactory.java
dc3b93d59312b84dcfa776f7691f6a87462b45a2 29-Dec-2015 Jack Yu <jackyu@google.com> Added dump support to more telephony components.

Added dump support to Ims components and also improved service
state tracker dump support.

bug: 25955373
Change-Id: I295ac57be70303b072069dca70fd3b8827461cfc
/frameworks/opt/telephony/src/java/com/android/internal/telephony/PhoneFactory.java
30646d039eb54def9efd55fc54772e111b5ef115 17-Dec-2015 Amit Mahajan <amitmahajan@google.com> Removed unnecessary proxies.

Bug: 25793157
Change-Id: I692f140b89d23448a5261fec8cdeb60305287662
/frameworks/opt/telephony/src/java/com/android/internal/telephony/PhoneFactory.java
c2b66d57e16623dffc2fe6d02ded4f24c014b6c8 14-Dec-2015 Amit Mahajan <amitmahajan@google.com> Code cleanup including removing direct references to IMS classes.

Bug: 25793157
Change-Id: I45ab1394d8585ae3d649f1bb8f67bcd16a946a85
/frameworks/opt/telephony/src/java/com/android/internal/telephony/PhoneFactory.java
0a567c9ed954f295df83c753239646c6f6a04128 24-Nov-2015 Amit Mahajan <amitmahajan@google.com> Adding initial tests for GsmCdmaCall and GsmCdmaPhone.

Also includes:
- Changes to fix/comment out failing tests
- Some cleanup in CallManager related to deletion of PhoneBase and
PhoneProxy
- ContextFixture containing mock Context for all telephony tests
- Phone test that exercises BroadcastReceiver support in the mock
Context
- Test showing how static function can be mocked

Bug: 25691379
Change-Id: Ia38423cef3cfb86389d044cac4e601983fae1192
/frameworks/opt/telephony/src/java/com/android/internal/telephony/PhoneFactory.java
1a87ab3d7170d618f048c4f5af8c7504a587aaa5 10-Dec-2015 Jack Yu <jackyu@google.com> Merge from master

Change-Id: Ifbd86600111d2c444031ff608fab62fb2ee4b236
/frameworks/opt/telephony/src/java/com/android/internal/telephony/PhoneFactory.java
0f5aa609061d4bbe76a5cd24c889793c8598d19e 08-Oct-2015 Zoran Jovanovic <zoran.jovanovic@sonymobile.com> Restore dumpsys iphonesubinfo

When Multi SIM was implemented, that broke dumpsys for several
telephony related services. The class that registers the service
does not override dump, though, but the info is available
in PhoneFactory and can be dumped via TelephonyDebugService.

Note: This change only fixes iphonesubinfo. Imms, isms and others are
still broken.

Change-Id: Ie5b8600c40b07c49c28b3df8a3c0d56527434710
/frameworks/opt/telephony/src/java/com/android/internal/telephony/PhoneFactory.java
80bd0262e4bb6dbbaf6d03dadb771ad105186e15 16-Sep-2015 Pavel Zhamaitsiak <pavelz@google.com> Fix race in dafault phone creation

ImsPhone might be created when we are starting monitoring IMS service.
When we are creating ImsPhone, we are opening IMS service.
When IMS service is being opened, it might request default phone (which
might not be ready yet).

Bug: 24130556
Change-Id: I7677b3131b15c78f6c6ac008f0cbb06b1a427b5d
/frameworks/opt/telephony/src/java/com/android/internal/telephony/PhoneFactory.java
2f5e0f602beab84c8ba1a9c8ee7736c9df62b0be 29-Jul-2015 Robert Greenwalt <rgreenwalt@google.com> Revert "DO NOT MERGE Add logging to detect the start of a sync problem."

This reverts commit f65485c99cf0fb0e844ae9e39c2c6cd6bae0fd2c.

bug:22632129
Change-Id: I531668bc0874c71c70773ceda071cf5a7f5c1121
/frameworks/opt/telephony/src/java/com/android/internal/telephony/PhoneFactory.java
f65485c99cf0fb0e844ae9e39c2c6cd6bae0fd2c 24-Jul-2015 Robert Greenwalt <rgreenwalt@google.com> DO NOT MERGE Add logging to detect the start of a sync problem.

This should be removed prior to shipment!

The DctController is getting out of sync with the ApnContexts. Add a callback
mechanism so the ApnContexts can let DctController know when they apply a change
and then when all is quiet we can compare and verify everything is good.

Potentially can fix the problem detected too (if there should be no live requests, nuke
the ref counts) but currently turned off so people will notice problems (battery life) and
file bugreports with the data of how it started.

bug:22632129
Change-Id: I84a67687f0b6dc43b2e429943935f4045ffc51ed
/frameworks/opt/telephony/src/java/com/android/internal/telephony/PhoneFactory.java
265445ed9ade6b904a3b4bfaf03cf346230e86e3 22-Jul-2015 Robert Greenwalt <rgreenwalt@google.com> Add logs to PhoneFactory

Allow entities in the phone process to easily add logs
to TelephonyDebugService.

First user, VVM.

Bug: 22607570

Change-Id: I65cfaf723db647a3747f72f404b690a5ab110811
/frameworks/opt/telephony/src/java/com/android/internal/telephony/PhoneFactory.java
9232dafa7ea833fc0b3a6024d6c7e23fc8e961ea 01-Jul-2015 Robert Greenwalt <rgreenwalt@google.com> Log reduction

Found all this while checking out 21957591. My work there was
a bust, but don't want to lose this logging cleanup.

bug: 22225815
Change-Id: I7a3e932e06d035066d4adbc10c99ecf2a20be5fd
/frameworks/opt/telephony/src/java/com/android/internal/telephony/PhoneFactory.java
4a3d736dbf0b8262290d3720085779538ceaad72 15-May-2015 Zach Johnson <zachoverflow@google.com> Bind to carrier apps that request it

Also plumb through dumpsys output for
carrier app bindings.

b/21080696

Change-Id: I82e3f119e4f08f040da0f1071fe1dd15077b2797
/frameworks/opt/telephony/src/java/com/android/internal/telephony/PhoneFactory.java
6cc5ac4992e4a46162bc022669830fe039046e34 02-Apr-2015 Pavel Zhamaitsiak <pavelz@google.com> Fix race condition which caused extra ImsPhone object to be created.

Extra ImsPhone object was created if IMS service was available when
voice RAT was changing. Later this object was replaced inside GSM or
CDMA phone object, but it proceed receiving updates from IMS service.

Bug: 19986577
Change-Id: I2907569fc0270e58a37725d530da0a60ead4215e
/frameworks/opt/telephony/src/java/com/android/internal/telephony/PhoneFactory.java
e70617d81dcd42350a737b11c25532e1d43df4ff 22-Jan-2015 Legler Wu <legler.wu@mediatek.com> [DS] Correct the access method for telephony system property

Revise the method to access telephony system property.
Add several PROPERTY_XXX_XXX_MSIM for MSIM type system properties. If
caller use the old one, it will be dispatched to new one and get by
default phone id.
Ex. PROPERTY_ICC_OPERATOR_NUMERIC

Bug: 18675498
Change-Id: I68b4de1817bb5a34d4a54685332f856e79a39d60
/frameworks/opt/telephony/src/java/com/android/internal/telephony/PhoneFactory.java
d21febaffa28f41e8cce37f88f4ceea5e7e2a398 11-Dec-2014 Robert Greenwalt <rgreenwalt@google.com> Merge "Add logging of TelephonyNetworkFactory" into lmp-mr1-dev
8bb75423745b09a92688919f5b32d49695a61abb 10-Dec-2014 Robert Greenwalt <rgreenwalt@google.com> Add logging of TelephonyNetworkFactory

It seems sometimes we don't react to a request properly. I suspect the
NetworkCapabilities are misconfigured for this Sub.

bug:18569575
Change-Id: I1a4605a4d9b02804f4d6a9b959e9f300008164a7
/frameworks/opt/telephony/src/java/com/android/internal/telephony/PhoneFactory.java
652c1add01ea5f0c93aa60c262863147d3aeefc2 06-Dec-2014 Wink Saville <wink@google.com> Add debug dataEnable.

Change-Id: I4c2c49d9283652429affc190abacf7775ef3fe43
/frameworks/opt/telephony/src/java/com/android/internal/telephony/PhoneFactory.java
4e7f34de0e226703fadd1f30f9976bb426c5166b 11-Nov-2014 Stuart Scott <stuartscott@google.com> SubscriptionController uses RAT families to control default data

bug: 18417009

Change-Id: I0c016db0c5adce6e28fc3ffb713d4a4c4d270b51
/frameworks/opt/telephony/src/java/com/android/internal/telephony/PhoneFactory.java
191fcbb559771da0f1339e1b90064cb444963811 26-Nov-2014 Amit Mahajan <amitmahajan@google.com> Change to use DATA_ROAMING setting correctly with subId.

Bug: 18466745
Change-Id: Ib2d7979d164ca3cf32c6619340fae1dc578ca686
/frameworks/opt/telephony/src/java/com/android/internal/telephony/PhoneFactory.java
80f67ef9e1603c8140a30d69c753e8d1813dc254 25-Nov-2014 Amit Mahajan <amitmahajan@google.com> Merge "Using default setting if setting+subid is not found." into lmp-mr1-dev
c9e4b3e8c1be7626ddbb81d49457e529a4e33847 19-Nov-2014 Amit Mahajan <amitmahajan@google.com> Using default setting if setting+subid is not found.

We should do this for other settings as well; fixing just this for now
to fix HFA bug.

Bug: 18392680
Change-Id: I360bc19c4501020afd9dfa1cfb7e66ce2fad9536
/frameworks/opt/telephony/src/java/com/android/internal/telephony/PhoneFactory.java
4b09dff383ae7dfca595aeeea886a594a1947340 22-Nov-2014 Wink Saville <wink@google.com> Additional changes to SubscriptionManager API as per API council.

bug: 17575308
Change-Id: Idd98aa46c15a9219ccf28091c62602ac8bf16c62
/frameworks/opt/telephony/src/java/com/android/internal/telephony/PhoneFactory.java
3bc32aa4a3f533421f82a6d7991bb1971bf78191 18-Nov-2014 Amit Mahajan <amitmahajan@google.com> Change to use subId with PREFERRED_NETWORK_MODE in all places.

MobileNetworkSettings already does that; it was the mismatch that was
causing the issue.

Bug: 18424733
Change-Id: Ib1c6d55c5bf2cff8986c740e96881f34e536b43f
/frameworks/opt/telephony/src/java/com/android/internal/telephony/PhoneFactory.java
3b225692047485dfb4db5eb1b5a3e871be1e50aa 12-Nov-2014 PauloftheWest <paulofthewest@google.com> Merge "Frameworks update to support Multi-SIM data roaming and networks." into lmp-mr1-dev
299dad50409e907993fa96c7401d4f10c58018b1 11-Nov-2014 Wink Saville <wink@google.com> Update SubscriptionManager API as per API council.

bug: 17575308
Change-Id: Ib39a60e4f75981a466e9d606ec627756efad018d
/frameworks/opt/telephony/src/java/com/android/internal/telephony/PhoneFactory.java
24b9b00e7058ef1f1b3f1d996b7e46b605c53770 07-Nov-2014 PauloftheWest <paulofthewest@google.com> Frameworks update to support Multi-SIM data roaming and networks.

Bug: 18293168
Change-Id: I727e79d2e5127214a1851d4228d3383dc58f8210
/frameworks/opt/telephony/src/java/com/android/internal/telephony/PhoneFactory.java
b237a11044ed842d2865ff8c8716befb06b6ca25 25-Oct-2014 Wink Saville <wink@google.com> Change subId to int from long

Change-Id: Idae6335e63e7b1e4e714bc17e71b1a4705e38474
/frameworks/opt/telephony/src/java/com/android/internal/telephony/PhoneFactory.java
e97be3971cb6b55e019433c32524cc60ce0d037b 26-Sep-2014 Wink Saville <wink@google.com> Reorganize and add more dumps within opt/telephony.

In particular dump is added to PhoneProxy which dumps
PhoneSubInfoProxy which dumps PhoneSubInfo this should
provide the desired information.

Also add some additional pw.flush() statements to
minimize the buffer overflows and truncate the output.

Bug: 17545077
Change-Id: I39787a84c97a8fc0410419965f6be2468dec7568
/frameworks/opt/telephony/src/java/com/android/internal/telephony/PhoneFactory.java
6bc4098827f3070a44b5e51508b455d7c7be9c07 01-Sep-2014 Wink Saville <wink@google.com> ksd to lmp-sprout-dev

Change-Id: I94eb65c62231b5831570bb0cbbbd9c916bee0a37
/frameworks/opt/telephony/src/java/com/android/internal/telephony/PhoneFactory.java
6f5e6b5b4374d834734894d687dea58724b6c0b0 14-Aug-2014 Naveen Kalla <nkalla@codeaurora.org> Protect getPhone and getPhones APIs with a lock

Remove check for sLooper and protect sProxyPhone and sProxyPhones
with a lock

Change-Id: I1217f89b2b94f3db96c59e0619cf676f619fc90a
/frameworks/opt/telephony/src/java/com/android/internal/telephony/PhoneFactory.java
888c60a7fe1c8f3612ab8e8ec5f2f7ca8f24e766 03-Jul-2014 Etan Cohen <etancohen@google.com> Remove VoicePhone interface

VoicePhone interface was not a generic voice phone. It was a partial
implementation of an ImsPhone (i.e. served no added-value purpose but
confused functionality). Removed.

Change-Id: Ida5d0fb2b09dcc6ec295ddd7a03f2cf6536b840b

Conflicts:
CleanSpec.mk
/frameworks/opt/telephony/src/java/com/android/internal/telephony/PhoneFactory.java
a8467dd0c524787104b1ccdddc5e8af10ba729ed 13-Jun-2014 Wink Saville <wink@google.com> Merge kwd to master

Change-Id: Idb607c0aa32f80fe4fe1539aedea7a221e9e7f04
/frameworks/opt/telephony/src/java/com/android/internal/telephony/PhoneFactory.java
b25da36f791607b5fc9a68ae01dd8c5ea1d5652c 19-Feb-2014 Shishir Agrawal <shishir@google.com> Setting the Preferred Network Type correctly on SIM restart.

Currently the GsmServiceStateTracker sets the preferred network type to the
last set network type which can cause issues during a SIM swap/reset if the
network type changes. The CdmaServiceStateTracker does not set this value at
all.

This change modifies this behavior to set the preferred network type in the
same manner it is set when a phone reboots.

Change-Id: I88d61a5d545bdbaa4e4400f5f9e4af8f99dc5d2e
/frameworks/opt/telephony/src/java/com/android/internal/telephony/PhoneFactory.java
8a4c72815186db4187587d4fc62125540a0e42a8 12-Nov-2013 David Braun <dabraun@google.com> Update preferred activity for SMS related SENDTO intents

Updates the preferred SENDTO activity for sms/mms schemes so that the user
will not see an intent disambiguation dialog for SENDTO sms/mms.

- Update preferred activity on set default SMS app
- Update preferred activity on "secure" get default SMS app
- Update preferred activity on package install/uninstall

Bug:11482259 When default SMS app changes we need to update the default app for the SEND intent
Change-Id: Ib2752fe84389f1c50cf2aa5841e75c3913b94e18
/frameworks/opt/telephony/src/java/com/android/internal/telephony/PhoneFactory.java
c67761d00a25bd095364e3ff4e4cb8e88b2e974c 13-Oct-2013 David Braun <dabraun@google.com> Make SmsApplication checks more defensive

When SmsApplication::getApplication is called it will check to see if the
configured default SMS app and the phone package have the needed app ops
to work properly. If the call was made from a privilidged caller where
updateIfNeeded == true then the issue will be corrected, if the call was
made from an insecure caller we will return null indicating no default SMS
app which will cause client apps to know that they are not properly set
as the default SMS app. Either way we log an error.

When SmsApplication::setDefaultApplication is called we will ensure that
even if the previous app is no longer enabled or no longer set up as a
valid SMS app, we will still revoke it's OP_WRITE_SMS permission.

Bug: 11071837 Hangouts on KLP lost the WRITE_SMS permission
Change-Id: Ifea39a3d63e4ec3a30a6a1fa5834878dcc9ccfa0
/frameworks/opt/telephony/src/java/com/android/internal/telephony/PhoneFactory.java
33ab7bad1f2ccb5dea26d0def6e43a4f2d1b9cb9 19-Sep-2013 David Braun <dabraun@google.com> Ensure that a default SMS app is configured at boot

Make sure that two things are true on boot so that SMS/MMS will work
properly:
1) We have selected a default SMS/MMS app that will have write permission
to the SMS database
2) The Phone app always has permission to the database because it needs
to write to the raw tables when delivering MMS messages.

Note: If you change the default app explicitly the problems sending SMS
and MMS messages in Messaging will still happen. Preventing this requires
a larger change to prevent Mms from trying to send when it is not the
default app.

Bug: 10819150 Messaging App crashes while sending MMS
Bug: 10837862 Unable to send messages in Messaging app
Change-Id: Ie920e308b9b4067f0bbe1b6b2184c22aaf663065
/frameworks/opt/telephony/src/java/com/android/internal/telephony/PhoneFactory.java
5ceae6074e0729fbbc422db2f263bf7cf453bf1a 29-Aug-2012 Naveen Kalla <nkalla@codeaurora.org> Initialize RIL with the correct CDMA subscription mode setting

Users choice of CDMA Subscription Source is stored in CDMA_SUBSCRIPTION_MODE
setting in database.
If telephony restarts after a crash, use CDMA_SUBSCRIPTION_MODE instead
of PREFERRED_CDMA_SUBSCRIPTION in PhoneFactory to prevent
mismatch with the value in the settings database chosen by the user.

Also, remove the Setting PREFERRED_CDMA_SUBSCRIPTION from the database.
With this change the special treatment for LTE on CDMA will not be needed.
The correct value can be set in the database for CDMA_SUBSCRIPTION_MODE
and that will be taken on power-up by this code.

Change-Id: I11fff596a5fe721c64f192c889672326517dc43d
/frameworks/opt/telephony/src/java/com/android/internal/telephony/PhoneFactory.java
d5fc65e2ca1ed72a936b497681784146449fe20b 06-Aug-2013 Ying Wang <wangying@google.com> Fix build.

Reference:
https://android-review.googlesource.com/#/c/61723/5

Change-Id: I327733be1c2ab3cda933b9f0c7c0a63332223ae8
/frameworks/opt/telephony/src/java/com/android/internal/telephony/PhoneFactory.java
22d85a8e3a575a6d01d2c788587971657dfe20c6 23-Feb-2013 Wink Saville <wink@google.com> Clean up member variables.

Change-Id: Ib60f350131ade626aca682407ea0b4377b16f6c6
/frameworks/opt/telephony/src/java/com/android/internal/telephony/PhoneFactory.java
cbaa45bbf2cab852b6c9c3a887e9f803d4e857ea 23-Feb-2013 Wink Saville <wink@google.com> Clean up

- Add @Overrides where needed.
- Update javadoc comments
- Remove extra semi-colons
- Rename DataConnection.java to DataConnectionBase.java
- Rename GsmDataConnection.java to DataConnection.java
- Add defaults to switch statements
- Remove/fix most "if (false)" statements. Fixed by using a CONSTANT
- Fix hidden variables by hoisting to base class or renaming
- Tweak some debug output

Change-Id: If38de2fdeaacafbf40cdfd7f84dc5c52030ba2a3
/frameworks/opt/telephony/src/java/com/android/internal/telephony/PhoneFactory.java
99c2e1d6749cfad2a8ca94a47857d8c3bfc09454 27-Nov-2012 Wink Saville <wink@google.com> Use Rlog instead of Log.

Change-Id: I2f44193b294513e743526e5c163e7d9a45308b28
/frameworks/opt/telephony/src/java/com/android/internal/telephony/PhoneFactory.java
6ce6af4664de8d12c238f00b1f566db010d52a44 01-Oct-2012 Jeff Sharkey <jsharkey@android.com> Migrate telephony settings to Global.

Bug: 7231764
Change-Id: I2e1c23ed930bb9499c8bca53ac68c38da85085b5
/frameworks/opt/telephony/src/java/com/android/internal/telephony/PhoneFactory.java
e287feac673ff68565b766e0e463d105fa9cef9d 10-Jul-2012 Alex Yakavenka <ayakav@codeaurora.org> Telephony: Remove CdmaLteUicc objects

-Pass IccCard object to GsmMmiCode
-Create IccCardProxy
-Make IccCard an interface and pass instance of IccCardProxy to
external applications (PhoneApp). IccCardProxy will use internal
UiccCard to map Icc requests to current active application on
UiccCard to maintain backwards compatibility for external
applications
-Add documentation to UiccController

The primary advantage of UiccController is that we can work with
multiple uicc applications at the same time. And that is a
requirement for modes like Cdma/Lte. The existing code supports
Cdma/Lte only partially and with guessing on modem side. However,
some things modem can guess, while others - it can't.

For instance, when a user tries to edit the fdn list the current
code will pass ef_id for fdn (0x6F3B). But the modem will have no
clue which fdn list the user wants to edit (csim or usim, both
have path 7FFF), and it's impossible for modem to guess correctly
all the time. All the modem can do is try to be consistent and
hope another device is doing same things. Imagine you bring your
card from another Cdma/Lte device to your new Cdma/Lte device:
if this modem uses different fdn file, it won't work as all
existing entries won't be there.

Another example is when the modem's guess is wrong for files like
csim/ef_li (7FFF 6F3A) versus usim/ef_adn (7FFF 6F3A). They have
same ef_ids so Android really should pass aid of the app it wants
to access. Without aids there is no way modem can know for sure
which file Android wants to read! However, in the current code
even Android doesn't know which aid it wants to read file from
since CdmaLteRecords has only 1 aid.

All of these problems cause more and more hacks, both in the modem
and in Android side. UiccController cleans up current code and
provides framework to work with multiple Uicc applications at the
same time.

Change-Id: I60216887b14140bdf833a8ed579ba16cad932bdc
/frameworks/opt/telephony/src/java/com/android/internal/telephony/PhoneFactory.java
c38bb60d867c5d61d90b7179a9ed2b2d1848124f 12-Jul-2012 Wink Saville <wink@google.com> Create telephony-common - DO NOT MERGE

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

Change-Id: I32cbb5eec1fa239c1587e055c8f7ef4fc48fb62c
/frameworks/opt/telephony/src/java/com/android/internal/telephony/PhoneFactory.java