All Downloads are FREE. Search and download functionalities are using the official Maven repository.

src.android.provider.SettingsSlicesContract Maven / Gradle / Ivy

/*
 * Copyright (C) 2018 The Android Open Source Project
 *
 * Licensed under the Apache License, Version 2.0 (the "License");
 * you may not use this file except in compliance with the License.
 * You may obtain a copy of the License at
 *
 *      http://www.apache.org/licenses/LICENSE-2.0
 *
 * Unless required by applicable law or agreed to in writing, software
 * distributed under the License is distributed on an "AS IS" BASIS,
 * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
 * See the License for the specific language governing permissions and
 * limitations under the License.
 */

package android.provider;

import android.content.ContentResolver;
import android.net.Uri;

/**
 * Provides a contract for platform-supported Settings {@link android.app.slice.Slice Slices}.
 * 

* Contains definitions for the supported {@link android.app.slice.SliceProvider SliceProvider} * authority, authority {@link Uri}, and key constants. *

* {@link android.app.slice.Slice Slice} presenters interested in learning meta-data about the * {@link android.app.slice.Slice Slice} should read the {@link android.app.slice.Slice Slice} * object at runtime. *

* {@link Uri} builder example: *

 * Uri wifiActionUri = BASE_URI
 *         .buildUpon()
 *         .appendPath(PATH_SETTING_ACTION)
 *         .appendPath(KEY_WIFI)
 *         .build();
 * Uri bluetoothIntentUri = BASE_URI
 *         .buildUpon()
 *         .appendPath(PATH_SETTING_INTENT)
 *         .appendPath(KEY_BLUETOOTH)
 *         .build();
 * 
*/ public class SettingsSlicesContract { private SettingsSlicesContract() { } /** * Authority for platform Settings Slices. */ public static final String AUTHORITY = "android.settings.slices"; /** * A content:// style uri to the Settings Slices authority, {@link #AUTHORITY}. */ public static final Uri BASE_URI = new Uri.Builder() .scheme(ContentResolver.SCHEME_CONTENT) .authority(AUTHORITY) .build(); /** * {@link Uri} path indicating that the requested {@link android.app.slice.Slice Slice} should * have inline controls for the corresponding setting. *

* This path will only contain Slices defined by keys in this class. */ public static final String PATH_SETTING_ACTION = "action"; /** * {@link Uri} path indicating that the requested {@link android.app.slice.Slice Slice} should * be {@link android.content.Intent Intent}-only. *

* {@link android.app.slice.Slice Slices} with actions should use the {@link * #PATH_SETTING_ACTION} path. *

* This path will only contain Slices defined by keys in this class */ public static final String PATH_SETTING_INTENT = "intent"; /** * {@link Uri} key for the Airplane Mode setting. */ public static final String KEY_AIRPLANE_MODE = "airplane_mode"; /** * {@link Uri} key for the Battery Saver setting. */ public static final String KEY_BATTERY_SAVER = "battery_saver"; /** * {@link Uri} key for the Bluetooth setting. */ public static final String KEY_BLUETOOTH = "bluetooth"; /** * {@link Uri} key for the Location setting. */ public static final String KEY_LOCATION = "location"; /** * {@link Uri} key for the Wi-fi setting. */ public static final String KEY_WIFI = "wifi"; }





© 2015 - 2025 Weber Informatics LLC | Privacy Policy