Add nan discovery starting logic
authorWootak Jung <wootak.jung@samsung.com>
Sun, 7 Mar 2021 23:09:16 +0000 (08:09 +0900)
committerWootak Jung <wootak.jung@samsung.com>
Sun, 11 Apr 2021 23:40:16 +0000 (08:40 +0900)
CMakeLists.txt
packaging/tds-provider.spec
src/tds-provider-aware.c

index d92dad154573c69468e08e7416e83b997651793f..6e26665f7cfa3b788d4b38fdaa3406f338df5618 100644 (file)
@@ -21,6 +21,8 @@ SET(PKG_MODULES
        capi-network-bluetooth
        capi-network-wifi-aware
        capi-system-info
+       capi-system-info
+       capi-appfw-app-control
 )
 
 INCLUDE(FindPkgConfig)
index f25739001f3cb3216240e94fb0c92e11f4920443..40107a8bd19971793adf315824d67f00af232fb0 100644 (file)
@@ -14,6 +14,7 @@ BuildRequires:  pkgconfig(gio-unix-2.0)
 BuildRequires:  pkgconfig(capi-network-bluetooth)
 BuildRequires:  pkgconfig(capi-network-wifi-aware)
 BuildRequires:  pkgconfig(capi-system-info)
+BuildRequires:  pkgconfig(capi-appfw-app-control)
 
 Requires(post): /sbin/ldconfig
 Requires(postun): /sbin/ldconfig
index 231bf595215055996126a3fb595985ac4fdbb035..ab6b09989d5668b9883695da9c6aff337768c508 100644 (file)
 #include <gio/gio.h>
 #include <dlog.h>
 #include <wifi-aware.h>
+#include <app_control.h>
 #include "tds-provider-common.h"
 #include "tds-provider-log.h"
 
 static gboolean g_aware_enabled;
 
+static void __tds_aware_start()
+{
+       int ret;
+       app_control_h app_control;
+
+       ret = app_control_create(&app_control);
+       if (ret != APP_CONTROL_ERROR_NONE)
+               TDS_ERR("app_control_create() failed. ret: %d", ret);
+
+       ret = app_control_set_operation(app_control, APP_CONTROL_OPERATION_DEFAULT);
+       if (ret != APP_CONTROL_ERROR_NONE)
+               TDS_ERR("app_control_set_operation() failed. ret: %d", ret);
+
+       ret = app_control_set_app_id(app_control, "org.example.ping-pong");
+       if (ret != APP_CONTROL_ERROR_NONE)
+               TDS_ERR("app_control_set_app_id() failed. ret: %d", ret);
+
+       ret = app_control_send_launch_request(app_control, NULL, NULL);
+       if (ret != APP_CONTROL_ERROR_NONE)
+               TDS_ERR("app_control_send_launch_request() failed. ret: %d", ret);
+
+       ret = app_control_destroy(app_control);
+       if (ret != APP_CONTROL_ERROR_NONE)
+               TDS_ERR("app_control_destroy() failed. ret: %d", ret);
+}
+
 static void __aware_enabled(wifi_aware_error_e error, void *user_data)
 {
        if (error == WIFI_AWARE_ERROR_NONE) {
                TDS_INFO("wifi-aware enabled");
                g_aware_enabled = TRUE;
+               __tds_aware_start();
        }
 }