global.webapis.getAppIdsByMetadata = (metadata: string) => {
return wrt.getAppIdsByMetadata(metadata);
}
+ global.webapis.isRunningApp = async (appId: string) => {
+ if (wrt.isRunningApp) {
+ return new Promise((resolve) => {
+ resolve(wrt.isRunningApp(appId));
+ });
+ } else {
+ const getAppsContext = async (appId: string): Promise<boolean> => {
+ return new Promise((resolve) => {
+ try {
+ global.tizen.application.getAppsContext((contexts: any) => {
+ let isRunningApp = false;
+ for (let i = 0; i < contexts.length; i++) {
+ if (appId === contexts[i].appId) {
+ isRunningApp = true;
+ break;
+ }
+ }
+ resolve(isRunningApp);
+ });
+ } catch (e) {
+ console.log(`tizen.application.getAppsContext() has failed with ${e}`);
+ resolve(false);
+ }
+ });
+ }
+ return await getAppsContext(appId);
+ }
+ }
Object.defineProperties(global.webapis, {
getAppIdsByMetadata: { writable: false, enumerable: true },
getCallerAppId: { writable: false, enumerable: true },
getPackageId: { writable: false, enumerable: true },
- getServiceId: { writable: false, enumerable: true },
- postPlainNotification: { writable: false, enumerable: true },
getPreviewData: { writable: false, enumerable: true },
getProfile: { writable: false, enumerable: true },
+ getServiceId: { writable: false, enumerable: true },
+ isRunningApp: { writable: false, enumerable: true },
+ postPlainNotification: { writable: false, enumerable: true },
});
this.initMDEWebapis();
this.initEdgeWebapis();