• Home
  • Line#
  • Scopes#
  • Navigate#
  • Raw
  • Download
1 package android.companion.cts.common
2 
3 import android.Manifest
4 import android.companion.AssociationRequest.DEVICE_PROFILE_APP_STREAMING
5 import android.companion.AssociationRequest.DEVICE_PROFILE_AUTOMOTIVE_PROJECTION
6 import android.companion.AssociationRequest.DEVICE_PROFILE_COMPUTER
7 import android.companion.AssociationRequest.DEVICE_PROFILE_GLASSES
8 import android.companion.AssociationRequest.DEVICE_PROFILE_NEARBY_DEVICE_STREAMING
9 import android.companion.AssociationRequest.DEVICE_PROFILE_WATCH
10 import android.net.MacAddress
11 import android.os.Handler
12 import android.os.HandlerThread
13 import java.util.concurrent.Executor
14 
15 /** Set of all supported CDM Device Profiles. */
16 val DEVICE_PROFILES = setOf(
17         DEVICE_PROFILE_WATCH,
18         DEVICE_PROFILE_GLASSES,
19         DEVICE_PROFILE_NEARBY_DEVICE_STREAMING,
20         DEVICE_PROFILE_COMPUTER,
21         DEVICE_PROFILE_APP_STREAMING,
22         DEVICE_PROFILE_AUTOMOTIVE_PROJECTION
23 )
24 
25 val DEVICE_PROFILE_TO_NAME = mapOf(
26         DEVICE_PROFILE_WATCH to "WATCH",
27         DEVICE_PROFILE_GLASSES to "GLASSES",
28         DEVICE_PROFILE_NEARBY_DEVICE_STREAMING to "NEARBY_DEVICE_STREAMING",
29         DEVICE_PROFILE_COMPUTER to "COMPUTER",
30         DEVICE_PROFILE_APP_STREAMING to "APP_STREAMING",
31         DEVICE_PROFILE_AUTOMOTIVE_PROJECTION to "AUTOMOTIVE_PROJECTION"
32 )
33 
34 val DEVICE_PROFILE_TO_PERMISSION = mapOf(
35         DEVICE_PROFILE_WATCH to Manifest.permission.REQUEST_COMPANION_PROFILE_WATCH,
36         DEVICE_PROFILE_APP_STREAMING to
37                 Manifest.permission.REQUEST_COMPANION_PROFILE_APP_STREAMING,
38         DEVICE_PROFILE_AUTOMOTIVE_PROJECTION to
39                 Manifest.permission.REQUEST_COMPANION_PROFILE_AUTOMOTIVE_PROJECTION,
40         DEVICE_PROFILE_GLASSES to
41                 Manifest.permission.REQUEST_COMPANION_PROFILE_GLASSES,
42         DEVICE_PROFILE_NEARBY_DEVICE_STREAMING to
43                 Manifest.permission.REQUEST_COMPANION_PROFILE_NEARBY_DEVICE_STREAMING,
44         DEVICE_PROFILE_COMPUTER to
45                 Manifest.permission.REQUEST_COMPANION_PROFILE_COMPUTER
46 )
47 
48 val MAC_ADDRESS_A = MacAddress.fromString("00:00:00:00:00:AA")
49 val MAC_ADDRESS_B = MacAddress.fromString("00:00:00:00:00:BB")
50 val MAC_ADDRESS_C = MacAddress.fromString("00:00:00:00:00:CC")
51 
52 const val DEVICE_DISPLAY_NAME_A = "Device A"
53 const val DEVICE_DISPLAY_NAME_B = "Device B"
54 
<lambda>null55 val SIMPLE_EXECUTOR: Executor by lazy { Executor { it.run() } }
56 
<lambda>null57 val MAIN_THREAD_EXECUTOR: Executor by lazy {
58     Executor {
59         with(Handler.getMain()) { post(it) }
60     }
61 }
62 
<lambda>null63 val BACKGROUND_THREAD_EXECUTOR: Executor by lazy {
64     with(HandlerThread("CdmTestBackgroundThread")) {
65         start()
66         Executor { threadHandler.post(it) }
67     }
68 }
69 
70 val PRIMARY_PROCESS_NAME = ":primary"
71 val SECONDARY_PROCESS_NAME = ":secondary"
72