1/*
2 * Copyright (C) 2023 The Android Open Source Project
3 *
4 * Licensed under the Apache License, Version 2.0 (the "License");
5 * you may not use this file except in compliance with the License.
6 * You may obtain a copy of the License at
7 *
8 *      http://www.apache.org/licenses/LICENSE-2.0
9 *
10 * Unless required by applicable law or agreed to in writing, software
11 * distributed under the License is distributed on an "AS IS" BASIS,
12 * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
13 * See the License for the specific language governing permissions and
14 * limitations under the License.
15 */
16
17syntax = "proto2";
18
19package devicelockcontroller;
20
21option java_package = "com.android.devicelockcontroller.proto";
22option java_multiple_files = true;
23
24enum ConfigurationStatus {
25  CONFIGURATION_STATUS_UNSPECIFIED = 0;
26  // The configuration created by a user passed all validation checks and was
27  // successfully inserted into the database.
28  CONFIGURATION_STATUS_ACTIVE = 1;
29  // The configuration was initially active but the user decided to archive the
30  // configuration. In order to archive the configuration, there has to be no
31  // device assigned to this configuration. Also, a device cannot be assigned an
32  // archived configuration.
33  CONFIGURATION_STATUS_ARCHIVED = 2;
34}
35
36message ConfigurationInfo {
37  // The URL to download the kiosk app for non-GMS devices.
38  // DEPRECATED: This feature has been deprecated. The field will soon be
39  // removed.
40  optional string kiosk_app_download_url = 1 [deprecated = true];
41
42  // The name of the provider of the kiosk app, e.g. "Foo Bar Inc".
43  optional string kiosk_app_provider_name = 2;
44
45  // The package name of the kiosk app, e.g. "com.foo.bar".
46  optional string kiosk_app_package = 3;
47
48  // The checksum used to sign the kiosk app.
49  //
50  // This is for verifying the validity of the kiosk app.
51  // DEPRECATED: This feature has been deprecated. The field will soon be
52  // removed.
53  optional string kiosk_app_signature_checksum = 4 [deprecated = true];
54
55  // The package component of the activity of the kiosk app that the user
56  // would interact when the device is locked (i.e. this activity allows the
57  // user to make a payment), e.g. "com.foo.bar/com.foo.bar.MainActivity".
58  optional string kiosk_app_main_activity = 5;
59
60  // The list of apps that a user can use when the device is locked.
61  repeated string kiosk_app_allowlist_packages = 6;
62
63  // Whether the user can make phone calls when the device is locked.
64  optional bool kiosk_app_enable_outgoing_calls = 7;
65
66  // Whether notifications are shown to the user when the device is locked.
67  optional bool kiosk_app_enable_notifications = 8;
68
69  // Whether installing application from unknown sources is disallowed on this device once
70  // provisioned.
71  optional bool disallow_installing_from_unknown_sources = 9;
72
73  // The URL to the Terms and Conditions of the partner for enrolling in a Device Lock program.
74  optional string terms_and_conditions_url = 10;
75
76  // The URL to the support page the user can use to get help.
77  optional string support_url = 11;
78}
79