History log of /frameworks/base/services/core/java/com/android/server/NetworkScoreService.java
Revision Date Author Comments (<<< Hide modified files) (Show modified files >>>)
7842f64b75282f1233b30ebdb0d876c485def9a7 23-Nov-2014 Jeff Davidson <jpd@google.com> Handle package changes in NetworkScoreService.

Keep a registered receiver for changes to the active scorer package
when scoring is enabled. Disable scoring if any of those changes cause
the active scorer to become invalidated.

Covers the package or subcomponent being disabled, the package being
upgraded to a version that is no longer a valid scorer, or the package
being uninstalled. Intentionally keeps scoring active if the package
is upgraded and the new package is still a valid scorer.

Bug: 18494565
Change-Id: I1d340820b12881ab2ee147a788773df9cc7005d7
/frameworks/base/services/core/java/com/android/server/NetworkScoreService.java
e56f2bb5ecae624e1b6573515f855a26f756aed5 05-Nov-2014 Jeff Davidson <jpd@google.com> Allow apps with SCORE_NETWORKS to set the active scorer.

This allows for a more streamlined UX in the current world, where
scorer apps are trusted (by virtue of being in /system/priv-app).
Trusted apps can continue to use the system dialog for consent, but
they may also set the scorer directly, under the assumption that they
are using their own consent UX to explain the feature to the user.

Bug: 16577529
Change-Id: I2a6edb7f1f688aaacf9b0152fa1da1a88636c3dc
/frameworks/base/services/core/java/com/android/server/NetworkScoreService.java
161977998feebf0a855ea56558464470877040cf 04-Nov-2014 Jeff Davidson <jpd@google.com> Rename BROADCAST_SCORE_NETWORKS to BROADCAST_NETWORK_PRIVILEGED.

This is necessary/desired for two reasons:

1. UX around network scoring shipped with L despite lacking underlying
platform support. We do not want network scoring applications to
trigger this UX on L devices, and therefore we must break the contract
of what defines a network scorer so that apps build against the new
contract don't trigger the old UX.

2. As a start towards generalizing the term "score" for a potentially
broader role in the future, though that role is very much undefined.

Bug: 18160480
Change-Id: If228977513e32e45bc44dbeda24aa18436fdfca6
/frameworks/base/services/core/java/com/android/server/NetworkScoreService.java
56f9f73a5aad38aa777ec9a42c859e687f2d2af1 15-Aug-2014 Jeff Davidson <jpd@google.com> Fix default scorer provisioning.

Use Settings.Global instead of SharedPreferences (which don't work) to
track whether we've run the one-time provisioning step of activating
the build-time configured default scorer.

Bug: 16980605
Change-Id: I093cdd6f4f1110960078a186191c4e02b5543d6a
/frameworks/base/services/core/java/com/android/server/NetworkScoreService.java
ac7285dc1e13f30d59dad30fe2ad1116e5f676cb 09-Aug-2014 Jeff Davidson <jpd@google.com> Security-related cleanup for network scoring.

-Perform additional checks for the SCORE_NETWORKS permission when
broadcasting scoring requests to the active scorer and when accepting
score updates. In theory, these checks are unnecessary as we manually
check package manager when obtaining the list of valid scorers, but
they cannot hurt to add.

-Fix multi-user. Since the active scorer is a global setting, we
ensure that scoring can only be done by apps available to the primary
user / owner of the phone, and that the request scores broadcast is
sent to that user's profile. When the scorer is changed, we send that
to all user profiles as it's just informational, although it's
unlikely that apps outside the primary user's profile would need to
respond.

Bug: 14117916
Bug: 16399238
Change-Id: Iaf06bda244eec730b590a30a3f4ffab4965bde96
/frameworks/base/services/core/java/com/android/server/NetworkScoreService.java
26fd143326a11c9dd7942e31acca6df56288d194 29-Jul-2014 Jeff Davidson <jpd@google.com> Add NetworkScoreManager.disableScoring().

Allows the active scorer app to disable itself.

Change-Id: I7bcdc3aafb95af4ea0b110b01b08ab4daf7a137f
/frameworks/base/services/core/java/com/android/server/NetworkScoreService.java
b096bdceaf2a4becffd2d930a870ccb57bfbe99c 01-Jul-2014 Jeff Davidson <jpd@google.com> Add a SCORER_CHANGED broadcast.

Sent whenever the active network scorer is changed.

Bug: 16007033
Change-Id: Ib71e89e2cc98fa424db7e489445ec03edefb6880
/frameworks/base/services/core/java/com/android/server/NetworkScoreService.java
c741553644f8b19c63938ab9e36af1721c2cfa34 24-Jun-2014 Jeff Davidson <jpd@google.com> Use/expose the receiver's label as the scorer name.

Allows scorer apps to set a custom name for the scoring functionality,
even if the app has other non-scoring responsibilities, in which case
the application's label would be too generic.

Bug: 15775300
Change-Id: I61a7d1966742d463508e6801b7845ced8392db84
/frameworks/base/services/core/java/com/android/server/NetworkScoreService.java
68c46fd8dd88b906cf064f0d8d0408d4f60e2a4d 10-May-2014 Jeff Davidson <jpd@google.com> Flush dump output before calling score cache dump() methods.

Change-Id: I2a28bd90583e34710c2d0ac8b31f16b8a22c165d
/frameworks/base/services/core/java/com/android/server/NetworkScoreService.java
14f1ec05b2add5ee051c0d2e7c7c3b36a6e77b92 29-Apr-2014 Jeff Davidson <jpd@google.com> API for network cache subsystems.

A network subsystem (e.g. Wi-Fi) will be responsible for implementing
INetworkScoreCache. NetworkScoreService will load caches for each
configured network subsystem. When it receives a call to update
scores, it will separate the networks by type and call updateScores on
the appropriate INetworkScoreCache.

Each subsystem will also be responsible for requesting scores for new
networks by calling NetworkScoreManager#requestScores.

Bug: 14408144
Bug: 14137255
Change-Id: I76e5e5205bc359c39d6b9c1782126fb7f465cd96
/frameworks/base/services/core/java/com/android/server/NetworkScoreService.java
6a4b220f1263d95fdefe6361c2bc87bbb04bbed0 17-Apr-2014 Jeff Davidson <jpd@google.com> Initial implementation of NetworkScoreManager's backing service.

This service will ultimately be responsible for propagating scores
down to lower-level network subsystems. For now, it just keeps scores
in memory and exposes these for debugging purposes via "adb shell
dumpsys network_score".

This change also adds provisioning of a default scorer. When
NetworkScoreService is first initialized, it checks to see if it has
ever set a default scorer; if not, it reads a package name from a
build config property and attempts to set it as the default.

Also add autogenerated equals/hashCode methods to all parcelables.

Bug: 14111427
Bug: 13786258
Change-Id: I02271171653d42e12acd240b73b9e23950744f6b
/frameworks/base/services/core/java/com/android/server/NetworkScoreService.java