DeviceAPI는 넥사크로플랫폼 앱에서 모바일 장치의 기능을 사용할 수 있게 해주는 오브젝트의 모음입니다. 블루투스, WIFI를 비롯하여 카메라, GPS, 저장장치 및 센서 등과 같이 모바일 장치에 종속적인 기능을 앱에서 사용할 수 있게 해줍니다. 현재 지원하는 오브젝트와 기능은 다음과 같습니다. 각 오브젝트에 관한 자세한 내용은 넥사크로 스튜디오의 Help를 참조하십시오.
오브젝트 | 설명 |
---|---|
Acceleration | 모바일 장치의 가속도 정보를 얻을 수 있는 오브젝트입니다. |
AudioPlayer | 오디오 플레이어 오브젝트입니다. |
AudioRecorder | 오디오 레코더 오브젝트입니다. |
Camera | 모바일 장치의 카메라 앱을 이용하여 이미지를 얻는 오브젝트입니다. |
Contact | 연락처를 관리하는 오브젝트입니다. |
ContactAddress | 연락처의 주소 정보를 관리하는 오브젝트입니다. |
ContactField | 연락처 정보의 필드를 관리하는 오브젝트입니다. |
ContactOrganization | 연락처의 조직 정보를 관리하는 오브젝트입니다. |
ContactPhoto | 연락처의 사진 정보를 관리하는 오브젝트입니다. |
ContactSet | 연락처를 조회/추가/삭제/갱신하는 오브젝트입니다. |
ExternalAPI | 외부 기기, 모듈, 앱과 연동할 때 사용하는 오브젝트입니다. |
FileDialog | 파일을 오픈하거나 저장할 때 경로를 설정하는 파일 선택 대화상자 오브젝트입니다. |
Geolocation | 위치 정보를 제공하는 오브젝트입니다. |
ImagePicker | 앨범 앱으로부터 이미지를 가져오는 오브젝트입니다. |
LiteDBConnection | 데이터베이스와의 연결 정보를 제공하는 오브젝트입니다. |
LiteDBStatement | 데이터베이스로의 쿼리를 수행하는 오브젝트입니다. |
Network | 네트워크 연결 정보를 제공하는 오브젝트입니다. |
Phone | 전화걸기 기능을 제공하는 오브젝트입니다. |
Sms | 단문 메시지 송수신 기능을 제공하는 오브젝트입니다. |
Vibrator | 진동 기능을 관리하는 오브젝트입니다. |
DeviceAPI 오브젝트 사용하기
DeviceAPI는 모바일 환경에서만 동작하는 기능이기 때문에 넥사크로 스튜디오의 기본 컴포넌트로 등록되어 있지 않습니다. 따라서 DeviceAPI 오브젝트를 사용하려면 사용자가 넥사크로 스튜디오에서 등록하는 절차가 필요합니다.
DeviceAPI 오브젝트를 사용 등록하는 절차는 다음과 같습니다.
1
넥사크로 스튜디오의 Project Explorer에서 [TypeDefinition > Objects]를 더블 클릭하여 Objects 편집기를 오픈합니다.
2
편집기 우측의 Objects 표 하단의 + 버튼을 클릭하여 필요한 오브젝트 항목을 선택하면 하단에 새로운 오브젝트가 추가됩니다. 표에 등록된 오브젝트의 정보는 수정할 수 있으나 특별한 경우가 아니면 기본 값을 그대로 사용합니다. 추가된 오브젝트를 삭제하려면 오브젝트명 옆에 있는 - 버튼을 클릭합니다.
3
필요한 오브젝트를 모두 추가한 후 OK 버튼을 클릭합니다. 그러면 등록한 오브젝트가 프로젝트에 반영되며 자동으로 프로젝트가 재빌드됩니다. 추가된 오브젝트는 즉시 사용이 가능하며 다음과 같이 넥사크로 스튜디오 툴바에서 확인할 수 있습니다.
앱에서의 모바일 장치 리소스 접근 권한
앱에서 DeviceAPI를 사용하여 기능을 수행하려면 모바일 장치의 리소스에 접근할 수 있는 권한이 필요합니다. 안드로이드나 iOS 운영체제는 샌드박스 정책을 사용하기 때문에 앱 자신의 데이터 이외의 리소스에 접근할 때는 적절한 권한을 요구합니다. 그 권한 중에 사용자 개인 정보나 다른 앱에 영향을 미칠 수 있는 중요한 권한의 경우에는 사용자로부터 명시적으로 허가를 받도록 되어 있습니다.
예를 들어, 사진을 찍는 기능을 수행시 앱은 사용자에게 다음과 같은 권한이 필요함을 알리고 허가를 요청합니다. 한번 사용자로부터 권한을 허가받으면 권한 설정이 변경되거나 앱이 업데이트되기 전까진 더 이상 권한을 요청하지 않습니다.
만일 접근 권한을 허용하지 않으면 앱 기능이 동작하지 않으며 기능을 수행하는데 필요한 권한을 사용자에게 표시하여 알려줍니다.
앱에 부여된 권한의 상태는 모바일 장치의 설정 메뉴에서 확인 할 수 있습니다. 사용자가 이미 허가하거나 거부한 권한도 이곳에서 다시 설정이 가능합니다.
모바일 운영체제나 보안 정책에 따라 요구 권한이 다르게 표시될 수 있습니다.