IWifiAwareManager.aidl revision 3855370c24b575e0943a9a3c146fda980cd71e24
18340beca6282093d9932ea30ef010024f75c689aEtan Cohen/* 28340beca6282093d9932ea30ef010024f75c689aEtan Cohen * Copyright (C) 2016 The Android Open Source Project 320d329b08df7d1a94e6caee781f09e812a79c913Etan Cohen * 420d329b08df7d1a94e6caee781f09e812a79c913Etan Cohen * Licensed under the Apache License, Version 2.0 (the "License"); 520d329b08df7d1a94e6caee781f09e812a79c913Etan Cohen * you may not use this file except in compliance with the License. 620d329b08df7d1a94e6caee781f09e812a79c913Etan Cohen * You may obtain a copy of the License at 720d329b08df7d1a94e6caee781f09e812a79c913Etan Cohen * 88340beca6282093d9932ea30ef010024f75c689aEtan Cohen * http://www.apache.org/licenses/LICENSE-2.0 920d329b08df7d1a94e6caee781f09e812a79c913Etan Cohen * 1020d329b08df7d1a94e6caee781f09e812a79c913Etan Cohen * Unless required by applicable law or agreed to in writing, software 1120d329b08df7d1a94e6caee781f09e812a79c913Etan Cohen * distributed under the License is distributed on an "AS IS" BASIS, 1220d329b08df7d1a94e6caee781f09e812a79c913Etan Cohen * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. 1320d329b08df7d1a94e6caee781f09e812a79c913Etan Cohen * See the License for the specific language governing permissions and 1420d329b08df7d1a94e6caee781f09e812a79c913Etan Cohen * limitations under the License. 1520d329b08df7d1a94e6caee781f09e812a79c913Etan Cohen */ 1620d329b08df7d1a94e6caee781f09e812a79c913Etan Cohen 1720d329b08df7d1a94e6caee781f09e812a79c913Etan Cohenpackage android.net.wifi.nan; 1820d329b08df7d1a94e6caee781f09e812a79c913Etan Cohen 1920d329b08df7d1a94e6caee781f09e812a79c913Etan Cohenimport android.app.PendingIntent; 2020d329b08df7d1a94e6caee781f09e812a79c913Etan Cohen 2120d329b08df7d1a94e6caee781f09e812a79c913Etan Cohenimport android.net.wifi.nan.ConfigRequest; 223855370c24b575e0943a9a3c146fda980cd71e24Etan Cohenimport android.net.wifi.nan.IWifiNanDiscoverySessionCallback; 2300abb43588578e41e1a581c28ff96cc70a293361Etan Cohenimport android.net.wifi.nan.IWifiNanEventCallback; 24b29bbcc54ca5866a1f8db420231cac9d4f9c3280Etan Cohenimport android.net.wifi.nan.PublishConfig; 25b29bbcc54ca5866a1f8db420231cac9d4f9c3280Etan Cohenimport android.net.wifi.nan.SubscribeConfig; 26447b03233443dcae816bf3dfaaee5ec0fb77a2f4Etan Cohenimport android.net.wifi.RttManager; 2720d329b08df7d1a94e6caee781f09e812a79c913Etan Cohen 2820d329b08df7d1a94e6caee781f09e812a79c913Etan Cohen/** 2920d329b08df7d1a94e6caee781f09e812a79c913Etan Cohen * Interface that WifiNanService implements 3020d329b08df7d1a94e6caee781f09e812a79c913Etan Cohen * 3120d329b08df7d1a94e6caee781f09e812a79c913Etan Cohen * {@hide} 3220d329b08df7d1a94e6caee781f09e812a79c913Etan Cohen */ 3320d329b08df7d1a94e6caee781f09e812a79c913Etan Coheninterface IWifiNanManager 3420d329b08df7d1a94e6caee781f09e812a79c913Etan Cohen{ 355f47bf21990ffa92747d7a012d9ec9034b813f28Etan Cohen // NAN API 365f47bf21990ffa92747d7a012d9ec9034b813f28Etan Cohen void enableUsage(); 375f47bf21990ffa92747d7a012d9ec9034b813f28Etan Cohen void disableUsage(); 385f47bf21990ffa92747d7a012d9ec9034b813f28Etan Cohen boolean isUsageEnabled(); 395f47bf21990ffa92747d7a012d9ec9034b813f28Etan Cohen 4020d329b08df7d1a94e6caee781f09e812a79c913Etan Cohen // client API 414503dc6fbaafab5341b91116f552f666d2f9b532Etan Cohen int connect(in IBinder binder, in String callingPackage, in IWifiNanEventCallback callback, 4251181fb85d490b16fa3b8cff5ee3c906d148533bEtan Cohen in ConfigRequest configRequest); 43982a045a8b65ac6552d0abe7c9204eac2a405b20Etan Cohen void disconnect(int clientId, in IBinder binder); 4420d329b08df7d1a94e6caee781f09e812a79c913Etan Cohen 453855370c24b575e0943a9a3c146fda980cd71e24Etan Cohen void publish(int clientId, in PublishConfig publishConfig, 463855370c24b575e0943a9a3c146fda980cd71e24Etan Cohen in IWifiNanDiscoverySessionCallback callback); 47231859c2aa3930892a81b2d3cc368a79fbcfaed0Etan Cohen void subscribe(int clientId, in SubscribeConfig subscribeConfig, 483855370c24b575e0943a9a3c146fda980cd71e24Etan Cohen in IWifiNanDiscoverySessionCallback callback); 49231859c2aa3930892a81b2d3cc368a79fbcfaed0Etan Cohen 5020d329b08df7d1a94e6caee781f09e812a79c913Etan Cohen // session API 51231859c2aa3930892a81b2d3cc368a79fbcfaed0Etan Cohen void updatePublish(int clientId, int sessionId, in PublishConfig publishConfig); 52231859c2aa3930892a81b2d3cc368a79fbcfaed0Etan Cohen void updateSubscribe(int clientId, int sessionId, in SubscribeConfig subscribeConfig); 53ee58a6828511df3eda59051b882834a8e0260d3bEtan Cohen void sendMessage(int clientId, int sessionId, int peerId, in byte[] message, int messageId, 54ee58a6828511df3eda59051b882834a8e0260d3bEtan Cohen int retryCount); 55231859c2aa3930892a81b2d3cc368a79fbcfaed0Etan Cohen void terminateSession(int clientId, int sessionId); 56447b03233443dcae816bf3dfaaee5ec0fb77a2f4Etan Cohen int startRanging(int clientId, int sessionId, in RttManager.ParcelableRttParams parms); 5720d329b08df7d1a94e6caee781f09e812a79c913Etan Cohen} 58