Adding iotjs template into SDK extension. 74/182474/1
authorwchang kim <wchang.kim@samsung.com>
Mon, 25 Jun 2018 10:19:27 +0000 (19:19 +0900)
committerwchang kim <wchang.kim@samsung.com>
Mon, 25 Jun 2018 10:19:27 +0000 (19:19 +0900)
Change-Id: I60a7ec02d9eeaea3aeac3cdc1811509b8d00c08a

14 files changed:
config-sdk/extension/core-add-ons/template/samples/Template/Native/IoTjsApp/description.xml [new file with mode: 0755]
config-sdk/extension/core-add-ons/template/samples/Template/Native/IoTjsApp/ic_l_service.png [new file with mode: 0644]
config-sdk/extension/core-add-ons/template/samples/Template/Native/IoTjsApp/ic_m_service_n.png [new file with mode: 0644]
config-sdk/extension/core-add-ons/template/samples/Template/Native/IoTjsApp/ic_m_service_s.png [new file with mode: 0644]
config-sdk/extension/core-add-ons/template/samples/Template/Native/IoTjsApp/ic_s_service.png [new file with mode: 0644]
config-sdk/extension/core-add-ons/template/samples/Template/Native/IoTjsApp/project/inc/main.h [new file with mode: 0644]
config-sdk/extension/core-add-ons/template/samples/Template/Native/IoTjsApp/project/project_def.prop [new file with mode: 0644]
config-sdk/extension/core-add-ons/template/samples/Template/Native/IoTjsApp/project/res/index.js [new file with mode: 0644]
config-sdk/extension/core-add-ons/template/samples/Template/Native/IoTjsApp/project/src/main.c [new file with mode: 0644]
config-sdk/extension/core-add-ons/template/samples/Template/Native/IoTjsApp/project/tizen-manifest.xml [new file with mode: 0644]
config-sdk/extension/core-add-ons/template/samples/Template/Native/IoTjsApp/sample.xml [new file with mode: 0644]
config-sdk/extension/core-add-ons/template/samples/Template/Native/IoTjsApp/screenshot.png [new file with mode: 0755]
config-sdk/package_all.sh
config-sdk/rs_resource/OSS/iotjs-rs.xml [new file with mode: 0644]

