Keep only signatures that are present in public releases for P and Q based on android_runtime.hiddenapi.bootclasspath.public.
Bug: 137350495
Test: diff hiddenapi-flags.csv
Change-Id: If270ec7e77e299558988e3f49a9e16ba65ac6afd
go/cleanup-greylist-txt
These have already been greylisted, however due to bugs/omissions in the tooling have been kept in go/greylist-txt instead of being annotated in the code.
Bug: 137350495
Test: m
Change-Id: Id6c1f5e403a0e66edb1102ee45f3bf19f244fb09
Merged-In: Id6c1f5e403a0e66edb1102ee45f3bf19f244fb09
See go/UnsupportedAppUsage for more details.
These have already been greylisted, however due to bugs/omissions in the tooling have been kept in go/greylist-txt instead of being annotated in the code.
Bug: 137350495
Test: m
Change-Id: I5aa29a49b193db47aaee4d3a756c17f48cc9f0b1
Merged-In: I5aa29a49b193db47aaee4d3a756c17f48cc9f0b1
This is primarily a wrapper over ICarrierMessagingService
that to create a stable API to communicate with CarrierMessagingService.
Test: basic messaging sanity
Bug: 143609473
Merged-in: I67fda8bab3902b358c483f992633dbdfe3a8cda2
Change-Id: I67fda8bab3902b358c483f992633dbdfe3a8cda2
(cherry picked from commit 92642659e8)
today telephonyRegistry lives in system process
this is intended to persists all telephony listeners when
phone process crash. Telephony today notify system server by
using AIDL APIs directly. Instead, we are exposing a proper API
surface: telephonyRegistryManager where only phone app and
carrier privileged apps are allowed to use APIs in
TelephonyRegistryManger to notify telephony related status update.
Bug: 140908357
Test: Build & Manaul
Change-Id: I1b750751148925b4a7bd94553318907654012fc1
(cherry picked from commit 288b71c8c1)
Merged-in: I1b750751148925b4a7bd94553318907654012fc1
In an effort to remove it from telephony-common as that will not be
accessible to other modules, and some of them need mms code like
MmsService, TelephonyProvider, Bluetooth.
Test: basic sanity
Bug: 140763963
Merged-in: I03eda5a5dbd003659a90e2b9f6be9d4c2b767add
Change-Id: I03eda5a5dbd003659a90e2b9f6be9d4c2b767add
(cherry picked from commit fda8bc058c)
This is getting pulled in from somewhere, removing to fix
PreloadCheck test.
Bug: 140912480
Test: atest PreloadCheck
Change-Id: I8eea07930732865cc72fea0e352a1704d1c26118
Remove entries that should not be in the blacklist.
Partially reverts commit 00b23d3cb1.
Test: m
Merged-In: I658f31f1df299eb06fb353e8bba118470112d80b
Change-Id: I658f31f1df299eb06fb353e8bba118470112d80b
-Update getDataState() API to use the SubId specified
by the TelephonyManager instance.
-Update the getDataActivity() API to use the SubId
specified by the TelephonyManager instance.
(This CL is an un-revert of aosp/984377)
Bug: 135205433
Test: manual (automated test is infeasible)
Change-Id: I035f2c44a7955e88608b1c336acb72fb68c3e450
In Q, these APIs were either:
- removed from the greylist entirely without good reason
- Moved to the restricted greylist without any public alternative
information added
So they are being moved back to the greylist for Q.
Test: Treehugger
Bug: 136102585
Change-Id: I5ac8b8b9b23c3789d80239cf456072cc7dfa1203
Compiled methods don't get any interpreter activity modifying their
hotness counters. This CL compiles more methods to prevented
Original set of profile is the updated profile with revised thresholds
for image classes. Here we used a 3% threshold.
Additionally, the CL adds imgdiag diagnosed methods that have dirty JIT
counters shortly after boot on the following apps:
system_server
com.android.systemui
com.android.phone
com.android.nfc
com.google.android.networkstack
com.android.bluetooth
com.google.android.apps.nexuslauncher
com.google.android.gms.persistent
com.google.android.as
com.google.process.gservices
com.google.android.gms
com.google.android.inputmethod.latin
Before:
Boot oat size: 32,800,596 bytes
Persistent app .art PSS: 19115K
Persistent app .art Private Dirty: 15356K
System boot .art PSS: 60948K
After:
Boot oat size: 37261124 bytes
Persistent app .art PSS: 12610K
Persistent app .art Private Dirty: 8740K
System boot .art PSS: 50735K
Private dirty savings for persistent apps: 7MB
Net RAM savings: 5MB (10MB dirty .art PSS, 5MB oat size incrase)
Bug: 134776403
Test: Reboot and inspect RAM usage
Change-Id: Ia1c59b4be341a28de02b7d20aedcb6b69815c652
SQLiteDebug.Const isn't supposed to be preloaded.
Fix: 134176355
Test: "setprop db.log.slow_query_threshold.10045 0" and make sure ...
it works for UID 10045
Change-Id: I06ca1531e968faa2378d0cb7f627e2c6a87cf502
These packages contain code that was whitelisted in P (accidentally),
and was blacklisted in Q (until now). They also contain open source code
that apps could reasonably include in their APK. Blacklisting the code
is problematic, as this results in apps being able to resolve the class
itself, but without any visibility of any members within it.
This is a measure to reduce the risk of Q, pending a proper solution for
these classes in future.
Remove the equivalent methods from the greylist as they are now
redundant. This was done via:
$ cat hiddenapi-greylist.txt \
| grep -v '^Lgov/nist/' \
| grep -v '^Lorg/apache/harmony/' \
| grep -v '^Lorg/apache/xalan/' \
| grep -v '^Lorg/apache/xml/' \
| grep -v '^Lorg/apache/xpath/'
Bug: 129387816
Test: m
Change-Id: I48d4ca3b8069894e91785f1dd69d81878078208c
Message format info is required in order to divide a message text into
correctly sized parts on a device that supports for both 3GPP and 3GPP2
formats in multi-sim. And fixed to get default SMS subId from SmsManager
in SmsMessage class instead.
Test: Manual
Bug: 132259056
Merged-in: Id2512eb62504b7e789f58b7d9697009d565c4a18
Change-Id: Id2512eb62504b7e789f58b7d9697009d565c4a18
Signed-off-by: Taesu Lee <taesu82.lee@samsung.com>
(cherry picked from commit 8debeeb126)
Message format info is required in order to divide a message text into
correctly sized parts on a device that supports for both 3GPP and 3GPP2
formats in multi-sim. And fixed to get default SMS subId from SmsManager
in SmsMessage class instead.
Test: Manual
Change-Id: Id2512eb62504b7e789f58b7d9697009d565c4a18
Signed-off-by: Taesu Lee <taesu82.lee@samsung.com>
1. Docuemnt the scope of each callback event either apply to specific
subscriptions or not.
2. TelephonyRegistry store separate state e.g, precisecallstate, callAttribute
for each slot to support msim.
3. Add missing subscription match check when notify callbacks.
Bug: 130423985
Bug: 132181378
Test: atest CtsTelephonyTestCases:PhoneStateListenerTest
Merged-In: I4b014e00528a1f05e0b5f237229c561f8260e2bd
Change-Id: I4b014e00528a1f05e0b5f237229c561f8260e2bd
(cherry picked from commit d5deeb15e9)
1. Docuemnt the scope of each callback event either apply to specific
subscriptions or not.
2. TelephonyRegistry store separate state e.g, precisecallstate, callAttribute
for each slot to support msim.
3. Add missing subscription match check when notify callbacks.
Bug: 130423985
Bug: 132181378
Test: atest CtsTelephonyTestCases:PhoneStateListenerTest
Change-Id: I4b014e00528a1f05e0b5f237229c561f8260e2bd
This is a conservative tuning for the last profile update (commit
5b70220fb5) which regressed a few metrics
(b/130553966). The numbers below are quoated relative to the sate before
that update.
=Perf numbers=
The boot image compilation artifacts are 17MiB smaller (art/vdex/oat for
arm and arm64).
System server .art file is 100KiB smaller.
Startup and memory number are within the noise. Startup shows 0.72%
improvement. However that's most likely noise. The tests were run with:
- atest google/perf/app-startup/hermetic-apps/cold-dropcache-lock-test
- atest google/perf/app-startup/non-hermetic-apps/cold-dropcache-lock-test
- atest google/perf/memory/memory-test
- atest
google/perf/app-startup/benchmark-app-hermetic/cold-dropcache-lock-test
- atest
google/perf/app-startup/third-party-apps/cold-dropcache-stable-test
=Profile metrics=
Boot:
- methods and classes used by at least 9% of the sampled (non unique)
applications (see below for more explanations)
- 1.13% of hot methods added, 33.77% removed
- 0.65% of classes added, 21.61% removed
- 29256 hot methods in the profile (vs 43429 in the old one)
- 8681 classes in the profile (vs 10985 in the old one)
Preloaded clases:
- classes used by at least 20% of sampled applications during startup
- 1.5% added, 0.3% removed
- 7601 classes in the profile (vs 7516 in the old one)
System server:
- methods and classes used on at least 5% of sampled devices
- system server is speed compile and the image classes are the most
relevant
- 4% classes added, 23% of classes removed
- 2819 classes in the profile (vs 3418 in the old one)
=Data sample=
- 35000+ (non unique) applications contributed to the final profile
- these were spread across 4000+ (non unique) devices
- 'non unique' means that the same app or the same device (or a
combination of both) could have contributed to the final profile multiple
times
Bug: 122068885
Bug: 130553966
Test: m, build, boot, atest startup-tests
(cherry picked from commit 439305cadd)
Merged-In: Ic61ed2784af034ed4ae4bc8346ed67c6bed04152
Change-Id: I1fc3b301bf80bfc7dda3540c5a204af8321279bf
=Perf numbers=
The boot image compilation artifacts are 28MiB smaller (art/vdex/oat for
arm and arm64).
System server .art file is 100KiB smaller.
Startup and memory number are within the noise. Startup shows 0.11%
improvement and memory shows 0.22% improvements. However that's most
likely noise. The tests were run with:
- atest google/perf/app-startup/hermetic-apps/cold-dropcache-lock-test
- atest google/perf/app-startup/non-hermetic-apps/cold-dropcache-lock-test
- atest google/perf/memory/memory-test
=Profile metrics=
Boot:
- methods and classes used by at least 9% of the sampled (non unique)
applications (see below for more explanations)
- 0.6% of hot methods added, 51.31% removed
- 0.3% of classes added, 29.96% removed
- 21403 hot methods in the profile (vs 43429 in the old one)
- 7826 classes in the profile (vs 10985 in the old one)
Preloaded clases:
- classes used by at least 20% of sampled applications during startup
- 1.5% added, 0.3% removed
- 7601 classes in the profile (vs 7516 in the old one)
System server:
- methods and classes used on at least 5% of sampled devices
- system server is speed compile and the image classes are the most
relevant
- 4% classes added, 23% of classes removed
- 2819 classes in the profile (vs 3418 in the old one)
=Data sample=
- 35000+ (non unique) applications contributed to the final profile
- these were spread across 4000+ (non unique) devices
- 'non unique' means that the same app or the same device (or a
combination of both) could have contributed to the final profile multiple
times
Bug: 122460899
Bug: 122068885
Test: m, build, boot, atest startup-tests
(cherry picked from commit 5b70220fb5)
Merged-In: Ib3aac3c7efae64af9d2b46e350146e53ba653cbd
Change-Id: Ib42ab29e3d28591817a396407445a6c23e5c9a27
Embed the preloaded-classes-blacklist file and check all classes
in it.
Test: atest --test-mapping frameworks/base/tools/preload-check
Change-Id: I4292cae1eb24eafe1f63e914143433b57cc74751