개요
외부 앱에 정의된 API 모듈을 연동할 수 있는 오브젝트입니다.
지원 환경
Desktop NRE | Desktop WRE | |||||
|---|---|---|---|---|---|---|
☐ Windows | ☐ macOS | ☐ Edge | ☐ Chrome | ☐ Safari | ☐ Firefox | ☐ Opera |
Mobile NRE | Mobile WRE | |||||
☑ Android | ☑ iOS/iPadOS | ☐ Android | ☐ iOS/iPadOS | |||
- 외부 앱에는 넥사크로와 연동할 수 있는 코드가 정의되어 있어야 합니다. 연동 코드가 정의되지 않은 앱과는 연동할 수 없습니다. - 넥사크로의 요청을 처리하는 연동 코드는 안드로이드 스튜디오 또는 XCode 로 별도 정의하여야 합니다.
속성
id
ExternalAPI의 고유 식별자를 설정하는 속성입니다.
지원 환경
Desktop NRE | Desktop WRE | |||||
|---|---|---|---|---|---|---|
☐ Windows | ☐ macOS | ☐ Edge | ☐ Chrome | ☐ Safari | ☐ Firefox | ☐ Opera |
Mobile NRE | Mobile WRE | |||||
☑ Android | ☑ iOS/iPadOS | ☐ Android | ☐ iOS/iPadOS | |||
속성 타입
☐ Enum | ☐ Expr | ☐ Control | ☐ Hidden | ☑ ReadOnly | ☐ Bind | ☐ Collection | ☐ StringResource |
문법
ExternalAPI.id
문법 설정
id | ExternalAPI를 구별할 수 있는 유일값을 갖습니다. | |
|---|---|---|
참고
- addChild나 insertChild 메소드를 사용하여 컴포넌트를 등록할때 parent 가 자식컴포넌트를 구별하기 위한 고유한 key값입니다. - 속성명이나 메소드명과 같은 예약어를 id 속성값으로 설정할 경우 오류가 발생할 수 있습니다. - 컴포넌트의 속성은 아니지만 편의를 위하여 넥사크로 스튜디오에서 설정할 수 있는 기능이 제공됩니다. - name 속성은 사용자가 지정한 컴포넌트의 이름으로 논리적으로 중복이 가능합니다. - 넥사크로 스튜디오에서 컴포넌트를 생성하거나 id 값을 설정하면 name 속성에 동일한 값이 설정됩니다.
name
ExternalAPI 의 이름을 설정하는 속성입니다.
지원 환경
Desktop NRE | Desktop WRE | |||||
|---|---|---|---|---|---|---|
☐ Windows | ☐ macOS | ☐ Edge | ☐ Chrome | ☐ Safari | ☐ Firefox | ☐ Opera |
Mobile NRE | Mobile WRE | |||||
☑ Android | ☑ iOS/iPadOS | ☐ Android | ☐ iOS/iPadOS | |||
속성 타입
☐ Enum | ☐ Expr | ☐ Control | ☑ Hidden | ☐ ReadOnly | ☐ Bind | ☐ Collection | ☐ StringResource |
문법
ExternalAPI.name[= strName]
문법 설정
strName | 컴포넌트의 이름을 설정합니다. | |
|---|---|---|
참고
- name 속성은 사용자가 지정한 컴포넌트의 이름으로 논리적으로 중복이 가능합니다. - 넥사크로 스튜디오에서 컴포넌트를 생성하거나 id 값을 설정하면 name 속성에 동일한 값이 설정됩니다.
parent
ExternalAPI 의 부모 오브젝트를 갖는 읽기전용 속성입니다.
지원 환경
Desktop NRE | Desktop WRE | |||||
|---|---|---|---|---|---|---|
☐ Windows | ☐ macOS | ☐ Edge | ☐ Chrome | ☐ Safari | ☐ Firefox | ☐ Opera |
Mobile NRE | Mobile WRE | |||||
☑ Android | ☑ iOS/iPadOS | ☐ Android | ☐ iOS/iPadOS | |||
속성 타입
☐ Enum | ☐ Expr | ☐ Control | ☑ Hidden | ☑ ReadOnly | ☐ Bind | ☐ Collection | ☐ StringResource |
문법
ExternalAPI.parent
문법 설정
var objParent = this.ExternalAPI00.parent; |
참고
- parent 속성은 일반적으로 컴포넌트가 속한 Form을 갖습니다. - ExternalAPI 이(가) Div 와 같은 컨테이너 컴포넌트에 자식으로 존재한다면 parent 속성은 해당 컨테이너 컴포넌트를 갖습니다. - Calendar 와 같이 서브컨트롤이 존재하는 컴포넌트에서 서브컨트롤의 parent 속성은 해당 컴포넌트를 갖습니다.
메서드
execExtAPI
특정 외부 앱에 정의된 API 모듈을 실행하는 메소드입니다.
지원 환경
Desktop NRE | Desktop WRE | |||||
|---|---|---|---|---|---|---|
☐ Windows | ☐ macOS | ☐ Edge | ☐ Chrome | ☐ Safari | ☐ Firefox | ☐ Opera |
Mobile NRE | Mobile WRE | |||||
☑ Android | ☑ iOS/iPadOS | ☐ Android | ☐ iOS/iPadOS | |||
문법
ExternalAPI.execExtAPI( strRecvID, strAppID, strAPI [, strParams] )
파라미터
Parameters | Type | Description | |
|---|---|---|---|
strRecvID | String | 실행한 메소드를 구분하기 위한 ID 를 문자열로 설정합니다. onsuccess, onrecvdata 이벤트에서 ExternalAPIEventIfo 오브젝트의 recvid 속성에 설정한 값이 전달됩니다. | |
strAppID | String | 실행하려는 API 모듈이 정의된 외부 앱의 ID 를 문자열로 설정합니다. | |
strAPI | String | 실행하려는 API 모듈의 이름을 문자열로 설정합니다. | |
strParams | String | 실행할 API 모듈에 전달할 파라미터를 문자열로 설정합니다. 파라미터가 여러개일 경우 각 파라미터는 공백으로 구분합니다. 파라미터값에 공백이 포함된 경우는 " ' " (홑따옴표) 를 사용하여야 합니다. | |
this.ExternalAPI00.execExtAPI( "100", "com.nexacro.testmodule", "fn_Chk" ); this.ExternalAPI00.execExtAPI( "200", "TestApp://", "fn_Chk", "aa bb 'cc c' dd" ); | |||
반환
Type | Description |
|---|---|
Boolean | API 모듈의 실행여부와 관계없이 메소드 실행에 성공하면 true 를 반환합니다. API 모듈의 실행여부와 관계없이 메소드 실행에 실패하면 false 를 반환합니다. |
참고
- 외부 앱에 정의된 API 모듈 실행에 성공하면 onsuccess 이벤트가 발생합니다. 외부 앱에 정의된 API 모듈 실행에 실패하면 onerror 이벤트가 발생합니다.
isAccessible
특정 외부 앱에 접근이 가능한지 확인하는 메소드입니다.
지원 환경
Desktop NRE | Desktop WRE | |||||
|---|---|---|---|---|---|---|
☐ Windows | ☐ macOS | ☐ Edge | ☐ Chrome | ☐ Safari | ☐ Firefox | ☐ Opera |
Mobile NRE | Mobile WRE | |||||
☑ Android | ☑ iOS/iPadOS | ☐ Android | ☐ iOS/iPadOS | |||
문법
ExternalAPI.isAccessible ( strAppID )
파라미터
Parameters | Type | Description | |
|---|---|---|---|
strAppID | String | 접근 가능여부를 확인하려는 외부 앱의 ID 를 문자열로 설정합니다. Android 는 Domain 형태로 설정합니다. ("com.nexacro.testmodule") iOS 는 URL Scheme 형태로 설정합니다. ("TestApp://") | |
this.ExternalAPI00.isAccessible ( "com.nexacro.testmodule" ); // Android this.ExternalAPI00.isAccessible ( "TestApp://" ); // iOS | |||
반환
Type | Description |
|---|---|
Boolean | 외부 앱의 접근 가능여부와 관계없이 메소드 실행에 성공하면 true 를 반환합니다. 외부 앱의 접근 가능여부와 관계없이 메소드 실행에 실패하면 false 를 반환합니다. |
참고
- 특정 외부 앱에 접근이 가능하면 onsuccess 이벤트가 발생합니다. 특정 외부 앱에 접근이 불가능하면 onerror 이벤트가 발생합니다.
이벤트
onerror
ExternalAPI 오브젝트에서 요청한 작업이 실패했을 때 발생하는 이벤트입니다.
지원 환경
Desktop NRE | Desktop WRE | |||||
|---|---|---|---|---|---|---|
☐ Windows | ☐ macOS | ☐ Edge | ☐ Chrome | ☐ Safari | ☐ Firefox | ☐ Opera |
Mobile NRE | Mobile WRE | |||||
☑ Android | ☑ iOS/iPadOS | ☐ Android | ☐ iOS/iPadOS | |||
문법
onerror(obj:nexacro.ExternalAPI,e:nexacro.ExternalAPIErrorEventInfo);
파라미터
Parameters | Type | Description | |
|---|---|---|---|
obj | ExternalAPI | Event가 발생한 Object. | |
e | Event Object. | ||
onrecvdata
외부 앱에서 데이터(문자열)를 전달받았을 때 발생하는 이벤트입니다.
지원 환경
Desktop NRE | Desktop WRE | |||||
|---|---|---|---|---|---|---|
☐ Windows | ☐ macOS | ☐ Edge | ☐ Chrome | ☐ Safari | ☐ Firefox | ☐ Opera |
Mobile NRE | Mobile WRE | |||||
☑ Android | ☑ iOS/iPadOS | ☐ Android | ☐ iOS/iPadOS | |||
문법
onrecvdata(obj:nexacro.ExternalAPI,e:nexacro.ExternalAPIEventInfo);
파라미터
Parameters | Type | Description | |
|---|---|---|---|
obj | ExternalAPI | Event가 발생한 Object. | |
e | Event Object. | ||
참고
- ExternalAPI 에서 execExtAPI() 메소드로 외부 앱의 API 모듈을 실행한 결과가 전달되었을 때 발생하는 이벤트입니다.
onsuccess
ExternalAPI 오브젝트에서 요청한 작업이 성공했을 때 발생하는 이벤트입니다.
지원 환경
Desktop NRE | Desktop WRE | |||||
|---|---|---|---|---|---|---|
☐ Windows | ☐ macOS | ☐ Edge | ☐ Chrome | ☐ Safari | ☐ Firefox | ☐ Opera |
Mobile NRE | Mobile WRE | |||||
☑ Android | ☑ iOS/iPadOS | ☐ Android | ☐ iOS/iPadOS | |||
문법
onsuccess(obj:nexacro.ExternalAPI,e:nexacro.ExternalAPIEventInfo);
파라미터
Parameters | Type | Description | |
|---|---|---|---|
obj | ExternalAPI | Event가 발생한 Object. | |
e | Event Object. | ||