aboutsummaryrefslogtreecommitdiff
diff options
context:
space:
mode:
-rw-r--r--xbmc/addons/kodi-dev-kit/include/kodi/c-api/CMakeLists.txt4
-rw-r--r--xbmc/addons/kodi-dev-kit/include/kodi/c-api/platform/android/system.h34
-rw-r--r--xbmc/addons/kodi-dev-kit/include/kodi/platform/android/System.h27
3 files changed, 42 insertions, 23 deletions
diff --git a/xbmc/addons/kodi-dev-kit/include/kodi/c-api/CMakeLists.txt b/xbmc/addons/kodi-dev-kit/include/kodi/c-api/CMakeLists.txt
index 5db93daa01..091e0fe5b8 100644
--- a/xbmc/addons/kodi-dev-kit/include/kodi/c-api/CMakeLists.txt
+++ b/xbmc/addons/kodi-dev-kit/include/kodi/c-api/CMakeLists.txt
@@ -4,6 +4,10 @@ set(HEADERS addon_base.h
general.h
network.h)
+if(CORE_SYSTEM_NAME STREQUAL android)
+ list(APPEND SOURCES platform/android/system.h)
+endif()
+
if(NOT ENABLE_STATIC_LIBS)
core_add_library(addons_kodi-dev-kit_include_kodi_c-api)
endif()
diff --git a/xbmc/addons/kodi-dev-kit/include/kodi/c-api/platform/android/system.h b/xbmc/addons/kodi-dev-kit/include/kodi/c-api/platform/android/system.h
new file mode 100644
index 0000000000..e515d2c56b
--- /dev/null
+++ b/xbmc/addons/kodi-dev-kit/include/kodi/c-api/platform/android/system.h
@@ -0,0 +1,34 @@
+/*
+ * Copyright (C) 2005-2020 Team Kodi
+ * This file is part of Kodi - https://kodi.tv
+ *
+ * SPDX-License-Identifier: GPL-2.0-or-later
+ * See LICENSES/README.md for more information.
+ */
+
+#pragma once
+
+#ifndef C_API_PLATFORM_ANDROID_H
+#define C_API_PLATFORM_ANDROID_H
+
+#define INTERFACE_ANDROID_SYSTEM_NAME "ANDROID_SYSTEM"
+#define INTERFACE_ANDROID_SYSTEM_VERSION "1.0.1"
+#define INTERFACE_ANDROID_SYSTEM_VERSION_MIN "1.0.1"
+
+#ifdef __cplusplus
+extern "C"
+{
+#endif /* __cplusplus */
+
+ struct AddonToKodiFuncTable_android_system
+ {
+ void* (*get_jni_env)();
+ int (*get_sdk_version)();
+ const char *(*get_class_name)();
+ };
+
+#ifdef __cplusplus
+}
+#endif /* __cplusplus */
+
+#endif /* !C_API_PLATFORM_ANDROID_H */
diff --git a/xbmc/addons/kodi-dev-kit/include/kodi/platform/android/System.h b/xbmc/addons/kodi-dev-kit/include/kodi/platform/android/System.h
index ef2d728892..0520380a82 100644
--- a/xbmc/addons/kodi-dev-kit/include/kodi/platform/android/System.h
+++ b/xbmc/addons/kodi-dev-kit/include/kodi/platform/android/System.h
@@ -9,29 +9,7 @@
#pragma once
#include "../../AddonBase.h"
-
-/*
- * For interface between add-on and kodi.
- *
- * This structure defines the addresses of functions stored inside Kodi which
- * are then available for the add-on to call
- *
- * All function pointers there are used by the C++ interface functions below.
- * You find the set of them on xbmc/addons/interfaces/General.cpp
- *
- * Note: For add-on development itself this is not needed
- */
-
-static const char* INTERFACE_ANDROID_SYSTEM_NAME = "ANDROID_SYSTEM";
-static const char* INTERFACE_ANDROID_SYSTEM_VERSION = "1.0.1";
-static const char* INTERFACE_ANDROID_SYSTEM_VERSION_MIN = "1.0.1";
-
-struct AddonToKodiFuncTable_android_system
-{
- void* (*get_jni_env)();
- int (*get_sdk_version)();
- const char *(*get_class_name)();
-};
+#include "../../c-api/platform/android/system.h"
//==============================================================================
///
@@ -43,10 +21,12 @@ struct AddonToKodiFuncTable_android_system
///
//------------------------------------------------------------------------------
+#ifdef __cplusplus
namespace kodi
{
namespace platform
{
+
class ATTRIBUTE_HIDDEN CInterfaceAndroidSystem
{
public:
@@ -112,3 +92,4 @@ private:
} /* namespace platform */
} /* namespace kodi */
+#endif /* __cplusplus */