public interface

SmartRobot.Callback

org.smartrobot.android.SmartRobot.Callback
Known Indirect Subclasses

Interface Overview

로봇의 생명주기와 이벤트에 따라 호출되는 메소드를 정의한다.

다음은 로봇의 생명주기를 나타낸 것이다. 사각형 박스는 수행할 동작을 구현할 수 있는 콜백 메소드를 나타내고, 색깔있는 둥근 사각형은 내부적으로 변경되는 상태를 나타낸다. 로봇을 구성하는 디바이스의 데이터는 onActivated() 메소드가 호출된 이후부터 onDeactivated() 메소드가 호출되기 전까지 읽거나 쓸 수 있다.

See Also

Summary

Public Methods
void onActivated()
onInitialized(Robot) 메소드가 호출된 후에 애플리케이션이 론처에 연결되었을 때 호출된다.
void onDeactivated()
SmartRobot.deactivate() 메소드를 호출한 후 또는 론처가 종료되어, 애플리케이션이 론처에서 연결 해제되었을 때 호출된다.
void onDisposed()
론처가 종료되었을 때 호출된다.
void onExecute()
onActivated() 메소드가 호출된 이후부터 onDeactivated() 메소드가 호출되기 전까지 약 20ms마다 주기적으로 호출된다.
void onInitialized(Robot robot)
SmartRobot.activate(Context, SmartRobot.Callback) 메소드를 호출한 후에 Robot 인스턴스가 생성되거나 Robot 인스턴스가 변경되었을 때 호출된다.
void onNameChanged(String name)
론처에서 현재 연결된 로봇의 이름을 변경했을 때 호출된다.
void onStateChanged(int state)
하드웨어 로봇과 블루투스 연결 상태가 변경되었을 때 호출된다.

Public Methods

public void onActivated ()

라이브러리 버전 1.0.0부터

onInitialized(Robot) 메소드가 호출된 후에 애플리케이션이 론처에 연결되었을 때 호출된다.

onActivated() 메소드가 호출된 이후부터 onDeactivated() 메소드가 호출되기 전까지 디바이스의 데이터를 읽거나 쓸 수 있으며, 약 20ms마다 주기적으로 onExecute() 메소드가 호출된다.

public void onDeactivated ()

라이브러리 버전 1.0.0부터

SmartRobot.deactivate() 메소드를 호출한 후 또는 론처가 종료되어, 애플리케이션이 론처에서 연결 해제되었을 때 호출된다.

onDeactivated() 메소드가 호출된 이후에는 디바이스의 데이터를 읽거나 쓸 수 없다.

public void onDisposed ()

라이브러리 버전 1.0.0부터

론처가 종료되었을 때 호출된다.

론처가 종료될 때 애플리케이션도 같이 종료되어야 하므로 onDisposed() 메소드에서 액티비티를 닫고 리소스를 해제하는 등의 종료 작업을 해야 한다.

public void onExecute ()

라이브러리 버전 1.0.0부터

onActivated() 메소드가 호출된 이후부터 onDeactivated() 메소드가 호출되기 전까지 약 20ms마다 주기적으로 호출된다.

onExecute() 메소드에서는 항상 디바이스의 데이터를 읽거나 쓸 수 있다.

public void onInitialized (Robot robot)

라이브러리 버전 1.0.0부터

SmartRobot.activate(Context, SmartRobot.Callback) 메소드를 호출한 후에 Robot 인스턴스가 생성되거나 Robot 인스턴스가 변경되었을 때 호출된다.

즉, 로봇의 인스턴스가 새로 생성되었을 때, 론처에서 로봇을 변경하여 다른 로봇 인스턴스로 변경되었을 때 호출된다.

Parameters
robot 로봇의 인스턴스

public void onNameChanged (String name)

라이브러리 버전 1.0.0부터

론처에서 현재 연결된 로봇의 이름을 변경했을 때 호출된다.

Parameters
name 변경된 로봇의 이름

public void onStateChanged (int state)

라이브러리 버전 1.0.0부터

하드웨어 로봇과 블루투스 연결 상태가 변경되었을 때 호출된다.

state가 가질 수 있는 값은 Robot 인터페이스에 정의되어 있다.