안녕하세요~ 초보개발자 시아아빠입니다!
이번 포스팅은 안드로이드에서 진동을 주고싶을 때!! 그 방법에 대해서 포스팅하겠습니다.
문자가 왔을 때, 카x이 왔을 때 진동 많이 느껴보셨을텐데요!
이 진동 기능은 아시다시피 사용자에게 알리는 기능 또는 이벤트에 대한 인식을 주기위해 사용합니다!
그렇기때문에 앱 개발에 필수적인 요소라고 할 수 있는데요! 이제부터 어떻게 구현하는지 보겠습니다!
우선 진동(Vibrator) 또한 권한 영역인데요.
카메라, 전화걸기 등과 마찬가지로 진동을 사용하기 위해서는 권한이 필요합니다.
권한은 다들 아시다시피 AndroidManifest.xml에 코드를 추가해주는게 첫번째 순서죠!!
1. AndroidManifest.xml에 코드추가
<uses-permission android:name="android.permission.VIBRATE" />
▲이렇게 코드를 추가해주시면 권한 설정은 끝났습니다.
2. 진동기능 추가하려는 Activity에 vibrator 객체 선언
private Vibrator vibrator;
3. 코드에 따라 진동 발생시키고 싶은 시점에 vibrator 객체 정의하기
vibrator = (Vibrator) getSystemService(Context.VIBRATOR_SERVICE);
자 진동구현을 위한 준비는 다 끝났습니다. 이제 실행만 하면 되는데요!
실행시키기 전 알아두셔야 할 게 있습니다.
Android에서 제공하는 Vibrator의 사용법은 2가지가 있어요~!
Do Vibrator.....?
1) 지정된 시간동안!
2) 지정된 패턴!!
첫째! 지정된 시간동안!
지정된 시간동안 진동하는 방법은 매개변수에 시간값을 주는데요!
이 시간값의 단위는 milisecond인 int형 매개변수라서, 1000ms = 1s가 됩니다!!
▼ 지정된 시간동안 진동시키는 법
vibrator.vibrate(1000); //1000ms = 1s 즉, 1초간 진동
ex)
- 1초간 진동 1000
- 0.5초간 500
- 1분간 1*60*1000
둘째! 지정된 패턴으로!
지정된 패턴동안 진동하는 방법은 패턴을 정의하여 패턴값을 넣어주는 것 인데요!
패턴 정의는 아래와 같이 하시면 됩니다.
long[] pattern = {1000, 500, 1000, 500}; //1초 진동! 0.5초 대기! 1초 진동! 0.5초 대기!
vibrator.vibrate(pattern, 0); //0의 값은 pattern을 무한 반복하겠다!(반복 o)
long[] pattern = {1000, 2000, 3000, 4000}; //1초 진동! 2초 대기! 3초 진동! 4초 대기!
vibrator.vibrate(pattern, -1); //-1의 값은 이 pattern을 1번 실행 후 끝낸다(반복x)
이같이 진동, 대기, 진동, 대기 패턴으로 정의해주시면 되어요~!
0의 값을 주었을 때 무한으로 pattern에 따라 진동을 주게 되는데요!
앱 사용시 진동을 무한으로 줄 일은 없죠~?! ㅎㅎ
그래서 멈추기 위해서는 아래 코드를 추가하시면 됩니다!!
vibrator.cancel();
'Android > Develop' 카테고리의 다른 글
[Android] 상태표시줄 색상 변경하기 2 (0) | 2019.09.10 |
---|---|
[Android] 생명주기, onPause와 onStop의 차이점 (5) | 2019.09.06 |
[Android] 안드로이드 스튜디오 "뒤로가기"버튼 두번 눌러 앱 종료시키기! (0) | 2019.07.17 |
[Android] 권한 설정 응용 (0) | 2019.07.11 |
[Android] TextView에 적힌 번호로 전화걸기(권한 요청까지) (2) | 2019.07.05 |
댓글