public class

Action

extends Roboid
org.roboid.robot.NamedElement
   ↳ org.roboid.robot.Roboid
     ↳ org.smartrobot.android.action.Action

Class Overview

액션 객체를 얻거나 시작, 중지, 폐기하는 메소드를 정의한다.

다음은 액션의 상태 변화를 나타낸 것이다.

 var action:Action = Action.obtain(Action.Navigation.ID);
 action.activate();

 ...

 action.deactivate();
 action.dispose();
See Also

Summary

Constants
int ERROR_ILLEGAL_STATE 액션 객체를 얻거나 시작, 중지하는 순서가 잘못 되었음을 나타내는 오류 코드 상수.
int ERROR_INVALID_CONTEXT 컨텍스트가 잘못 되었음을 나타내는 오류 코드 상수.
int ERROR_INVALID_ID 액션의 ID가 잘못 되었음을 나타내는 오류 코드 상수.
int ERROR_NOT_SUPPORTED 지원하지 않는 액션임을 나타내는 오류 코드 상수.
int ERROR_SECURITY 보안 문제로 액션 실행을 실패하였음을 나타내는 오류 코드 상수.
int STATE_ACTIVATED 액션이 시작된 상태를 나타내는 상수.
int STATE_DEACTIVATED 액션이 중지된 상태를 나타내는 상수.
int STATE_DISPOSED 액션이 폐기된 상태를 나타내는 상수.
int STATE_PREPARED 액션이 준비된 상태를 나타내는 상수.
Public Methods
static void disposeAll()
생성된 모든 액션을 폐기한다.
static Action obtain(actionId:String)
액션 ID에 대한 액션 객체를 얻는다.
Boolean activate()
액션의 실행을 시작한다.
Boolean deactivate()
액션의 실행을 중지한다.
void dispose()
액션을 폐기한다.
void setOnCompletedListener(listener:Function)
액션의 실행이 완료되었을 때 호출되도록 리스너 함수를 설정한다.
void setOnErrorListener(listener:Function)
액션 객체를 얻거나 시작, 중지, 폐기하는 과정에서 오류가 발생했을 때 호출되도록 리스너 함수를 설정한다.
void setOnStateChangedListener(listener:Function)
액션의 상태가 변경되었을 때 호출되도록 리스너 함수를 설정한다.
Inherited Methods
From interface org.roboid.robot.NamedElement
From interface org.roboid.robot.Roboid

Constants

public static const ERROR_ILLEGAL_STATE:int

라이브러리 버전 1.0.0부터

액션 객체를 얻거나 시작, 중지하는 순서가 잘못 되었음을 나타내는 오류 코드 상수.

  • 상수 값: -3

public static const ERROR_INVALID_CONTEXT:int

라이브러리 버전 1.0.0부터

컨텍스트가 잘못 되었음을 나타내는 오류 코드 상수.

  • 상수 값: -2

public static const ERROR_INVALID_ID:int

라이브러리 버전 1.0.0부터

액션의 ID가 잘못 되었음을 나타내는 오류 코드 상수.

  • 상수 값: -1

public static const ERROR_NOT_SUPPORTED:int

라이브러리 버전 1.0.0부터

지원하지 않는 액션임을 나타내는 오류 코드 상수.

  • 상수 값: -4

public static const ERROR_SECURITY:int

라이브러리 버전 1.0.0부터

보안 문제로 액션 실행을 실패하였음을 나타내는 오류 코드 상수.

  • 상수 값: -5

public static const STATE_ACTIVATED:int

라이브러리 버전 1.3.0부터

액션이 시작된 상태를 나타내는 상수.

  • 상수 값: 2

public static const STATE_DEACTIVATED:int

라이브러리 버전 1.3.0부터

액션이 중지된 상태를 나타내는 상수.

  • 상수 값: 3

public static const STATE_DISPOSED:int

라이브러리 버전 1.3.0부터

액션이 폐기된 상태를 나타내는 상수.

  • 상수 값: 4

public static const STATE_PREPARED:int

라이브러리 버전 1.3.0부터

액션이 준비된 상태를 나타내는 상수.

  • 상수 값: 1

Public Methods

public static function disposeAll ():void

라이브러리 버전 1.3.0부터

생성된 모든 액션을 폐기한다.

액션을 폐기한 이후에는 activate() 혹은 deactivate() 메소드를 호출하여 액션을 시작하거나 중지할 수 없다. 애플리케이션이 종료되기 전에 반드시 생성된 모든 액션에 대해 dispose() 혹은 Action.disposeAll() 메소드를 호출하여 생성된 액션을 폐기하여야 한다.

