번역 : 메이커스페이스 G·캠프 박기태 총괄, 번역에 오류 많아요, 원본확인하세요.
삼성개발자의 강의에 다시 오신 것을 환영합니다.
이번 회에서는 응용 프로그램 상태, 상태전환 및 TIZEN 응용프로그램시작을 소개합니다.
응용소프트웨어을 실행 한 후 발생하는 일에 대해 자세히 설명하겠습니다.
앞면과 뒷면을 오가면서 다른 응용소프트웨어을 호출합니다.
시작합니다.
응용소프트웨어의 처리순서는 콜백(call back)에 의해 결정됩니다. 이들은 상태의 변화를 가져옵니다.
응용 프로그램은 사용자의 요청으로 시작됩니다.
[준비단계, Ready] 시작프로그램(launcher)에서 시작하거나 다른 응용 프로그램에서 시작할 수 있습니다. 이런 이벤트(event)은 app_create_cb() (응용프로그램 생성을 위해 준비된 콜백(call back)이 실행됩니다.
[생성단계, Created] main 반복문을 시작하고, 응용소프트웨어가 생성 단계로 넘어 갑니다.
생성단계에서 실행단계로 넘어가기 위해서 app_resume_cb() (응용프로그램 재시작을 위해 준비된 콜백(call back))이 실행되고, 응용소프트웨어을 보이게 합니다.
[실행단계, Running] 응용소프트웨어이 실행중일때 이므로, 사용자의 요구를 맞춰 서비스하고, 이에 맞춰 표시합니다.
두 개의 준비된 콜백(call back)이 상태에 영향을 줄 수 있습니다.
먼저, app_control_cb() (응용프로그램 조정을 위해 준비된 콜백(call back))입니다.
보시듯이 app_control_cb()은 생성단계와 일시정지 상태에서도 사용할 수 있습니다.
이것이 단계 별로 정보를 교환하게 하며, 그 위에 다른 응용소프트웨어을 호출 할 수도 있습니다.
이것이 응용소프트웨어을 실행상태를 유지하게 합니다.
사용자의 다른 응용소프트웨어을 시작함으로써, app_pause_cb() (응용 소프트웨어 일시정지를 위해 준비된 콜백(call back))을 부를 수 있습니다.
[일시정지 단계] 사용자가 홈 화면으로 이동하거나, 우선 순위가 높은 이벤트(event)을 동작하거나, 알람의 동작 같은 것에서도 발생할 수 있습니다.
일시 중지 상태에서 응용소프트웨어이 더 이상 사용자에게 보이지 않습니다.
조금 전에 언급했듯이 app_control_cb()이 이 상태에 영향을 줄 수 있습니다.
app_resume_cb()을 호출하여 응용소프트웨어를 앞 면으로 보내고, 사용자가 다시 볼 수있게됩니다.
[종료 단계] 마지막을 위해 준비된 콜백(call back)인 app_terminate_cb()은 이벤트(event)을 종료합니다.
응용 프로그램 요청이나 낮은 메모리 킬러 (Low Memory Killer) 사용으로 인해 발생할 수 있습니다.
이제 응용소프트웨어(app, 앱)이 종료되었습니다.
준비된 콜백(call back) 및 이벤트(event)에 대한 더 큰 그림을 보기위해 응용소프트웨어 작업틀(framework)을 요약 해 보겠습니다.
다섯 가지 상태에서 상태변화의 취급자(handler)가 있습니다.
응용소프트웨어 작업틀에서 응용소프트웨어를 초기화하고 상태변화를 주기 위해 app_create_cb()을 호출합니다.
다음은 main 반복문 입니다. 여기에는 세 가지 준비된 콜백(call back)이 포함되어, 세 가지 상태 간에 상태를 전환할 수 있습니다.
마지막은 응용소프트웨어(app, 앱) 종료입니다. app_terminate_cb()이 종료하게 합니다.
이제 응용 프로그램 수명주기를 알았으므로 응용소프트웨어을 시작하는 데 집중하겠습니다.
보기보다 더 많은 것이 있습니다.
응용 프로그램 상태에서 다시 호출하면 app_control_cb()은 세 가지 상태와 관련됩니다.
먼저 응용 프로그램이 시작된 이유가 포함되어 있습니다.
시작프로그램에서 사용자가 응용소프트웨어를 시작한 경우 준비된 콜백(call back)이 비어 있습니다.
그러나, 다른 응용 프로그램에서 응용 프로그램을 시작한 경우 준비된 콜백(call back)에는 정보가 포함됩니다.
이제 컨텐츠가 있으므로, 응용 프로그램이 그러한 처리를 담당합니다.
응용소프트웨어이 준비된 콜백(call back)을 처리 할 수 있도록 다음 정보를 설정할 수 있습니다.
작업, 수행 할 작업입니다.
URI는 수행 할 데이터 자체입니다.
MIME 유형은 특정 유형의 URI입니다.
App ID는 시작할 응용소프트웨어의 ID입니다. 추가 데이터는 시작 요청 및 결과에 대한 추가 정보를 제공합니다.
작업은 필수 정보입니다.
나머지는 응용 프로그램에 선호하는 시작 유형에 따라 다릅니다.
첫 번째는 명시적 시작입니다.
여기서는 응용프로그램 ID가 필요합니다.
특정 응용 프로그램을 설정하고 있기 때문에, 장치에 설치되어 있지 않을 수 있습니다.
App_Not_Found 결과가 나타납니다.
다음은 현재 응용소프트웨어에서 계산기를 호출하는 코드 단편입니다.
다른 하나는 묵시적 시작입니다.
여기서는 작업, URI, MIME 유형 각각 또는 세 가지 모두를 전달해야합니다.
이 목적은 요청을 처리 할 수있는 적합한 응용소프트웨어을 선택하는 것입니다.
모든 매개 변수가 일치해야합니다.
하나만 해당하는 경우 응용소프트웨어가 자동으로 시작됩니다.
그렇지 않으면 사용자에게 기본 응용 프로그램을 선택하라는 메시지가 표시됩니다.
종종 우리는 우리가 부른 응용소프트웨어의 정보를 원합니다.
여기에 추가 데이터가 들어오는 곳입니다.
TIZEN은 사용자가 원하는대로 사전 정의 된 추가 데이터 키를 가지고 있습니다.
그러나 자신만의 것을 만들고 싶다면 문제가되지 않습니다.
그러나 사용자 정의 키는 두 응용소프트웨어간에 공유되어야합니다.
이 강의를 요약 마무리하겠습니다.
응용 프로그램 상태는 준비, 생성, 실행, 일시중지, 종료입니다. 준비된 콜백(call back)은 한 상태에서 다른 상태로 이동하게 합니다.
응용소프트웨어을 시작하는 것은 명시 이거나 묵시적일 수 있습니다.
따라서 직접 지정하거나 유사성의 매개 변수를 제공하십시오.
app_control_cb ()는 사용중인 응용소프트웨어(app, 앱)의 흐름을 제어합니다.
정보를 중계하고 하나의 응용소프트웨어(app, 앱)을 다른 응용소프트웨어에서 시작하게 합니다.
바로 응용소프트웨어 기본 사항입니다.
이것이 순수 TIZEN 응용소프트웨어(app, 앱)가 기본적으로 어떻게 작동하는지에 대한 더 깊은 이해를 돕기를 바랍니다.
문의 사항이 있으면 developer.samsung.com 및 developer.tizen.org에 접속하여, 등록 후 로그인하십시오.
또한 이 동영상에 엄지 손가락을 올리거나 삼성 개발자 채널을 구독하는 것을 잊지 마십시오.
시청해 주셔서 감사합니다.