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