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 ConfigurationType { 25 CONFIGURATION_TYPE_UNSPECIFIED = 0; 26 CONFIGURATION_TYPE_FINANCED = 1; 27 CONFIGURATION_TYPE_SUBSIDY = 2; 28} 29 30enum ConfigurationStatus { 31 CONFIGURATION_STATUS_UNSPECIFIED = 0; 32 // The configuration created by a user passed all validation checks and was 33 // successfully inserted into the database. 34 CONFIGURATION_STATUS_ACTIVE = 1; 35 // The configuration was initially active but the user decided to archive the 36 // configuration. In order to archive the configuration, there has to be no 37 // device assigned to this configuration. Also, a device cannot be assigned an 38 // archived configuration. 39 CONFIGURATION_STATUS_ARCHIVED = 2; 40} 41 42message ConfigurationInfo { 43 // The URL to download the kiosk app for non-GMS devices. 44 optional string kiosk_app_download_url = 1; 45 46 // The name of the provider of the kiosk app, e.g. "Foo Bar Inc". 47 optional string kiosk_app_provider_name = 2; 48 49 // The package name of the kiosk app, e.g. "com.foo.bar". 50 optional string kiosk_app_package = 3; 51 52 // The checksum used to sign the kiosk app. 53 // 54 // This is for verifying the validity of the kiosk app. 55 optional string kiosk_app_signature_checksum = 4; 56 57 // The package component of the activity of the kiosk app that the user 58 // would interact when the device is locked (i.e. this activity allows the 59 // user to make a payment), e.g. "com.foo.bar/com.foo.bar.MainActivity". 60 optional string kiosk_app_main_activity = 5; 61 62 // The list of apps that a user can use when the device is locked. 63 repeated string kiosk_app_allowlist_packages = 6; 64 65 // Whether the user can make phone calls when the device is locked. 66 optional bool kiosk_app_enable_outgoing_calls = 7; 67 68 // Whether notifications are shown to the user when the device is locked. 69 optional bool kiosk_app_enable_notifications = 8; 70 71 // Whether installing application from unknown sources is disallowed on this device once 72 // provisioned. 73 optional bool disallow_installing_from_unknown_sources = 9; 74 75 // The URL to the Terms and Conditions of the partner for enrolling in a Device Lock program. 76 optional string terms_and_conditions_url = 10; 77 78 // The URL to the support page the user can use to get help. 79 optional string support_url = 11; 80} 81