이제는 다양한 모바일 Device들과 OS들이 쏟아져 나오고, 이에 따라 고객의 요구가 다양해지면서, 기업들의 MCDP[각주:1] 도입은 불가피하게 되었습니다. MCDP 기술의 핵심은 BYOD[각주:2] OSMU[각주:3], 즉 하나의 소스를 사용자가 보유한 다양한 종류의 플랫폼과 디바이스에서 활용할 수 있도록 하는 기술에 있습니다.

NEXCORE Alopex Runtime(이하 Alopex Runtime) SK C&CMCDP1)솔루션인 NEXCORE Mobile Platform 제품군을 이루고 있는 요소 제품 중 하나로써, Web 기술로 제작한 화면이 다양한 Smart Device에서 실제로 구동이 가능하게 해 주는 실행환경으로 OSMU3) 구현 기술의 핵심이라 할 수 있습니다.

Alopex Runtime은 점차 웹의 표준으로 자리잡고 있는 HTML5 기술과 CSS3, JavaScript와 같은 널리 퍼져있는 기술들을 채용한 개발 방식을 제공하여 기존의 Web 개발자들이 쉽게 학습할 수 있고, 한 번 개발된 소스를 다시 개발하지 않고도, 다양한 플랫폼과 애플리케이션 유형들에 맞게 구현할 수 있도록 지원합니다. 이를 위해 다양한 플랫폼에서 동일하게 구현되는 APIRuntime을 제공합니다.

Alopex Runtime에서는 기존의 솔루션들에서 지원이 거의 불가능했던, 카메라, GPS, 알림, 주소록 등의 Device 고유의 Native 기능들을 손쉽게 제어할 수 있도록 Native API를 함께 사용할 수 있는 기능을 함께 제공합니다, HTML5 기반임에도 불구하고 Native로 개발된 제품과 동일한 반응성과 성능을 자랑합니다.

이러한 Alopex Runtime만의 특징들은 기업으로 하여금 관리와 운영을 단순하게 하고 생산성 극대화를 통한 TCO 절감 효과를 가져오는 것은 물론, 고객에게 적시에 서비스를 제공하고, Native App과 동일한 사용감을 제공함으로써, 고객 만족을 극대화 할 수 있습니다. 또한 향후 새로운 Device/Platform출시된다 하더라도, 적용에 대한 걱정을 덜어줄 수 있습니다.

 

 Web App의 장점을 모은 Hybrid App

Alopex Runtime Web App의 장점을 모두 모았습니다. Web의 표준 기술로 자리 잡고 있는 HTML5 CSS3, JavaScript를 기반으로 다양한 Device에서 통일감 있는 UI/UX를 제공합니다. 이 표준 기술들은 기존 Web 개발자가 새로운 언어나 기술을 학습할 필요 없이 바로 적응이 가능하다는 장점과 함께 대부분의 HTML5 지원 Device에서 OSMU3)를 실현할 수 있다는 장점을 가집니다.

Alopex Runtime은 보안에 취약할 수밖에 없는 Hybrid App의 취약점들을 개선한 구조를 가지고 있습니다. Contents들을 암호화하여 보관하고 외부에서 이를 임의로 수정할 수 없게 보호합니다.

또한, 화면 개발 시 제작사가 제공하는 별도의 도구만 사용해야 하는 것이 아니라, Eclipse, Adobe사의 Dreamweaver, 나모 웹 에디터 등 개발자가 익숙한 도구를 그대로 사용할 수 있어서 생산성 향상에 크게 도움이 됩니다.

 

 Device Platform의 고유 기능 활용

많은 Hybrid App 개발 플랫폼들이 갖고 있는 구조적 문제 는 각각의 Device가 제공하는 단말 고유의 기능을 제어하거나 Platform에서 제공하는 Library(이하 Native Library)를 사용하는 것이 힘들다는 것입니다.

HTML5만으로 App을 개발하려면 한계가 존재하기 때문에 Native를 혼용할 수밖에 없습니다. 이때, 얼마나 깔끔하게 Native와 혼용할 수 있는지가 핵심입니다. Adobe Phonegap과 같은 경우에도 Library 기반이기 때문에 하이브리드 앱 구현에 한계가 있는 것이 사실입니다. 반면 Alopex Runtime은 프레임워크이기 때문에 웹 방식의 개발이나 라이브러리 방식 개발의 단점을 모두 극복할 수 있습니다.

Alopex Runtime은 단말 고유의 기능을 손쉽게 제어하고, 3rd Party 솔루션, Native로 개발한 외부 라이브러리와의 연계까지 쉽게 할 수 있도록 통화, 메시지, 주소록, 카메라, 사진첩, 알림 기능 등의 Device Platform 자체 기능을 사용할 수 있는 API를 제공하며, 개발자가 개발한 Native Code를 쉽게 연동할 수 있는 Native Extension Interface를 제공합니다.

 

 Native App과 동일한 사용감 제공

Web 기반의 App을 사용해 보셨다면, 화면이 바뀔 때마다 하얗게 바뀐 상태로 대기해야 하거나, 터치나 스크롤이 잘 되지 않아 답답해 하셨던 경험이 있으실 것입니다. 이런 Web 기반의 App들을 사용하는 사용자들은, 화면이 불려온 뒤에도 해당 OS UI System과는 전혀 다른 UI를 마주하면서 이질감과 당혹스러움을 느끼게 됩니다.

