티스토리 뷰

Android

Android 진동 울리기

parkho79 2020. 6. 18. 09:38
728x90



이번 포스팅에서는 Android 기기에 진동을 발생시키는 방법에 대해 알아보자.

 



Vibrator

Android 에서 제공하는 Vibrator 객체를 이용하여 진동을 발생시킬 수 있다.

https://developer.android.com/reference/android/os/Vibrator

 

◼ vibrate(long milliseconds)

주어진 시간 동안 진동 발생

Android O(26) 부터 deprecated 됨.

 

◼ vibrate(android.os.VibrationEffect)

주어진 vibration effect 에 맞춰 진동 발생

Android O(26) 부터 추가됨.

 

◼ VibrationEffect.createOneShot(long milliseconds, int amplitude)

한 번만 진동을 울릴 경우 사용.

 - milliseconds : 진동 시간

 - amplitude : 진동의 세기. 기본값은 DEFAULT_AMPLITUDE 이고 지정 값은 1 ~ 255.

 

◼ VibrationEffect.createWaveform(long[] timings, int[] amplitudes, int repeat)

반복하여 진동을 울릴 때 사용합니다.

 - timings : 진동의 패턴으로 반드시 짝수 개수로 작성이 필요. (배열 중 홀수 값 : 대기시간 / 짝수 값 : 진동 시간)

 - amplitudes : 진동의 세기. 생략 가능 (생략하는 경우 default 값으로 지정)

 - repeat : 진동 반복 여부. 진동을 중지하고 싶다면 cancel() 로 취소 가능.

-1 : 반복 하지 않는다.

0 : 주어진 패턴을 모두 반복

1 : 처음 패턴 후 해당 인덱스 위치의 패턴 반복 으로 계속 반복.

2 : 이 한 번 울린 후 으로 계속 반복.



Example

1. Manifest 등록

"<uses-permission android:name="android.permission.VIBRATE"/>"

 

2. Main activity 구현

"vibrator.vibrate(VibrationEffect.createOneShot(1000, VibrationEffect.DEFAULT_AMPLITUDE));"



Source code

https://github.com/parkho79/VibrateSample



728x90

'Android' 카테고리의 다른 글

유용한 이미지 라이브러리 - Glide (2)  (0) 2021.05.13
유용한 이미지 라이브러리 - Glide (1)  (0) 2021.05.13
객체 직렬화 - Bundle  (0) 2020.03.19
객체 직렬화 - Parcelable  (0) 2020.03.04
객체 직렬화 - Serializable  (0) 2020.02.28
댓글