DO NOT MERGE: ConnectivityManager: use ConnectivityThread looper

This patch removes the static singleton looper used by
ConnectivityManager and instead uses the common ConnectivityThread.

This allows to removes the static atomic counter used to track
the number of registered NetworkCallback in ConnectivityManager, because
the looper is not turned off anymore when no callbacks are registered.

Also an overloaded version of sendRequestForNetwork is added taking as a
new parameter a Handler. This will allow to overload various callback
and request related API calls with user provided Handlers.

Test: ConnectivityServiceTest passes
Bug: 26749700
Bug: 28537383
Bug: 32130437

(cherry picked from commit 7724cdd8b90006c852644d06cf6c8a28450c71c6)

(cherry picked from commit 1853f78d768dc44efdc8576302b382ff81a0ffac)

Change-Id: If5c1e46ca6c4a09ef526cbe09654c5f55ef8d6ce
1 file changed