1005b228cdfb369d9b3b325884c0337ba5968bf8cNick Pelly/* 2005b228cdfb369d9b3b325884c0337ba5968bf8cNick Pelly * Copyright (C) 2009 The Android Open Source Project 3005b228cdfb369d9b3b325884c0337ba5968bf8cNick Pelly * 4005b228cdfb369d9b3b325884c0337ba5968bf8cNick Pelly * Licensed under the Apache License, Version 2.0 (the "License"); 5005b228cdfb369d9b3b325884c0337ba5968bf8cNick Pelly * you may not use this file except in compliance with the License. 6005b228cdfb369d9b3b325884c0337ba5968bf8cNick Pelly * You may obtain a copy of the License at 7005b228cdfb369d9b3b325884c0337ba5968bf8cNick Pelly * 8005b228cdfb369d9b3b325884c0337ba5968bf8cNick Pelly * http://www.apache.org/licenses/LICENSE-2.0 9005b228cdfb369d9b3b325884c0337ba5968bf8cNick Pelly * 10005b228cdfb369d9b3b325884c0337ba5968bf8cNick Pelly * Unless required by applicable law or agreed to in writing, software 11005b228cdfb369d9b3b325884c0337ba5968bf8cNick Pelly * distributed under the License is distributed on an "AS IS" BASIS, 12005b228cdfb369d9b3b325884c0337ba5968bf8cNick Pelly * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. 13005b228cdfb369d9b3b325884c0337ba5968bf8cNick Pelly * See the License for the specific language governing permissions and 14005b228cdfb369d9b3b325884c0337ba5968bf8cNick Pelly * limitations under the License. 15005b228cdfb369d9b3b325884c0337ba5968bf8cNick Pelly */ 16005b228cdfb369d9b3b325884c0337ba5968bf8cNick Pelly 17005b228cdfb369d9b3b325884c0337ba5968bf8cNick Pellypackage android.bluetooth; 18005b228cdfb369d9b3b325884c0337ba5968bf8cNick Pelly 19005b228cdfb369d9b3b325884c0337ba5968bf8cNick Pellyimport android.annotation.SdkConstant; 20005b228cdfb369d9b3b325884c0337ba5968bf8cNick Pellyimport android.annotation.SdkConstant.SdkConstantType; 21005b228cdfb369d9b3b325884c0337ba5968bf8cNick Pelly 22005b228cdfb369d9b3b325884c0337ba5968bf8cNick Pelly/** 23005b228cdfb369d9b3b325884c0337ba5968bf8cNick Pelly * A helper to show a system "Device Picker" activity to the user. 24005b228cdfb369d9b3b325884c0337ba5968bf8cNick Pelly * 25005b228cdfb369d9b3b325884c0337ba5968bf8cNick Pelly * @hide 26005b228cdfb369d9b3b325884c0337ba5968bf8cNick Pelly */ 27005b228cdfb369d9b3b325884c0337ba5968bf8cNick Pellypublic interface BluetoothDevicePicker { 28005b228cdfb369d9b3b325884c0337ba5968bf8cNick Pelly public static final String EXTRA_NEED_AUTH = 29005b228cdfb369d9b3b325884c0337ba5968bf8cNick Pelly "android.bluetooth.devicepicker.extra.NEED_AUTH"; 30005b228cdfb369d9b3b325884c0337ba5968bf8cNick Pelly public static final String EXTRA_FILTER_TYPE = 31005b228cdfb369d9b3b325884c0337ba5968bf8cNick Pelly "android.bluetooth.devicepicker.extra.FILTER_TYPE"; 32005b228cdfb369d9b3b325884c0337ba5968bf8cNick Pelly public static final String EXTRA_LAUNCH_PACKAGE = 33005b228cdfb369d9b3b325884c0337ba5968bf8cNick Pelly "android.bluetooth.devicepicker.extra.LAUNCH_PACKAGE"; 34005b228cdfb369d9b3b325884c0337ba5968bf8cNick Pelly public static final String EXTRA_LAUNCH_CLASS = 35005b228cdfb369d9b3b325884c0337ba5968bf8cNick Pelly "android.bluetooth.devicepicker.extra.DEVICE_PICKER_LAUNCH_CLASS"; 36005b228cdfb369d9b3b325884c0337ba5968bf8cNick Pelly 37005b228cdfb369d9b3b325884c0337ba5968bf8cNick Pelly /** 38005b228cdfb369d9b3b325884c0337ba5968bf8cNick Pelly * Broadcast when one BT device is selected from BT device picker screen. 39f51eadaf1f83abfe16a609a4ded6d789494689b2Jake Hamby * Selected {@link BluetoothDevice} is returned in extra data named 40f51eadaf1f83abfe16a609a4ded6d789494689b2Jake Hamby * {@link BluetoothDevice#EXTRA_DEVICE}. 41005b228cdfb369d9b3b325884c0337ba5968bf8cNick Pelly */ 42005b228cdfb369d9b3b325884c0337ba5968bf8cNick Pelly @SdkConstant(SdkConstantType.BROADCAST_INTENT_ACTION) 43005b228cdfb369d9b3b325884c0337ba5968bf8cNick Pelly public static final String ACTION_DEVICE_SELECTED = 44005b228cdfb369d9b3b325884c0337ba5968bf8cNick Pelly "android.bluetooth.devicepicker.action.DEVICE_SELECTED"; 45005b228cdfb369d9b3b325884c0337ba5968bf8cNick Pelly 46005b228cdfb369d9b3b325884c0337ba5968bf8cNick Pelly /** 47005b228cdfb369d9b3b325884c0337ba5968bf8cNick Pelly * Broadcast when someone want to select one BT device from devices list. 48005b228cdfb369d9b3b325884c0337ba5968bf8cNick Pelly * This intent contains below extra data: 49005b228cdfb369d9b3b325884c0337ba5968bf8cNick Pelly * - {@link #EXTRA_NEED_AUTH} (boolean): if need authentication 50005b228cdfb369d9b3b325884c0337ba5968bf8cNick Pelly * - {@link #EXTRA_FILTER_TYPE} (int): what kinds of device should be 51005b228cdfb369d9b3b325884c0337ba5968bf8cNick Pelly * listed 52005b228cdfb369d9b3b325884c0337ba5968bf8cNick Pelly * - {@link #EXTRA_LAUNCH_PACKAGE} (string): where(which package) this 53005b228cdfb369d9b3b325884c0337ba5968bf8cNick Pelly * intent come from 54005b228cdfb369d9b3b325884c0337ba5968bf8cNick Pelly * - {@link #EXTRA_LAUNCH_CLASS} (string): where(which class) this intent 55005b228cdfb369d9b3b325884c0337ba5968bf8cNick Pelly * come from 56005b228cdfb369d9b3b325884c0337ba5968bf8cNick Pelly */ 57005b228cdfb369d9b3b325884c0337ba5968bf8cNick Pelly @SdkConstant(SdkConstantType.BROADCAST_INTENT_ACTION) 58005b228cdfb369d9b3b325884c0337ba5968bf8cNick Pelly public static final String ACTION_LAUNCH = 59005b228cdfb369d9b3b325884c0337ba5968bf8cNick Pelly "android.bluetooth.devicepicker.action.LAUNCH"; 60005b228cdfb369d9b3b325884c0337ba5968bf8cNick Pelly 61005b228cdfb369d9b3b325884c0337ba5968bf8cNick Pelly /** Ask device picker to show all kinds of BT devices */ 62005b228cdfb369d9b3b325884c0337ba5968bf8cNick Pelly public static final int FILTER_TYPE_ALL = 0; 63005b228cdfb369d9b3b325884c0337ba5968bf8cNick Pelly /** Ask device picker to show BT devices that support AUDIO profiles */ 64005b228cdfb369d9b3b325884c0337ba5968bf8cNick Pelly public static final int FILTER_TYPE_AUDIO = 1; 65005b228cdfb369d9b3b325884c0337ba5968bf8cNick Pelly /** Ask device picker to show BT devices that support Object Transfer */ 66005b228cdfb369d9b3b325884c0337ba5968bf8cNick Pelly public static final int FILTER_TYPE_TRANSFER = 2; 676fdd0c6274c81b337ad35b70480f881daf7354c3Danica Chang /** Ask device picker to show BT devices that support 686fdd0c6274c81b337ad35b70480f881daf7354c3Danica Chang * Personal Area Networking User (PANU) profile*/ 696fdd0c6274c81b337ad35b70480f881daf7354c3Danica Chang public static final int FILTER_TYPE_PANU = 3; 706fdd0c6274c81b337ad35b70480f881daf7354c3Danica Chang /** Ask device picker to show BT devices that support Network Access Point (NAP) profile */ 716fdd0c6274c81b337ad35b70480f881daf7354c3Danica Chang public static final int FILTER_TYPE_NAP = 4; 72005b228cdfb369d9b3b325884c0337ba5968bf8cNick Pelly} 73