1b1fb5c301120389f0d16e8414ca813ef51f44089Neal Nguyen/* 2b1fb5c301120389f0d16e8414ca813ef51f44089Neal Nguyen * Copyright (C) 2010 The Android Open Source Project 3b1fb5c301120389f0d16e8414ca813ef51f44089Neal Nguyen * 4b1fb5c301120389f0d16e8414ca813ef51f44089Neal Nguyen * Licensed under the Apache License, Version 2.0 (the "License"); 5b1fb5c301120389f0d16e8414ca813ef51f44089Neal Nguyen * you may not use this file except in compliance with the License. 6b1fb5c301120389f0d16e8414ca813ef51f44089Neal Nguyen * You may obtain a copy of the License at 7b1fb5c301120389f0d16e8414ca813ef51f44089Neal Nguyen * 8b1fb5c301120389f0d16e8414ca813ef51f44089Neal Nguyen * http://www.apache.org/licenses/LICENSE-2.0 9b1fb5c301120389f0d16e8414ca813ef51f44089Neal Nguyen * 10b1fb5c301120389f0d16e8414ca813ef51f44089Neal Nguyen * Unless required by applicable law or agreed to in writing, software 11b1fb5c301120389f0d16e8414ca813ef51f44089Neal Nguyen * distributed under the License is distributed on an "AS IS" BASIS, 12b1fb5c301120389f0d16e8414ca813ef51f44089Neal Nguyen * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. 13b1fb5c301120389f0d16e8414ca813ef51f44089Neal Nguyen * See the License for the specific language governing permissions and 14b1fb5c301120389f0d16e8414ca813ef51f44089Neal Nguyen * limitations under the License. 15b1fb5c301120389f0d16e8414ca813ef51f44089Neal Nguyen */ 16b1fb5c301120389f0d16e8414ca813ef51f44089Neal Nguyenpackage com.android.framework.externalsharedpermstestapp; 17b1fb5c301120389f0d16e8414ca813ef51f44089Neal Nguyen 18b1fb5c301120389f0d16e8414ca813ef51f44089Neal Nguyenimport android.bluetooth.BluetoothAdapter; 19b1fb5c301120389f0d16e8414ca813ef51f44089Neal Nguyenimport android.content.Context; 20b1fb5c301120389f0d16e8414ca813ef51f44089Neal Nguyenimport android.location.Location; 21b1fb5c301120389f0d16e8414ca813ef51f44089Neal Nguyenimport android.location.LocationListener; 22b1fb5c301120389f0d16e8414ca813ef51f44089Neal Nguyenimport android.location.LocationManager; 23b1fb5c301120389f0d16e8414ca813ef51f44089Neal Nguyenimport android.os.Bundle; 24b1fb5c301120389f0d16e8414ca813ef51f44089Neal Nguyen 25b1fb5c301120389f0d16e8414ca813ef51f44089Neal Nguyenimport android.util.Log; 26b1fb5c301120389f0d16e8414ca813ef51f44089Neal Nguyen 27b1fb5c301120389f0d16e8414ca813ef51f44089Neal Nguyenimport android.test.InstrumentationTestCase; 28b1fb5c301120389f0d16e8414ca813ef51f44089Neal Nguyen 29b1fb5c301120389f0d16e8414ca813ef51f44089Neal Nguyenpublic class ExternalSharedPermsTest extends InstrumentationTestCase 30b1fb5c301120389f0d16e8414ca813ef51f44089Neal Nguyen{ 31b1fb5c301120389f0d16e8414ca813ef51f44089Neal Nguyen private static final int REQUEST_ENABLE_BT = 2; 32b1fb5c301120389f0d16e8414ca813ef51f44089Neal Nguyen 33b1fb5c301120389f0d16e8414ca813ef51f44089Neal Nguyen /** The use of location manager and bluetooth below are simply to simulate an app that 34b1fb5c301120389f0d16e8414ca813ef51f44089Neal Nguyen * tries to use them, so we can verify whether permissions are granted and accessible. 35b1fb5c301120389f0d16e8414ca813ef51f44089Neal Nguyen * */ 36b1fb5c301120389f0d16e8414ca813ef51f44089Neal Nguyen public void testRunLocationAndBluetooth() 37b1fb5c301120389f0d16e8414ca813ef51f44089Neal Nguyen { 38b1fb5c301120389f0d16e8414ca813ef51f44089Neal Nguyen LocationManager locationManager = (LocationManager)getInstrumentation().getContext( 39b1fb5c301120389f0d16e8414ca813ef51f44089Neal Nguyen ).getSystemService(Context.LOCATION_SERVICE); 40b1fb5c301120389f0d16e8414ca813ef51f44089Neal Nguyen locationManager.requestLocationUpdates(LocationManager.GPS_PROVIDER, 0, 0, 41b1fb5c301120389f0d16e8414ca813ef51f44089Neal Nguyen new LocationListener() { 42b1fb5c301120389f0d16e8414ca813ef51f44089Neal Nguyen public void onLocationChanged(Location location) {} 43b1fb5c301120389f0d16e8414ca813ef51f44089Neal Nguyen public void onProviderDisabled(String provider) {} 44b1fb5c301120389f0d16e8414ca813ef51f44089Neal Nguyen public void onProviderEnabled(String provider) {} 45b1fb5c301120389f0d16e8414ca813ef51f44089Neal Nguyen public void onStatusChanged(String provider, int status, Bundle extras) {} 46b1fb5c301120389f0d16e8414ca813ef51f44089Neal Nguyen } 47b1fb5c301120389f0d16e8414ca813ef51f44089Neal Nguyen ); 48b1fb5c301120389f0d16e8414ca813ef51f44089Neal Nguyen BluetoothAdapter mBluetoothAdapter = BluetoothAdapter.getDefaultAdapter(); 49b1fb5c301120389f0d16e8414ca813ef51f44089Neal Nguyen 50b1fb5c301120389f0d16e8414ca813ef51f44089Neal Nguyen if ((mBluetoothAdapter != null) && (!mBluetoothAdapter.isEnabled())) { 51b1fb5c301120389f0d16e8414ca813ef51f44089Neal Nguyen mBluetoothAdapter.getName(); 52b1fb5c301120389f0d16e8414ca813ef51f44089Neal Nguyen } 53b1fb5c301120389f0d16e8414ca813ef51f44089Neal Nguyen } 54b1fb5c301120389f0d16e8414ca813ef51f44089Neal Nguyen} 55