android.app.Activity | |
↳ | org.smartrobot.android.RobotActivity |
로봇을 생성하고 이벤트를 처리하는 등의 기본적인 작업을 해놓은 액티비티.
다음은 로봇의 생명주기를 나타낸 것이다. 사각형 박스는 수행할 동작을 구현할 수 있는 콜백 메소드를 나타내고, 색깔있는 둥근 사각형은 내부적으로 변경되는 상태를 나타낸다. 로봇을 구성하는 디바이스의 데이터는 onActivated() 메소드가 호출된 이후부터 onDeactivated() 메소드가 호출되기 전까지 읽거나 쓸 수 있다.
Public Methods | |||||||||||
---|---|---|---|---|---|---|---|---|---|---|---|
onInitialized(Robot) 메소드가 호출된 후에 애플리케이션이 론처에 연결되었을 때 호출된다.
|
|||||||||||
SmartRobot.deactivate() 메소드를 호출한 후 또는 론처가 종료되어, 애플리케이션이 론처에서 연결 해제되었을 때 호출된다.
|
|||||||||||
디바이스의 데이터가 갱신되었을 때 호출된다.
|
|||||||||||
론처가 종료되었을 때 호출된다.
|
|||||||||||
onActivated() 메소드가 호출된 이후부터 onDeactivated() 메소드가 호출되기 전까지 약 20ms마다 주기적으로 호출된다.
|
|||||||||||
SmartRobot.activate(Context, SmartRobot.Callback) 메소드를 호출한 후에 Robot 인스턴스가 생성되거나 Robot 인스턴스가 변경되었을 때 호출된다.
|
|||||||||||
론처에서 현재 연결된 로봇의 이름을 변경했을 때 호출된다.
|
|||||||||||
하드웨어 로봇과 블루투스 연결 상태가 변경되었을 때 호출된다.
|
onInitialized(Robot) 메소드가 호출된 후에 애플리케이션이 론처에 연결되었을 때 호출된다.
onActivated() 메소드가 호출된 이후부터 onDeactivated() 메소드가 호출되기 전까지 디바이스의 데이터를 읽거나 쓸 수 있으며, 약 20ms마다 주기적으로 onExecute() 메소드가 호출된다.
SmartRobot.deactivate() 메소드를 호출한 후 또는 론처가 종료되어, 애플리케이션이 론처에서 연결 해제되었을 때 호출된다.
onDeactivated() 메소드가 호출된 이후에는 디바이스의 데이터를 읽거나 쓸 수 없다.
디바이스의 데이터가 갱신되었을 때 호출된다.
values는 정수형 배열(int[]) 또는 실수형 배열(float[]), 스트링 배열(String[])의 데이터 형을 가진다.
device | 데이터가 갱신된 디바이스 |
---|---|
values | 디바이스의 데이터 배열 |
timestamp | 데이터가 갱신된 시간 (System.nanoTime() 메소드로 측정된 시간) |
론처가 종료되었을 때 호출된다.
론처가 종료될 때 애플리케이션도 같이 종료되어야 하므로 onDisposed() 메소드에서 액티비티를 닫고 리소스를 해제하는 등의 종료 작업을 해야 한다.
onActivated() 메소드가 호출된 이후부터 onDeactivated() 메소드가 호출되기 전까지 약 20ms마다 주기적으로 호출된다.
onExecute() 메소드에서는 항상 디바이스의 데이터를 읽거나 쓸 수 있다.
SmartRobot.activate(Context, SmartRobot.Callback) 메소드를 호출한 후에 Robot 인스턴스가 생성되거나 Robot 인스턴스가 변경되었을 때 호출된다.
즉, 로봇의 인스턴스가 새로 생성되었을 때, 론처에서 로봇을 변경하여 다른 로봇 인스턴스로 변경되었을 때 호출된다.
robot | 로봇의 인스턴스 |
---|
론처에서 현재 연결된 로봇의 이름을 변경했을 때 호출된다.
name | 변경된 로봇의 이름 |
---|
하드웨어 로봇과 블루투스 연결 상태가 변경되었을 때 호출된다.
state가 가질 수 있는 값은 Robot 인터페이스에 정의되어 있다.
state | 블루투스 연결 상태 |
---|