diff --git a/config-sdk/extension/core-add-ons/template/samples/Template/Native/IoTjsApp/description.xml b/config-sdk/extension/core-add-ons/template/samples/Template/Native/IoTjsApp/description.xml
new file mode 100755 (executable)
index 0000000..db5fa55
--- /dev/null
@@ -0,0 +1,28 @@
+<?xml version="1.0" encoding="utf-8"?>
+<Overview version="0.0.1">
+       <SampleName>IoTjs App</SampleName>
+       <SampleVersion>1.0</SampleVersion>
+       <PlatformList>
+               <Profile>
+                       <ProfileName>tizen_iot</ProfileName>
+                       <RequiredVersion>5.0</RequiredVersion>
+               </Profile>
+       </PlatformList>
+       <ProjectType>org.tizen.nativecore.buildArtefactType.app</ProjectType>
+       <HasOption>False</HasOption>
+       <CategoryList>
+               <Category>Template</Category>
+       </CategoryList>
+  <PreviewList>
+       <Preview>screenshot.png</Preview>
+  </PreviewList>
+       <IconSet>
+               <IconSmall>ic_s_service.png</IconSmall>
+               <IconMediumNormal>ic_m_service_n.png</IconMediumNormal>
+               <IconMediumSelect>ic_m_service_s.png</IconMediumSelect>
+               <IconLarge>ic_l_service.png</IconLarge>
+       </IconSet>
+       <Description>
+               This is the empty template for developing IoT.js application.
+       </Description>
+</Overview>
diff --git a/config-sdk/extension/core-add-ons/template/samples/Template/Native/IoTjsApp/ic_l_service.png b/config-sdk/extension/core-add-ons/template/samples/Template/Native/IoTjsApp/ic_l_service.png
new file mode 100644 (file)
index 0000000..50e796f
Binary files /dev/null and b/config-sdk/extension/core-add-ons/template/samples/Template/Native/IoTjsApp/ic_l_service.png differ
diff --git a/config-sdk/extension/core-add-ons/template/samples/Template/Native/IoTjsApp/ic_m_service_n.png b/config-sdk/extension/core-add-ons/template/samples/Template/Native/IoTjsApp/ic_m_service_n.png
new file mode 100644 (file)
index 0000000..3c3c4ae
Binary files /dev/null and b/config-sdk/extension/core-add-ons/template/samples/Template/Native/IoTjsApp/ic_m_service_n.png differ
diff --git a/config-sdk/extension/core-add-ons/template/samples/Template/Native/IoTjsApp/ic_m_service_s.png b/config-sdk/extension/core-add-ons/template/samples/Template/Native/IoTjsApp/ic_m_service_s.png
new file mode 100644 (file)
index 0000000..02c8c08
Binary files /dev/null and b/config-sdk/extension/core-add-ons/template/samples/Template/Native/IoTjsApp/ic_m_service_s.png differ
diff --git a/config-sdk/extension/core-add-ons/template/samples/Template/Native/IoTjsApp/ic_s_service.png b/config-sdk/extension/core-add-ons/template/samples/Template/Native/IoTjsApp/ic_s_service.png
new file mode 100644 (file)
index 0000000..b982002
Binary files /dev/null and b/config-sdk/extension/core-add-ons/template/samples/Template/Native/IoTjsApp/ic_s_service.png differ
diff --git a/config-sdk/extension/core-add-ons/template/samples/Template/Native/IoTjsApp/project/inc/main.h b/config-sdk/extension/core-add-ons/template/samples/Template/Native/IoTjsApp/project/inc/main.h
new file mode 100644 (file)
index 0000000..9d90e54
--- /dev/null
@@ -0,0 +1,12 @@
+#ifndef __$(appName)_H__
+#define __$(appName)_H__
+
+#include <dlog.h>
+
+#ifdef  LOG_TAG
+#undef  LOG_TAG
+#endif
+#define LOG_TAG "$(appName)"
+
+
+#endif /* __$(appName)_H__ */
diff --git a/config-sdk/extension/core-add-ons/template/samples/Template/Native/IoTjsApp/project/project_def.prop b/config-sdk/extension/core-add-ons/template/samples/Template/Native/IoTjsApp/project/project_def.prop
new file mode 100644 (file)
index 0000000..32b9507
--- /dev/null
@@ -0,0 +1,11 @@
+APPNAME = $(appName)
+
+type = app
+profile = $(platform)
+
+USER_SRCS = src/$(appName).c
+USER_DEFS =
+USER_INC_DIRS = inc
+USER_OBJS =
+USER_LIBS =
+USER_EDCS =
diff --git a/config-sdk/extension/core-add-ons/template/samples/Template/Native/IoTjsApp/project/res/index.js b/config-sdk/extension/core-add-ons/template/samples/Template/Native/IoTjsApp/project/res/index.js
new file mode 100644 (file)
index 0000000..8e0c1bb
--- /dev/null
@@ -0,0 +1,2 @@
+console.log('Hello IoT.js');
+
diff --git a/config-sdk/extension/core-add-ons/template/samples/Template/Native/IoTjsApp/project/src/main.c b/config-sdk/extension/core-add-ons/template/samples/Template/Native/IoTjsApp/project/src/main.c
new file mode 100644 (file)
index 0000000..c7dcb84
--- /dev/null
@@ -0,0 +1,69 @@
+#include <tizen.h>
+#include <service_app.h>
+#include <iotjs_tizen_service_app.h>
+#include "$(appName).h"
+
+
+bool service_app_create(void *data)
+{
+       // Todo: add your code here.
+       return true;
+}
+
+void service_app_terminate(void *data)
+{
+       // Todo: add your code here.
+       return;
+}
+
+void service_app_control(app_control_h app_control, void *data)
+{
+       // Todo: add your code here.
+
+       // Emit 'appControl' event to the JavaScript side.
+       iotjs_tizen_app_control_cb(app_control, data);
+       return;
+}
+
+static void
+service_app_lang_changed(app_event_info_h event_info, void *user_data)
+{
+       /*APP_EVENT_LANGUAGE_CHANGED*/
+       return;
+}
+
+static void
+service_app_region_changed(app_event_info_h event_info, void *user_data)
+{
+       /*APP_EVENT_REGION_FORMAT_CHANGED*/
+}
+
+static void
+service_app_low_battery(app_event_info_h event_info, void *user_data)
+{
+       /*APP_EVENT_LOW_BATTERY*/
+}
+
+static void
+service_app_low_memory(app_event_info_h event_info, void *user_data)
+{
+       /*APP_EVENT_LOW_MEMORY*/
+}
+
+int main(int argc, char* argv[])
+{
+       char ad[50] = {0,};
+       service_app_lifecycle_callback_s event_callback;
+       app_event_handler_h handlers[5] = {NULL, };
+
+       event_callback.create = service_app_create;
+       event_callback.terminate = service_app_terminate;
+       event_callback.app_control = service_app_control;
+
+       service_app_add_event_handler(&handlers[APP_EVENT_LOW_BATTERY], APP_EVENT_LOW_BATTERY, service_app_low_battery, &ad);
+       service_app_add_event_handler(&handlers[APP_EVENT_LOW_MEMORY], APP_EVENT_LOW_MEMORY, service_app_low_memory, &ad);
+       service_app_add_event_handler(&handlers[APP_EVENT_LANGUAGE_CHANGED], APP_EVENT_LANGUAGE_CHANGED, service_app_lang_changed, &ad);
+       service_app_add_event_handler(&handlers[APP_EVENT_REGION_FORMAT_CHANGED], APP_EVENT_REGION_FORMAT_CHANGED, service_app_region_changed, &ad);
+
+       return iotjs_service_app_start(argc, argv, "index.js", &event_callback, ad);
+}
diff --git a/config-sdk/extension/core-add-ons/template/samples/Template/Native/IoTjsApp/project/tizen-manifest.xml b/config-sdk/extension/core-add-ons/template/samples/Template/Native/IoTjsApp/project/tizen-manifest.xml
new file mode 100644 (file)
index 0000000..956edd5
--- /dev/null
@@ -0,0 +1,17 @@
+<?xml version="1.0" encoding="utf-8"?>
+<manifest xmlns="http://tizen.org/ns/packages" api-version="4.0" package="$(packageName)" version="1.0.0">
+       <profile name="$(packageProfile)" />
+       <service-application appid="$(packageName)" exec="$(appNameLower)" type="capp" multiple="false" taskmanage="false" nodisplay="true">
+               <icon>$(appName).png</icon>
+               <label>$(appName)</label>
+               <background-category value="iot-communication"/>
+       </service-application>
+       <privileges>
+               <privilege>http://tizen.org/privilege/network.get</privilege>
+               <privilege>http://tizen.org/privilege/network.set</privilege>
+               <privilege>http://tizen.org/privilege/internet</privilege>
+               <privilege>http://tizen.org/privilege/alarm.set</privilege>
+               <privilege>http://tizen.org/privilege/network.profile</privilege>
+               <privilege>http://tizen.org/privilege/peripheralio</privilege>
+       </privileges>
+</manifest>
diff --git a/config-sdk/extension/core-add-ons/template/samples/Template/Native/IoTjsApp/sample.xml b/config-sdk/extension/core-add-ons/template/samples/Template/Native/IoTjsApp/sample.xml
new file mode 100644 (file)
index 0000000..f201e13
--- /dev/null
@@ -0,0 +1,51 @@
+<?xml version="1.0" encoding="ISO-8859-1"?>
+<template>
+       <slp-property>
+               <property-group>
+                       <sample-name>IoT.js Application</sample-name>
+                       <category>Platform Template</category>
+                       <sdk-version>1.00</sdk-version>
+                       <project-type>org.tizen.nativecore.buildArtefactType.app</project-type> 
+                       <sample-description>description.xml</sample-description>
+               </property-group>
+       </slp-property>
+       <process type="org.tizen.nativeappcommon.TizenCopyFolder">
+               <simple name="projectName" value="$(projectName)"/>
+               <simple name="folderPath" value="project"/>
+               <complex-array name="replaceableFiles">
+                       <element>
+                               <simple name="sourcePath" value="src/main.c"/>
+                               <simple name="targetPath" value="src/$(appName).c"/>
+                               <simple name="replaceable" value="true"/>
+                       </element>
+                       <element>
+                               <simple name="sourcePath" value="inc/main.h"/>
+                               <simple name="targetPath" value="inc/$(appName).h"/>
+                               <simple name="replaceable" value="true"/>
+                       </element>
+                       <element>
+                               <simple name="sourcePath" value="tizen-manifest.xml"/>
+                               <simple name="targetPath" value="tizen-manifest.xml"/>
+                               <simple name="replaceable" value="true"/>
+                       </element>
+                       <element>
+                               <simple name="sourcePath" value="shared/res/mainmenu.png"/>
+                               <simple name="targetPath" value="shared/res/$(appName).png"/>
+                               <simple name="replaceable" value="false"/>
+                       </element>
+                       <element>
+                               <simple name="sourcePath" value="project_def.prop"/>
+                               <simple name="targetPath" value="project_def.prop"/>
+                               <simple name="replaceable" value="true"/>
+                       </element>
+               </complex-array>
+       </process>
+       <process type="org.tizen.nativecore.SetDefaultCoreFrameworks">
+               <simple name="projectName" value="$(projectName)"/>
+               <complex-array name="frameworkList">
+                       <element>
+                               <simple name="framework" value="Native_API"/>
+                       </element>
+               </complex-array>
+       </process>
+</template>
diff --git a/config-sdk/extension/core-add-ons/template/samples/Template/Native/IoTjsApp/screenshot.png b/config-sdk/extension/core-add-ons/template/samples/Template/Native/IoTjsApp/screenshot.png
new file mode 100755 (executable)
index 0000000..a8e5e1a
Binary files /dev/null and b/config-sdk/extension/core-add-ons/template/samples/Template/Native/IoTjsApp/screenshot.png differ
index 97dedc0..57a1e4c 100755 (executable)
@@ -80,11 +80,13 @@ make_addon_data()
        UIEDC_PATH="${DATA_PATH}/samples/Template/Native/basic-edc-ui"
        SVC_PATH="${DATA_PATH}/samples/Template/Native/ServiceApp"
        SLIB_PATH="${DATA_PATH}/samples/Template/Native/SharedLibrary"
