• 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_VIRTUAL_DEVICE
10 import android.companion.AssociationRequest.DEVICE_PROFILE_WATCH
11 import android.net.MacAddress
12 import android.os.Handler
13 import android.os.HandlerThread
14 import android.os.ParcelUuid
15 import java.util.concurrent.Executor
16 
17 /** Set of all supported CDM Device Profiles. */
<lambda>null18 val DEVICE_PROFILES = buildSet {
19     add(DEVICE_PROFILE_WATCH)
20     add(DEVICE_PROFILE_GLASSES)
21     add(DEVICE_PROFILE_NEARBY_DEVICE_STREAMING)
22     add(DEVICE_PROFILE_COMPUTER)
23     add(DEVICE_PROFILE_APP_STREAMING)
24     add(DEVICE_PROFILE_AUTOMOTIVE_PROJECTION)
25     if (android.companion.virtualdevice.flags.Flags.enableLimitedVdmRole()) {
26         add(DEVICE_PROFILE_VIRTUAL_DEVICE)
27     }
28 }
29 
<lambda>null30 val DEVICE_PROFILE_TO_NAME = buildMap {
31     put(DEVICE_PROFILE_WATCH, "WATCH")
32     put(DEVICE_PROFILE_GLASSES, "GLASSES")
33     put(DEVICE_PROFILE_NEARBY_DEVICE_STREAMING, "NEARBY_DEVICE_STREAMING")
34     put(DEVICE_PROFILE_COMPUTER, "COMPUTER")
35     put(DEVICE_PROFILE_APP_STREAMING, "APP_STREAMING")
36     put(DEVICE_PROFILE_AUTOMOTIVE_PROJECTION, "AUTOMOTIVE_PROJECTION")
37     if (android.companion.virtualdevice.flags.Flags.enableLimitedVdmRole()) {
38         put(DEVICE_PROFILE_VIRTUAL_DEVICE, "VIRTUAL_DEVICE")
39     }
40 }
41 
<lambda>null42 val DEVICE_PROFILE_TO_PERMISSION = buildMap {
43     put(DEVICE_PROFILE_WATCH, Manifest.permission.REQUEST_COMPANION_PROFILE_WATCH)
44     put(DEVICE_PROFILE_APP_STREAMING, Manifest.permission.REQUEST_COMPANION_PROFILE_APP_STREAMING)
45     put(
46         DEVICE_PROFILE_AUTOMOTIVE_PROJECTION,
47         Manifest.permission.REQUEST_COMPANION_PROFILE_AUTOMOTIVE_PROJECTION
48     )
49     put(DEVICE_PROFILE_GLASSES, Manifest.permission.REQUEST_COMPANION_PROFILE_GLASSES)
50     put(
51         DEVICE_PROFILE_NEARBY_DEVICE_STREAMING,
52         Manifest.permission.REQUEST_COMPANION_PROFILE_NEARBY_DEVICE_STREAMING
53     )
54     put(DEVICE_PROFILE_COMPUTER, Manifest.permission.REQUEST_COMPANION_PROFILE_COMPUTER)
55     if (android.companion.virtualdevice.flags.Flags.enableLimitedVdmRole()) {
56         put(
57             DEVICE_PROFILE_VIRTUAL_DEVICE,
58             Manifest.permission.REQUEST_COMPANION_PROFILE_VIRTUAL_DEVICE
59         )
60     }
61 }
62 
63 val MAC_ADDRESS_A = MacAddress.fromString("00:00:00:00:00:AA")
64 val MAC_ADDRESS_B = MacAddress.fromString("00:00:00:00:00:BB")
65 val MAC_ADDRESS_C = MacAddress.fromString("00:00:00:00:00:CC")
66 
67 val UUID_A: ParcelUuid = ParcelUuid.fromString("bc4990b9-698c-473d-8498-2a5c4119f73d")
68 val UUID_B: ParcelUuid = ParcelUuid.fromString("ba6d2f1e-9adc-11ee-b9d1-0242ac120002")
69 
70 const val CUSTOM_ID_A = "00:00:00:00:00:AA"
71 const val CUSTOM_ID_B = "00:00:00:00:00:BB"
72 
73 var CUSTOM_ID_INVALID = "A".repeat(1025)
74 
75 const val DEVICE_DISPLAY_NAME_A = "Device A"
76 const val DEVICE_DISPLAY_NAME_B = "Device B"
77 
78 const val ASSOCIATION_ID = 1
79 
<lambda>null80 val SIMPLE_EXECUTOR: Executor by lazy { Executor { it.run() } }
81 
<lambda>null82 val MAIN_THREAD_EXECUTOR: Executor by lazy {
83     Executor {
84         with(Handler.getMain()) { post(it) }
85     }
86 }
87 
<lambda>null88 val BACKGROUND_THREAD_EXECUTOR: Executor by lazy {
89     with(HandlerThread("CdmTestBackgroundThread")) {
90         start()
91         Executor { threadHandler.post(it) }
92     }
93 }
94 
95 val PRIMARY_PROCESS_NAME = ":primary"
96 val SECONDARY_PROCESS_NAME = ":secondary"
97