public final class

Action.Vibration

org.smartrobot.android.action.Action.Vibration

Class Overview

폰의 진동을 발생시키는 액션의 모델 ID와 각 디바이스의 ID에 대한 상수 값을 정의한다.

Action.Vibration은 3개의 커맨드 디바이스로 구성되어 있으며, 각 디바이스의 데이터는 정수형 배열로 선언되어 있다.

종류 디바이스 ID 디바이스 이름 데이터 형 배열 크기 단위 값의 범위 초기 값
커맨드 COMMAND_TIME "Time" int [ ] 1 ms 0 ~ 65535 0
커맨드 COMMAND_PATTERN "Pattern" int [ ] -1 ms 0 ~ 65535 0
커맨드 COMMAND_REPEAT "Repeat" int [ ] 1 -1 ~ 32767 -1

  • COMMAND_TIME
    진동의 지속 시간(ms)을 나타낸다. 시간 커맨드 디바이스에 데이터를 쓰면 패턴 커맨드 디바이스와 반복 커맨드 디바이스의 데이터는 무시된다.
  • COMMAND_PATTERN
    진동을 켜거나 끄는 시간 구간으로 구성된 패턴을 나타낸다. 패턴을 표시하는 정수형 배열에서 첫 번째 값은 진동을 켜기 전에 기다리는 시간(ms)이다. 두 번째 값부터 진동을 켠 상태를 유지하는 시간(ms)과 진동을 끈 상태를 유지하는 시간(ms)을 번갈아 입력한다. 패턴 커맨드 디바이스에 데이터를 쓰면 시간 커맨드 디바이스의 데이터는 무시된다.
  • COMMAND_REPEAT
    진동 패턴을 나타내는 정수형 배열에서 반복할 부분의 시작 인덱스를 나타낸다. 반복하지 않을 경우에는 -1을 입력하면 된다. 반복 커맨드 디바이스에 데이터를 쓰면 시간 커맨드 디바이스의 데이터는 무시된다.

Action.Vibration은 activate() 메소드로 시작하여 deactivate() 메소드로 중지할 때까지 실행된다.

 void someMethod(Action action)
 {
     Device deviceTime = action.findDeviceById(Action.Vibration.COMMAND_TIME);
     deviceTime.write(1000); // 1초간 진동을 출력한다.

     Device devicePattern = action.findDeviceById(Action.Vibration.COMMAND_PATTERN);
     int[] pattern = new int[] { 1000, 2000, 3000, 4000, 5000, 6000 }; // 1초 후에 2초간 진동, 3초 쉬고 4초간 진동, 5초 쉬고 6초간 진동
     devicePattern.write(pattern); // 진동 패턴을 쓴다.

     Device deviceRepeat = action.findDeviceById(Action.Vibration.COMMAND_REPEAT);
     deviceRepeat.write(2); // 진동 패턴의 인덱스 2부터 끝까지를 반복한다.
 }
See Also

Summary

Constants
int COMMAND_PATTERN 패턴 커맨드 디바이스의 ID를 나타내는 상수.
int COMMAND_REPEAT 반복 커맨드 디바이스의 ID를 나타내는 상수.
int COMMAND_TIME 시간 커맨드 디바이스의 ID를 나타내는 상수.
String ID Vibration 액션의 모델 ID를 나타내는 상수.

Constants

public static final int COMMAND_PATTERN

라이브러리 버전 1.0.0부터

패턴 커맨드 디바이스의 ID를 나타내는 상수.

패턴 커맨드 디바이스의 데이터는 진동을 켜거나 끄는 시간 구간으로 구성된 패턴을 나타낸다. 패턴을 표시하는 정수형 배열에서 첫 번째 값은 진동을 켜기 전에 기다리는 시간(ms)이다. 두 번째 값부터 진동을 켠 상태를 유지하는 시간(ms)과 진동을 끈 상태를 유지하는 시간(ms)을 번갈아 입력한다. 패턴 커맨드 디바이스에 데이터를 쓰면 시간 커맨드 디바이스의 데이터는 무시된다.

Action 클래스의 activate() 메소드를 호출하기 전에 설정해야 한다.

  • 상수 값: 0x40400001
  • 디바이스의 데이터 배열
    • 데이터 형: int [ ]
    • 배열 크기: -1
    • 값의 범위: 0 ~ 65535 [ms]
    • 초기 값: 0

public static final int COMMAND_REPEAT

라이브러리 버전 1.0.0부터

반복 커맨드 디바이스의 ID를 나타내는 상수.

반복 커맨드 디바이스의 데이터는 진동 패턴을 나타내는 정수형 배열에서 반복할 부분의 시작 인덱스를 나타낸다. 반복하지 않을 경우에는 -1을 입력하면 된다. 반복 커맨드 디바이스에 데이터를 쓰면 시간 커맨드 디바이스의 데이터는 무시된다.

Action 클래스의 activate() 메소드를 호출하기 전에 설정해야 한다.

  • 상수 값: 0x40400002
  • 디바이스의 데이터 배열
    • 데이터 형: int [ ]
    • 배열 크기: 1
    • 값의 범위: -1 ~ 32767
    • 초기 값: -1

public static final int COMMAND_TIME

라이브러리 버전 1.0.0부터

시간 커맨드 디바이스의 ID를 나타내는 상수.

시간 커맨드 디바이스의 데이터는 진동의 지속 시간(ms)을 나타낸다. 시간 커맨드 디바이스에 데이터를 쓰면 패턴 커맨드 디바이스와 반복 커맨드 디바이스의 데이터는 무시된다.

Action 클래스의 activate() 메소드를 호출하기 전에 설정해야 한다.

  • 상수 값: 0x40400000
  • 디바이스의 데이터 배열
    • 데이터 형: int [ ]
    • 배열 크기: 1
    • 값의 범위: 0 ~ 65535 [ms]
    • 초기 값: 0

public static final String ID

라이브러리 버전 1.0.0부터

Vibration 액션의 모델 ID를 나타내는 상수.

  • 상수 값: "org.smartrobot.android.action.vibration"