넥사크로플랫폼 배포

사용자가 넥사크로플랫폼으로 개발된 앱을 사용하려면 사용 환경에 따라 적절한 실행 환경을 만들어주고 필요한 파일을 내려받아야 합니다. 이러한 과정을 배포라고 합니다. 배포된 파일은 캐시 정책에 따라 내부에서 관리되며 필요할 때 새로운 파일로 교체됩니다.

데스크탑, 모바일 환경에 이미 설치된 웹브라우저에서 넥사크로 앱을 실행하는 경우에는 웹서버에서 필요한 HTML, 자바스크립트, CSS 파일만 내려받아 바로 실행합니다. 하지만 NRE 방식에서는 별도의 배포, 설치 과정이 필요합니다. 세부적인 과정은 각 실행 환경에 따라 달라질 수 있습니다.

개요

넥사크로플랫폼 앱이 실행하기 위해 필요한 파일을 먼저 살펴보겠습니다. 실행 환경에 따라 배포되는 파일은 아래와 같습니다.

분류

설명

NRE

WRE

런타임 엔진

스크립트, 메모리, 렌더링 처리

런타임 엔진

O

X

넥사크로 프레임워크

프레임워크, 컴포넌트 라이브러리

(자바스크립트)

O

O

코드

제너레이트에서 변환된 코드 (자바스크립트, CSS)

O

O

NRE의 가장 큰 특징은 런타임 엔진입니다. 웹브라우저 환경에서는 필요한 프레임워크, 컴포넌트, 코드를 바로 사용하는 데 반해 NRE를 사용하려면 각 실행 환경에 맞는 런타임 엔진을 별도로 배포해주어야 합니다.

런타임 엔진을 추가로 배포하는 작업이 사용자로서도 불편할 수 있지만, 시스템 환경에 따라 기존에 사용하던 시스템과 연계가 필요하거나 웹브라우저에서 제공하지 못하는 확장된 기능을 사용하기 위해서는 넥사크로 브라우저를 선택할 수 있습니다.

넥사크로플랫폼에서 제공하는 기본적인 기능은 버전에 상관없이 같지만 디바이스 API나 외부 기기 연동 등 확장 기능은 실행 환경에 따라 다를 수 있습니다.

배포 파일

버전별 배포되는 파일을 상세하게 살펴보면 아래와 같습니다.

파일 위치 또는 서버 위치를 설명하는 Alias는 Alias 경로를 참고해주세요.

아래 설명된 파일명과 제공되는 라이브러리는 업데이트에 따라 변경될 수 있습니다.

데스크탑

윈도우 NRE

넥사크로플랫폼 런타임 엔진 배포 후 실행 방식에 따라 앱을 호출합니다. 콘텐츠는 같지만 프레임워크 자바스크립트 파일을 서버에서 직접 받지 않고 dll 파일로 제공된 라이브러리에 포함해 배포합니다.

분류

파일

설명

파일 위치

Runtime Engine

v8.dll

V8 Script Engine Library

%nexacro%

XMemLib.dll

Memory Management Library

%nexacro%

XBasicLib.dll

Base Libaray

%nexacro%

nexacrolib.dll

Platform & Render Engine Library

%nexacro%

nexacro.exe

넥사크로플랫폼 Executor

%nexacro%

Framework DLL

XFrameworkLib.dll

Framework API Library

%nexacro%

Extend DLL

Files

protocol adaptor dll

Network Protocol Adaptor

%UPDATE%

External DLL

External DLLs

%UPDATE%

Runtime Config

Files

nexacro.xml

Runtime 실행 환경 파일

& UserProfile

%USERAPP%

Log Files

nexacro_xxxxx.log

로그 파일

%USERAPP%\Log

Launcher

Download Files

splash.png

Splash Image File

%USERAPP%

loadingimage.png

WaitCursor Image File

%USERAPP%

nexacro.ico

Application Icon File

%USERAPP%

globalvars.dat

Global Variable List 파일

%USERAPP%

배포되는 파일 목록은 엔진 버전이나 운영체제에 따라 달라질 수 있습니다.

위의 표에서는 주요 파일 목록만 나열했습니다.

macOS NRE

macOS 런타임은 각 운영체제에 따라 별도 패키징 과정이 필요합니다. 제너레이트에서 변환된 코드를 Archive 파일로 생성하고 각 운영체제에 맞게 배포 파일을 생성하게 됩니다.

분류

파일

파일 설명

Packing

macOS App Files

nexacro17.macOS.framework

macOS Library Framework

macOS App

start_macos.json

macOS Archive Information

localizable.strings

macOS Locale String Information

Execute HTML

index.html


Run Archive

Framework JS



Engine Archive

Component JS



Engine Archive

Resource Files

loadingimage.png


Engine Archive

Theme File

theme_*.css


Theme Archive

Application Files



Application Archive

WRE

필요한 모든 파일을 웹브라우저에서 직접 로딩하는 방식으로 실행됩니다. 사용하는 웹브라우저에 따라 성능 차이가 있을 수 있습니다.

분류

파일

설명

서버 위치

Execute HTML

index.html


%WEBDEPLOY PROJECT%

Framework JS

BasicObjs.js


%WEBDEPLOY FRAMEWORK%

SystemBase.js

System Utility

%WEBDEPLOY FRAMEWORK%

Platform.js

Platform Objects

%WEBDEPLOY FRAMEWORK%

CssObjs.js

Style Object

%WEBDEPLOY FRAMEWORK%

ErrorDefine.js

Error Information

%WEBDEPLOY FRAMEWORK%

Component JS

CompBase.js

Component Base Module

%WEBDEPLOY COMPONENT%

ComComp.js

Common Component Module

%WEBDEPLOY COMPONENT%

Grid.js

Grid Component Module

%WEBDEPLOY COMPONENT%

DeviceAPI.js

DeviceAPI Module

%WEBDEPLOY COMPONENT%

Resource Files

waitimage.gif

WaitCursor Image File

%WEBDEPLOY RESOURCE%

Theme File

theme_*.css

Deploy 된 테마 소스

%WEBDEPLOY THEME%

Application Files


Deploy 된 Application 구성 파일

%WEBDEPLOY PROJECT%

모바일

안드로이드 NRE, iOS NRE

iOS/안드로이드 앱은 각 운영체제에 따라 별도 패키징 과정이 필요합니다. 제너레이트에서 변환된 코드를 Archive 파일로 생성하고 각 운영체제에 맞게 배포 파일을 생성하게 됩니다.

분류

파일

파일 설명

Packing

Android App Files

nexacro17.jar

Android Library Jar

Android App

libnexacro17.so

Android Library SO

star_android.json

Android Archive Information

strings.xml

Android Locale String Information

iOS App Files

nexacro17.framework

iOS Library Framework

iOS App

start_ios.json

iOS Archive Information

localizable.strings

iOS Locale String Information

Execute HTML

index.html


Run Archive

Framework JS


Engine Archive

Component JS


Engine Archive

Resource Files

loadingimage.png


Engine Archive

Theme File

theme_*.css


Theme Archive

Application Files



Application Archive