+       IOTJS_PATH="${DATA_PATH}/samples/Template/Native/IoTjsApp"
 
        sed -i "s/tizen_iot/${PROFILE}/g" ${UI_PATH}/description.xml
        sed -i "s/tizen_iot/${PROFILE}/g" ${UIEDC_PATH}/description.xml
        sed -i "s/tizen_iot/${PROFILE}/g" ${SVC_PATH}/description.xml
        sed -i "s/tizen_iot/${PROFILE}/g" ${SLIB_PATH}/description.xml
+       sed -i "s/tizen_iot/${PROFILE}/g" ${IOTJS_PATH}/description.xml
 }
 
 clean_up_addon()
diff --git a/config-sdk/rs_resource/OSS/iotjs-rs.xml b/config-sdk/rs_resource/OSS/iotjs-rs.xml
new file mode 100644 (file)
index 0000000..2317333
--- /dev/null
@@ -0,0 +1,16 @@
+<?xml version="1.0"?>
+<rootstrap name="iotjs">
+  <emulator>
+    <rpm accept="iotjs-devel" arch="i686"/>
+  </emulator>
+  <target>
+    <rpm accept="iotjs-devel" arch="armv7l"/>
+  </target>
+  <necessary>
+    <file>/usr/include/iotjs/iotjs_tizen_service_app.h</file>
+       <file>/usr/lib/libiotjs.so</file>
+  </necessary>
+  <include_path>/usr/include/iotjs</include_path>
+  <library_path>/usr/lib</library_path>
+  <library>libiotjs.so</library>
+</rootstrap>