Remove keys from adb_keys after period of inactivity

Previously the feature to revoke 'always allow' adb grants
after a period of activity would not use the adb_keys file
and instead would just check the last connection time of
an 'always allow' key to determine if it should be allowed
without user interaction. However this bypassed the adbd
SIGNATURE check the verifies the system possesses the
corresponding private key. This change resolves this by
writing 'always allow' keys to the adb_keys file and
running a periodic job to remove any keys from this file
that have not been used within the expiration window. This
change also adds support for a 'connected key' message
from adbd so that the framework can be notified when a
key passes the SIGNATURE check.

Bug: 124076524
Test: atest AdbDebuggingManagerTest
Change-Id: I4c252f4ddd77f56a30b807d645cdab12a03d9bc5
3 files changed