Alopex Runtime은 이러한 불편을 해결하기 위해 Calendar와 같은 Platform 표준 제공 UI Component를 그대로 호출해서 사용할 수 있도록 하여, 사용자가 사용하던 Device와 동일한 환경 아래서 이질감 없이 사용할 수 있도록 배려할 수 있습니다.

또한, 각 페이지가 고유한 Screen ID를 가지고 있어서, 각 페이지의 정보를 그대로 유지한 상태에서 여러 페이지를 빠르게 이동이 가능합니다. 또한, 일반적인 Hybrid App에서 제공하는 Web View Navigation뿐만 아니라, Platform Native View 기반의 Navigation을 포함하여 화면간의 자유로운 이동과 전환이 가능합니다.

이러한 Alopex Runtime만의 특징은 사용자로 하여금 Native로 개발된 App과 동일한 사용감을 느낄 수 있게 하며, 빈번한 OS 업데이트 및 신규 Device 출시로 인해 수명이 짧을 수밖에 없는 Native App의 고질적인 문제도 깔끔하게 해결해 드립니다.

 

 

 

NEXCORE Alopex Runtime 기능 상세

 화면관리 기능

Alopex Runtime의 화면 관리 기능은 각 화면마다 선택 가능한 다양한 화면 타입을 제공하며, 화면간 이동 시 데이터 전달과 화면에 대한 모든 Navigation History Runtime 내부에서 제공하여, Native와 유사한 반응성의 Hybrid App을 만들 수 있게 합니다.

화면 타입

Alopex Runtime은 아래와 같은 다양한 화면 타입을 제공합니다.

- Alopex 기본 화면 타입 : WebView를 기반으로 한 Alopex Runtime 기본 화면 타입입니다.

- Native 화면 타입 : Native UI를 그대로 적용할 수 있는 화면 타입입니다.

- Web Style 화면 타입 : 특정 Web Page를 그대로 띄울 수 있는 화면 타입입니다.

- Custom 화면 타입 : Native UI 화면 일부에 WebView 기반의 화면을 띄울 수 있는 화면 타입입니다.

② 화면 Orientation(방향전환)

Alopex Runtime은 화면 방향이 전환되었을 때 이에 맞는 Layout을 제공할 수 있도록 화면 Orientation을 파악하고 변경된 화면에 맞게 Layout을 변경해 줍니다.

③ 화면 간 History 관리 및 데이터 전달

Alopex Runtime에서 동작하는 여러 화면의 History를 관리하여 네비게이션 Rule을 설정하고, 화면과 화면 사이의 Data 전달을 지원합니다. 이러한 Alopex Runtime의 기능들은 화면 간의 전환을 쉽고 빠르게 도와줍니다.이를 도식화하면 다음 그림과 같습니다.

 

 

 Device/Platform API

Alopex Runtime에서는 Device Platform에서 제공하는 리소스와 기능들을 사용할 수 있도록 API를 제공합니다. 또한, Alopex Runtime에서 제공하는 기능 이외의 기능이 필요한 경우 이를 Native로 구현하여 사용할 수 있도록 Interface를 제공하여, Hybrid App의 한계를 뛰어 넘을 수 있는 확장성을 보장합니다.

Device Control API

Device Control API를 이용하면 다음과 같은 리소스의사용이 가능합니다.

•카메라

•주소록

•통화(전화걸기)

•문자메시지

•장치 정보

•각종 센서(GPS, 가속도계)

Platform Control API

Platform Control API를 사용하면 다음과 같은 리소스의 사용이 가능합니다.

Push Local Notification

Platform UI Component

•내부 Storage

File 입출력

HTTP 통신 protocol

Application 핸들링

Log 입출력

 

 Persistence Framework

각종 보안 이슈 대응 및 운영과 관리 시 발생하는 다양한 고객의 요구사항에 대응하기 위하여 몇 가지 확장기능을 제공합니다.

Native 확장 기능

Alopex Runtime에서 제공하는 기능 외의 기능이 필요시에 이를 Native로 구현하고 연계하여 사용할 수 있는 Interface를 제공합니다.

Native Screen(화면 타입 참조)

Native API : Javascript로 제공하고 있는 API(Device Control API, Platform Control API 참조) Native 스크린에서도 사용 가능하도록 Native API도 제공합니다.

Native 확장 Interface

② 모바일 특화 기능

개발의 효율성과 생산성의 향상을 위해 모바일 디바이스에 특화된 기능들을 제공합니다.

Plug-in Manager : Alopex Runtime 실행 전 처리되어야 하는 로직의 우선순위를 결정하고 처리합니다.

App 상태관리 : Pause, Resume , App의 상태를 관리할 수 있도록 지원합니다.

③ 배포 관리 기능

NEXCORE Mobile Platform O&M과의 연동을 통해 배포와 Version 관리가 수월합니다.

특히 App 내부에 포함된 Contents만 변경된 경우에는 App Store를 통해서 Upgrade하지 않아도 App이 실행될 때 실시간으로 다운로드하여 실행이 가능합니다.

 

 

  1. MCDP(Multi-Channel Development Platform) : 기존의 Back-end System들을 통합하여 다양한 디바이스와 플랫폼을 위한 애플리케이션을 제작, 운영, 배포, 관리하기 위한 플랫폼 [본문으로]
  2. BYOD(Bring Your Own Device) : 개인 노트북, 스마트폰 같은 단말기를 업무에 활용하는 것 [본문으로]
  3. OSMU(One Source Multi Use) : 하나의 소스로 다양한 디바이스와 플랫폼을 위한 앱을 만들 수 있는 기술 [본문으로]