[안드로이드] 핸드폰 진동(Vibration) 설정하기

2010.04.27 10:01

 

 

<목표>  [안드로이드] 핸드폰 진동(Vibration) 설정하기

 

 오늘은 안드로이드폰에 내장되어 있는 하드웨어 기능 중 진동 설정하는 방법에 대해서 알아보겠습니다. 진동은 여러 어플리케이션에서 다양하게 활용할 수가 있습니다. 오류 체크나, 메시지를 받을 때, 특히 게임에서 문제가 틀렸거나, 잘 못된 동작을 했을 때 등 다양한 용도로 사용할 수 있습니다.

 의외로 하드웨어를 손대는 코드는 라이브러리로 잘 짜여져 있어서 별 무리 이 접근할 수 있습니다. 특히 진동을 설정하는 부분은 단 두 줄이면 끝나니까요. 얼른 알아볼까요?

 

 

  <핵심 코드> java 와 AndroidManifest.xml

 

// Java Source Code
Vibrator vibe = (Vibrator) getSystemService(Context.VIBRATOR_SERVICE);
vibe.vibrate(500);

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

 

 

  STEP 1 자바 소스 코드 

 

 자바 소스도 단 두 줄이면 바로 실행이 됩니다. 너무나도 직관적이어서 포스팅하는 것 조차 쑥쓰럽게 만드네요.

Vibrator vibe = (Vibrator) getSystemService(Context.VIBRATOR_SERVICE);
vibe.vibrate(500);

 위의 코드를 onCreate()에 넣어주어 Vibrator 객체를 만듭니다. 이것을 전역 변수로 사용하면 어느 곳에서나 접근할 수 있겠죠? 자신이 원하는 SystemService를 설정하고 불러온 인스턴스를 이용해서 하드웨어 기능에 접근할 수 있는 구조로 되어있습니다. 다른 기능도 이와 비슷한 방법으로 사용하면 됩니다. Vibrator 객체를 생성하여, vibrate 함수만 호출 하면 됩니다. 당연히 인자로 들어가는 숫자(500)은 진동 시간이겠죠? 즉, 0.5초의 시간동안 진동이 울리게 됩니다.

   

  STEP 2 Xml 코드

 

  진동 설정하는 데 Xml 코드는 필요없겠죠~?

   

  STEP 3 AndroidManifest.xml 코드

 

 진동 설정을 해주기 위해서는 하드웨어에 접근 허가권을 얻어야 합니다. 즉, AndroidManifest.xml 파일에 퍼미션을 설정해주어야 하죠.

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

 

 

<마무리>  핸드폰 Vibrator 를 이용하여 Vibration 이용하기

 

 핸드폰 기능 중 진동 기능이 있습니다. 이런 기능을 의외로 간단한 코드 2줄로 바로 실행이 가능합니다. Vibrator를 사용하기 위해서 getSystemService를 이용하여 Vibrator서비스를 객체로 받아옵니다. 그리고 시간을 설정해준 뒤, 실행만 시키면 간단히 진동 서비스를 이용할 수 있습니다.

   

 

 


Posted by 
맥박맥박의 개발 일지

 

  • 2013년 7월 26일 업데이트하였습니다.

 

 

맥박 안드로이드 , , , ,

  1. Blog Icon

    비밀댓글입니다

  2. 반갑습니다. ^^
    현재 진동 강도를 조절하는 메소드는 없는 것으로 알고 있습니다.
    이전에 저도 궁금해서 찾아보았지만, 못찾았던 기억이 있습니다. ^^;;

  3. Blog Icon

    비밀댓글입니다