public static function obtain (actionId:String):Action

라이브러리 버전 1.3.0부터

액션 ID에 대한 액션 객체를 얻는다.

actionId가 null이면 null을 반환한다. actionId는 각 액션에 정의된 ID 값이다. actionId에 대한 액션 객체가 이미 존재하는 경우에는 기존의 액션 객체를 반환하고, 존재하지 않으면 새로 생성하여 반환한다. 액션 생성을 실패하면 null을 반환한다.

 var action:Action = Action.obtain(Action.Navigation.ID); // Navigation 액션 객체를 얻는다.
Parameters
actionId 액션의 ID
Returns
  • 액션 객체 또는 null

public function activate ():Boolean

라이브러리 버전 1.0.0부터

액션의 실행을 시작한다.

dispose() 혹은 Action.disposeAll() 메소드를 호출하여 액션이 폐기된 후에는 액션이 실행되지 않고 false를 반환한다.

 var action:Action = Action.obtain(Action.Navigation.ID);
 action.activate(); // 액션의 실행을 시작한다.
Returns
  • 성공하면 true, 아니면 false

public function deactivate ():Boolean

라이브러리 버전 1.0.0부터

액션의 실행을 중지한다.

dispose() 혹은 Action.disposeAll() 메소드를 호출하여 액션이 폐기된 후에는 false를 반환한다.

 var action:Action = Action.obtain(Action.Navigation.ID);
 action.activate();
 ...
 action.deactivate(); // 액션의 실행을 중지한다.
Returns
  • 성공하면 true, 아니면 false

public function dispose ():void

라이브러리 버전 1.0.0부터

액션을 폐기한다.

액션을 폐기한 이후에는 activate() 혹은 deactivate() 메소드를 호출하여 액션을 시작하거나 중지할 수 없다. 애플리케이션이 종료되기 전에 반드시 생성된 모든 액션에 대해 dispose() 혹은 Action.disposeAll() 메소드를 호출하여 생성된 액션을 폐기하여야 한다.

 var action:Action = Action.obtain(Action.Navigation.ID);
 ...
 action.dispose(); // 액션을 폐기한다.

public function setOnCompletedListener (listener:Function):void

라이브러리 버전 1.3.0부터

액션의 실행이 완료되었을 때 호출되도록 리스너 함수를 설정한다.

액션에 따라 Action.Navigation과 같이 주어진 명령을 완수하여 실행이 완료되는 액션도 있고, Action.Microphone과 같이 deactivate() 메소드를 호출할 때까지 계속 실행되는 액션도 있다. deactivate() 메소드를 호출할 때까지 계속 실행되는 액션의 경우에는 설정한 리스너 함수가 호출되지 않고, 실행이 완료되는 액션의 경우에만 주어진 명령을 완수하였을 때 설정한 리스너 함수가 호출된다. 설정한 리스너 함수의 호출 여부는 각 액션의 클래스를 참고하기 바란다.

리스너 함수는 activate() 메소드를 호출하기 전에 설정해야 하며, function onActionCompleted(action:Action):void의 형태를 가져야 한다.

 var action:Action = Action.obtain(Action.Navigation.ID);
 action.setOnCompletedListener(onActionCompleted);
 action.activate();

 function onActionCompleted(action:Action):void
 {
 }
Parameters
listener 설정할 리스너 함수

public function setOnErrorListener (listener:Function):void

라이브러리 버전 1.3.0부터

액션 객체를 얻거나 시작, 중지, 폐기하는 과정에서 오류가 발생했을 때 호출되도록 리스너 함수를 설정한다.

리스너 함수는 activate() 메소드를 호출하기 전에 설정해야 하며, function onActionError(action:Action, errorCode:int):void의 형태를 가져야 한다.

 var action:Action = Action.obtain(Action.Navigation.ID);
 action.setOnErrorListener(onActionError);
 action.activate();

 function onActionError(action:Action, errorCode:int):void
 {
 }
Parameters
listener 설정할 리스너 함수

public function setOnStateChangedListener (listener:Function):void

라이브러리 버전 1.3.0부터

액션의 상태가 변경되었을 때 호출되도록 리스너 함수를 설정한다.

리스너 함수는 activate() 메소드를 호출하기 전에 설정해야 하며, function onActionStateChanged(action:Action, state:int):void의 형태를 가져야 한다.

 var action:Action = Action.obtain(Action.Navigation.ID);
 action.setOnStateChangedListener(onActionStateChanged);
 action.activate();

 function onActionStateChanged(action:Action, state:int):void
 {
 }
Parameters
listener 설정할 리스너 함수