+int app_subapp_terminate_request()
+{
+ if(is_subapp) {
+ subapp_cb(subapp_data);
+ }
+ return 0;
+}
+
+SLPAPI int aul_set_subapp(subapp_fn cb, void *data)
+{
+ is_subapp = 1;
+ subapp_cb = cb;
+ subapp_data = data;
+
+ return 0;
+}
+
+SLPAPI int aul_subapp_terminate_request_pid(int pid)
+{
+ char pid_str[MAX_PID_STR_BUFSZ];
+ int ret;
+
+ if (pid <= 0)
+ return AUL_R_EINVAL;
+
+ snprintf(pid_str, MAX_PID_STR_BUFSZ, "%d", pid);
+ ret = app_request_to_launchpad(APP_TERM_REQ_BY_PID, pid_str, NULL);
+ return ret;
+}
+
+SLPAPI int aul_is_subapp()
+{
+ return is_subapp;
+}