1<?xml version="1.0" encoding="utf-8"?> 2<!-- 3 ~ Copyright (C) 2017 The Android Open Source Project 4 ~ 5 ~ Licensed under the Apache License, Version 2.0 (the "License"); 6 ~ you may not use this file except in compliance with the License. 7 ~ You may obtain a copy of the License at 8 ~ 9 ~ http://www.apache.org/licenses/LICENSE-2.0 10 ~ 11 ~ Unless required by applicable law or agreed to in writing, software 12 ~ distributed under the License is distributed on an "AS IS" BASIS, 13 ~ WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. 14 ~ See the License for the specific language governing permissions and 15 ~ limitations under the License. 16 --> 17 18<ScrollView 19 xmlns:tools="http://schemas.android.com/tools" 20 xmlns:android="http://schemas.android.com/apk/res/android" 21 android:layout_width="match_parent" 22 android:layout_height="match_parent" 23 tools:context="androidx.work.integration.testapp.MainActivity"> 24 25 <LinearLayout 26 android:layout_width="match_parent" 27 android:layout_height="wrap_content" 28 android:orientation="vertical"> 29 30 <Button android:id="@+id/enqueue_infinite_work_charging" 31 android:layout_width="wrap_content" 32 android:layout_height="wrap_content" 33 android:layout_marginLeft="16dp" 34 android:layout_marginStart="16dp" 35 android:layout_marginTop="16dp" 36 android:text="Infinite Work + Charging Constraint"/> 37 38 <Button android:id="@+id/enqueue_infinite_work_network" 39 android:layout_width="wrap_content" 40 android:layout_height="wrap_content" 41 android:layout_marginLeft="16dp" 42 android:layout_marginStart="16dp" 43 android:layout_marginTop="12dp" 44 android:text="Infinite Work + Network Constraint"/> 45 46 <Button android:id="@+id/enqueue_battery_not_low" 47 android:layout_width="wrap_content" 48 android:layout_height="wrap_content" 49 android:layout_marginLeft="16dp" 50 android:layout_marginStart="16dp" 51 android:layout_marginTop="16dp" 52 android:text="Enqueue Battery Not Low Work"/> 53 54 <Button android:id="@+id/sherlock_holmes" 55 android:layout_width="wrap_content" 56 android:layout_height="wrap_content" 57 android:layout_marginLeft="16dp" 58 android:layout_marginStart="16dp" 59 android:layout_marginTop="12dp" 60 android:text="Sherlock Holmes"/> 61 62 <Button android:id="@+id/image_processing" 63 android:layout_width="wrap_content" 64 android:layout_height="wrap_content" 65 android:layout_marginLeft="16dp" 66 android:layout_marginStart="16dp" 67 android:layout_marginTop="12dp" 68 android:text="Image Processing"/> 69 70 <Button android:id="@+id/image_uri" 71 android:layout_width="wrap_content" 72 android:layout_height="wrap_content" 73 android:layout_marginLeft="16dp" 74 android:layout_marginStart="16dp" 75 android:layout_marginTop="12dp" 76 android:text="Observe Image URI"/> 77 78 <EditText android:id="@+id/delay_in_ms" 79 android:layout_width="wrap_content" 80 android:layout_height="wrap_content" 81 android:layout_marginLeft="16dp" 82 android:layout_marginStart="16dp" 83 android:layout_marginTop="12dp" 84 android:ems="10" 85 android:hint="Delay in ms" 86 android:inputType="number" 87 android:singleLine="true" 88 android:text="0"/> 89 90 91 <LinearLayout 92 android:layout_width="wrap_content" 93 android:layout_height="wrap_content" 94 android:orientation="horizontal"> 95 96 <Button android:id="@+id/schedule_delay" 97 android:layout_width="wrap_content" 98 android:layout_height="wrap_content" 99 android:layout_marginLeft="16dp" 100 android:layout_marginStart="16dp" 101 android:layout_marginTop="12dp" 102 android:text="Schedule w/ Delay"/> 103 104 <Button android:id="@+id/coroutine_sleep" 105 android:layout_width="wrap_content" 106 android:layout_height="wrap_content" 107 android:layout_marginLeft="16dp" 108 android:layout_marginStart="16dp" 109 android:layout_marginTop="12dp" 110 android:text="Coroutine Sleep"/> 111 112 </LinearLayout> 113 114 <Button android:id="@+id/coroutine_cancel" 115 android:layout_width="wrap_content" 116 android:layout_height="wrap_content" 117 android:layout_marginLeft="16dp" 118 android:layout_marginStart="16dp" 119 android:layout_marginTop="12dp" 120 android:text="Coroutine Cancel"/> 121 122 <Button android:text="@string/enqueue_periodic_work" 123 android:layout_width="wrap_content" 124 android:layout_height="wrap_content" 125 android:layout_marginLeft="16dp" 126 android:layout_marginStart="16dp" 127 android:id="@+id/enqueue_periodic_work" 128 android:layout_marginTop="12dp"/> 129 130 <Button android:text="@string/enqueue_periodic_work_flex" 131 android:layout_width="wrap_content" 132 android:layout_height="wrap_content" 133 android:layout_marginLeft="16dp" 134 android:layout_marginStart="16dp" 135 android:id="@+id/enqueue_periodic_work_flex" 136 android:layout_marginTop="12dp"/> 137 138 <Button android:text="@string/enqueue_periodic_initial_delay" 139 android:layout_width="wrap_content" 140 android:layout_height="wrap_content" 141 android:layout_marginLeft="16dp" 142 android:layout_marginStart="16dp" 143 android:id="@+id/enqueue_periodic_initial_delay" 144 android:layout_marginTop="12dp"/> 145 146 <LinearLayout 147 android:layout_width="wrap_content" 148 android:layout_height="wrap_content" 149 android:orientation="horizontal"> 150 151 <Button android:text="@string/loop_unique_work" 152 android:layout_width="wrap_content" 153 android:layout_height="wrap_content" 154 android:layout_marginLeft="16dp" 155 android:layout_marginStart="16dp" 156 android:id="@+id/begin_unique_work_loop" 157 android:layout_marginTop="12dp"/> 158 159 <CheckBox android:text="@string/keep" 160 android:layout_width="wrap_content" 161 android:layout_height="wrap_content" 162 android:id="@+id/keep" 163 android:layout_marginLeft="8dp" 164 android:layout_marginStart="8dp" 165 android:layout_marginTop="8dp" 166 android:layout_marginBottom="8dp"/> 167 168 </LinearLayout> 169 170 <Button android:text="@string/enqueue_lots_of_work" 171 android:layout_width="wrap_content" 172 android:layout_height="wrap_content" 173 android:layout_marginLeft="16dp" 174 android:layout_marginStart="16dp" 175 android:id="@+id/enqueue_lots_of_work" 176 android:layout_marginTop="12dp"/> 177 178 <Button android:text="@string/exploding_work" 179 android:layout_width="wrap_content" 180 android:layout_height="wrap_content" 181 android:id="@+id/exploding_work" 182 android:layout_marginTop="12dp" 183 android:layout_marginLeft="16dp" 184 android:layout_marginStart="16dp"/> 185 186 <Button android:text="@string/replace_completed_work" 187 android:layout_width="wrap_content" 188 android:layout_height="wrap_content" 189 android:id="@+id/replace_completed_work" 190 android:layout_marginTop="12dp" 191 android:layout_marginLeft="16dp" 192 android:layout_marginStart="16dp"/> 193 194 <Button android:text="@string/run_retry_worker" 195 android:layout_width="wrap_content" 196 android:layout_height="wrap_content" 197 android:id="@+id/run_retry_worker" 198 android:layout_marginTop="12dp" 199 android:layout_marginLeft="16dp" 200 android:layout_marginStart="16dp"/> 201 202 <Button android:text="@string/run_recursive_worker" 203 android:layout_width="wrap_content" 204 android:layout_height="wrap_content" 205 android:id="@+id/run_recursive_worker" 206 android:layout_marginTop="12dp" 207 android:layout_marginLeft="16dp" 208 android:layout_marginStart="16dp"/> 209 210 <Button android:text="@string/run_constraint_tracking_worker" 211 android:layout_width="wrap_content" 212 android:layout_height="wrap_content" 213 android:id="@+id/run_constraint_tracking_worker" 214 android:layout_marginTop="12dp" 215 android:layout_marginLeft="16dp" 216 android:layout_marginStart="16dp"/> 217 218 <Button android:text="@string/cancel_constraint_tracking_worker" 219 android:layout_width="wrap_content" 220 android:layout_height="wrap_content" 221 android:id="@+id/cancel_constraint_tracking_worker" 222 android:layout_marginTop="12dp" 223 android:layout_marginLeft="16dp" 224 android:layout_marginStart="16dp"/> 225 226 <Button android:text="@string/run_foreground_worker" 227 android:layout_width="wrap_content" 228 android:layout_height="wrap_content" 229 android:id="@+id/run_foreground_worker" 230 android:layout_marginTop="12dp" 231 android:layout_marginLeft="16dp" 232 android:layout_marginStart="16dp"/> 233 234 <Button android:text="@string/run_foreground_worker_network_request" 235 android:layout_width="wrap_content" 236 android:layout_height="wrap_content" 237 android:id="@+id/run_foreground_worker_network_request" 238 android:layout_marginTop="12dp" 239 android:layout_marginLeft="16dp" 240 android:layout_marginStart="16dp"/> 241 242 <Button android:text="@string/run_foreground_worker_location" 243 android:layout_width="wrap_content" 244 android:layout_height="wrap_content" 245 android:id="@+id/run_foreground_worker_location" 246 android:layout_marginTop="12dp" 247 android:layout_marginLeft="16dp" 248 android:layout_marginStart="16dp"/> 249 250 <Button android:text="@string/cancel_foreground_worker" 251 android:layout_width="wrap_content" 252 android:layout_height="wrap_content" 253 android:id="@+id/cancel_foreground_worker" 254 android:layout_marginTop="12dp" 255 android:layout_marginLeft="16dp" 256 android:layout_marginStart="16dp"/> 257 258 <Button android:text="@string/cancel_foreground_worker_intent" 259 android:layout_width="wrap_content" 260 android:layout_height="wrap_content" 261 android:id="@+id/cancel_foreground_worker_intent" 262 android:layout_marginTop="12dp" 263 android:layout_marginLeft="16dp" 264 android:layout_marginStart="16dp"/> 265 266 <Button android:text="@string/enqueue_work_multi_process" 267 android:layout_width="wrap_content" 268 android:layout_height="wrap_content" 269 android:id="@+id/enqueue_work_multi_process" 270 android:layout_marginTop="12dp" 271 android:layout_marginLeft="16dp" 272 android:layout_marginStart="16dp"/> 273 274 <Button android:text="@string/enqueue_continuation_multi_process" 275 android:layout_width="wrap_content" 276 android:layout_height="wrap_content" 277 android:id="@+id/enqueue_continuation_multi_process" 278 android:layout_marginTop="12dp" 279 android:layout_marginLeft="16dp" 280 android:layout_marginStart="16dp"/> 281 282 <Button android:text="@string/cancel_work_tag_multiprocess" 283 android:layout_width="wrap_content" 284 android:layout_height="wrap_content" 285 android:id="@+id/cancel_work_tag_multiprocess" 286 android:layout_marginTop="12dp" 287 android:layout_marginLeft="16dp" 288 android:layout_marginStart="16dp"/> 289 290 <Button android:text="@string/cancel_all_work_multiprocess" 291 android:layout_width="wrap_content" 292 android:layout_height="wrap_content" 293 android:id="@+id/cancel_all_work_multiprocess" 294 android:layout_marginTop="12dp" 295 android:layout_marginLeft="16dp" 296 android:layout_marginStart="16dp"/> 297 298 <Button android:text="@string/query_work_multiprocess" 299 android:layout_width="wrap_content" 300 android:layout_height="wrap_content" 301 android:id="@+id/query_work_multiprocess" 302 android:layout_marginTop="12dp" 303 android:layout_marginLeft="16dp" 304 android:layout_marginStart="16dp"/> 305 306 <Button android:text="@string/enqueue_periodic_work_multiprocess" 307 android:layout_width="wrap_content" 308 android:layout_height="wrap_content" 309 android:id="@+id/enqueue_periodic_work_multiprocess" 310 android:layout_marginTop="12dp" 311 android:layout_marginLeft="16dp" 312 android:layout_marginStart="16dp"/> 313 314 <Button android:text="@string/update_periodic_work_multiprocess" 315 android:layout_width="wrap_content" 316 android:layout_height="wrap_content" 317 android:id="@+id/update_periodic_work_multiprocess" 318 android:layout_marginTop="12dp" 319 android:layout_marginLeft="16dp" 320 android:layout_marginStart="16dp"/> 321 322 <Button android:text="@string/run_remote_worker_1" 323 android:layout_width="wrap_content" 324 android:layout_height="wrap_content" 325 android:id="@+id/enqueue_remote_worker_1" 326 android:layout_marginTop="12dp" 327 android:layout_marginLeft="16dp" 328 android:layout_marginStart="16dp"/> 329 330 <Button android:text="@string/run_remote_worker_2" 331 android:layout_width="wrap_content" 332 android:layout_height="wrap_content" 333 android:id="@+id/enqueue_remote_worker_2" 334 android:layout_marginTop="12dp" 335 android:layout_marginLeft="16dp" 336 android:layout_marginStart="16dp"/> 337 338 <Button android:text="@string/cancel_remote_workers" 339 android:layout_width="wrap_content" 340 android:layout_height="wrap_content" 341 android:id="@+id/cancel_remote_workers" 342 android:layout_marginTop="12dp" 343 android:layout_marginLeft="16dp" 344 android:layout_marginStart="16dp"/> 345 346 <Button android:text="@string/crash_app" 347 android:layout_width="wrap_content" 348 android:layout_height="wrap_content" 349 android:id="@+id/crash_app" 350 android:layout_marginTop="12dp" 351 android:layout_marginLeft="16dp" 352 android:layout_marginStart="16dp"/> 353 354 <Button android:text="@string/create_hundred_job_exception" 355 android:layout_width="wrap_content" 356 android:layout_height="wrap_content" 357 android:id="@+id/create_hundred_job_exception" 358 android:layout_marginTop="12dp" 359 android:layout_marginLeft="16dp" 360 android:layout_marginStart="16dp"/> 361 362 <Button android:text="@string/stress_test" 363 android:layout_width="wrap_content" 364 android:layout_height="wrap_content" 365 android:id="@+id/stress_test" 366 android:layout_marginTop="12dp" 367 android:layout_marginLeft="16dp" 368 android:layout_marginStart="16dp"/> 369 370 <Button android:text="@string/enqueue_network_request" 371 android:layout_width="wrap_content" 372 android:layout_height="wrap_content" 373 android:id="@+id/enqueue_network_request" 374 android:layout_marginTop="12dp" 375 android:layout_marginLeft="16dp" 376 android:layout_marginStart="16dp"/> 377 378 </LinearLayout> 379</ScrollView> 380