blob: 9f2fc17ae215488d1cc45654dda2e8db95e1682f [file] [log] [blame]
The Android Open Source Project9066cfe2009-03-03 19:31:44 -08001/**
2 * Copyright (c) 2008, The Android Open Source Project
3 *
Danica Chang6fdd0c62010-08-11 14:54:43 -07004 * 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
The Android Open Source Project9066cfe2009-03-03 19:31:44 -08007 *
Danica Chang6fdd0c62010-08-11 14:54:43 -07008 * http://www.apache.org/licenses/LICENSE-2.0
The Android Open Source Project9066cfe2009-03-03 19:31:44 -08009 *
Danica Chang6fdd0c62010-08-11 14:54:43 -070010 * 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
The Android Open Source Project9066cfe2009-03-03 19:31:44 -080014 * limitations under the License.
15 */
16
17package android.net;
18
19import android.net.NetworkInfo;
Robert Greenwalt42acef32009-08-12 16:08:25 -070020import android.os.IBinder;
The Android Open Source Project9066cfe2009-03-03 19:31:44 -080021
22/**
23 * Interface that answers queries about, and allows changing, the
24 * state of network connectivity.
25 */
26/** {@hide} */
27interface IConnectivityManager
28{
29 void setNetworkPreference(int pref);
30
31 int getNetworkPreference();
32
33 NetworkInfo getActiveNetworkInfo();
34
35 NetworkInfo getNetworkInfo(int networkType);
36
37 NetworkInfo[] getAllNetworkInfo();
38
39 boolean setRadios(boolean onOff);
40
41 boolean setRadio(int networkType, boolean turnOn);
42
Robert Greenwalt42acef32009-08-12 16:08:25 -070043 int startUsingNetworkFeature(int networkType, in String feature,
44 in IBinder binder);
The Android Open Source Project9066cfe2009-03-03 19:31:44 -080045
46 int stopUsingNetworkFeature(int networkType, in String feature);
47
48 boolean requestRouteToHost(int networkType, int hostAddress);
49
Robert Greenwalt585ac0f2010-08-27 09:24:29 -070050 boolean requestRouteToHostAddress(int networkType, in byte[] hostAddress);
51
The Android Open Source Project9066cfe2009-03-03 19:31:44 -080052 boolean getBackgroundDataSetting();
53
54 void setBackgroundDataSetting(boolean allowBackgroundData);
Robert Greenwaltd0e18ff2010-01-26 11:40:34 -080055
Robert Greenwaltc03fa502010-02-23 18:58:05 -080056 boolean getMobileDataEnabled();
57
58 void setMobileDataEnabled(boolean enabled);
59
Robert Greenwalt5a735062010-03-02 17:25:02 -080060 int tether(String iface);
Robert Greenwaltd0e18ff2010-01-26 11:40:34 -080061
Robert Greenwalt5a735062010-03-02 17:25:02 -080062 int untether(String iface);
63
64 int getLastTetherError(String iface);
Robert Greenwaltd0e18ff2010-01-26 11:40:34 -080065
Robert Greenwalt2a091d72010-02-11 18:18:40 -080066 boolean isTetheringSupported();
67
Robert Greenwaltd0e18ff2010-01-26 11:40:34 -080068 String[] getTetherableIfaces();
69
70 String[] getTetheredIfaces();
Robert Greenwalt2a091d72010-02-11 18:18:40 -080071
Robert Greenwalt5a735062010-03-02 17:25:02 -080072 String[] getTetheringErroredIfaces();
73
Robert Greenwalt2a091d72010-02-11 18:18:40 -080074 String[] getTetherableUsbRegexs();
75
76 String[] getTetherableWifiRegexs();
Robert Greenwalt14f2ef42010-06-15 12:19:37 -070077
Danica Chang6fdd0c62010-08-11 14:54:43 -070078 String[] getTetherableBluetoothRegexs();
79
Robert Greenwalt14f2ef42010-06-15 12:19:37 -070080 void requestNetworkTransitionWakelock(in String forWhom);
Robert Greenwaltca4306c2010-09-09 13:15:32 -070081
Robert Greenwaltd7085fc2010-09-08 15:24:47 -070082 void reportInetCondition(int networkType, int percentage);
The Android Open Source Project9066cfe2009-03-03 19:31:44 -080083}