From: DongHyun Song Date: Fri, 16 Jul 2021 03:53:04 +0000 (+0900) Subject: [Service][AppManifest] Fix pkgid length and refactor X-Git-Tag: submit/tizen/20210716.160022^0 X-Git-Url: http://review.tizen.org/git/?a=commitdiff_plain;h=d36a497f177d780423932bd1bdf5a2b202282ecf;p=platform%2Fframework%2Fweb%2Fwrtjs.git [Service][AppManifest] Fix pkgid length and refactor Make pkgid length 10 bytes. Change-Id: I8f2423dc18721ecb9b48c1e9756180854eee73cd Signed-off-by: DongHyun Song --- diff --git a/wrt_app/service/builtins/appmanifest_loader.ts b/wrt_app/service/builtins/appmanifest_loader.ts index 7037b35c..dbf6bbfc 100644 --- a/wrt_app/service/builtins/appmanifest_loader.ts +++ b/wrt_app/service/builtins/appmanifest_loader.ts @@ -50,11 +50,13 @@ function makeFileSync(file: string, data: string) { fs.writeFileSync(file, data); } -function concatWithBaseUrl(url: string, baseUrl: string) { - if (url.indexOf('http:') == -1 && url.indexOf('https:') == -1) { - return baseUrl.substr(0, baseUrl.lastIndexOf('/') + 1) + url; +function concatWithBaseUrl(path: string, baseUrl: string) { + if (path.substr(0, 1) === '/') { + return baseUrl.substr(0, baseUrl.indexOf('/') + 1) + path; + } else if (path.indexOf('http:') == -1 && path.indexOf('https:') == -1) { + return baseUrl.substr(0, baseUrl.lastIndexOf('/') + 1) + path; } - return url; + return path; } let baseWorkingDir = '/home/owner/content/Downloads/AppManifest'; @@ -91,21 +93,18 @@ async function handleIcon(appName: string, manifestUrl: string, manifest: any) { refCount++; } -function handleStartUrl(appName: string, manifestUrl: string, manifest: any) { - let startUrl = concatWithBaseUrl(manifest['start_url'], manifestUrl); - manifest['start_url'] = startUrl; +function makeManifestFile(appName: string, manifest: any) { manifestFile = `${baseWorkingDir}/${appName}/appmanifest.json`; makeFileSync(manifestFile, JSON.stringify(manifest)); manifestFile = `${downloadVirtualDir}/${appName}/appmanifest.json`; refCount++; - return startUrl; } function makeAppId(startUrl: string) { let id = Buffer.from(startUrl).toString('base64'); id = id.replace(/=/i, ''); console.log(`id : ${id}`); - return id.substr(2, 12); + return id.substr(2, 10); } function convertConfigXml(appName: string, startUrl: string) { @@ -172,7 +171,10 @@ async function parseAndHandleManifest(manifestUrl: string) { await handleIcon(appName, manifestUrl, manifest); } if (manifest['start_url']) { - let startUrl = handleStartUrl(appName, manifestUrl, manifest); + let startUrl = concatWithBaseUrl(manifest['start_url'], manifestUrl); + manifest['start_url'] = startUrl; + + makeManifestFile(appName, manifest); convertConfigXml(appName, startUrl); } makeWgt(appName);