Android 震動功能
主介面代碼:
package com.example.vibrator;import android.app.Activity;import android.os.Bundle;import android.view.View;import android.view.View.OnClickListener;import android.widget.Button;public class MainActivity extends Activity {private Button btn_vibrator_0;private Button btn_vibrator_1;@Overrideprotected void onCreate(Bundle savedInstanceState) {super.onCreate(savedInstanceState);setContentView(R.layout.activity_main);btn_vibrator_0 = (Button) findViewById(R.id.btn_vibrator_0);btn_vibrator_1 = (Button) findViewById(R.id.btn_vibrator_1);/** * 點擊設定預設震動模式,震動100毫秒 * */btn_vibrator_0.setOnClickListener(new OnClickListener() {@Overridepublic void onClick(View arg0) {// TODO Auto-generated method stub//停止震動VibratorUtil.VibrateCancel(MainActivity.this);VibratorUtil.Vibrate(MainActivity.this,100); //震動100ms }});/** * 點擊設定自訂震動模式,重複震動 * */btn_vibrator_1.setOnClickListener(new OnClickListener() {@Overridepublic void onClick(View arg0) {// TODO Auto-generated method stub//停止震動VibratorUtil.VibrateCancel(MainActivity.this);//設定震動參數,停50毫秒,震動100毫秒long[] prams={50,100,50,100};VibratorUtil.Vibrate(MainActivity.this,prams,true); //震動100ms }});}@Overrideprotected void onDestroy() {// TODO Auto-generated method stubsuper.onDestroy();//停止震動VibratorUtil.VibrateCancel(MainActivity.this);}}震動功能模組:
package com.example.vibrator;import android.app.Activity;import android.app.Service;import android.os.Vibrator;/** * 手機震動工具類 * * @author Administrator * */public class VibratorUtil {/** * final Activity activity :調用該方法的Activity執行個體 * long milliseconds :震動的時間長度,單位是毫秒 */public static void Vibrate(final Activity activity, long milliseconds) {Vibrator vib = (Vibrator) activity.getSystemService(Service.VIBRATOR_SERVICE);vib.vibrate(milliseconds);}/** * final Activity activity :調用該方法的Activity執行個體 * long[] pattern :自訂震動模式。數組中數位含義依次是[靜止時間長度,震動時間長度,靜止時間長度,震動時間長度。。。]時間長度的單位是毫秒 * boolean isRepeat :是否反覆震動,如果是true,反覆震動,如果是false,只震動一次 * */public static void Vibrate(final Activity activity, long[] pattern,boolean isRepeat) {Vibrator vib = (Vibrator) activity.getSystemService(Service.VIBRATOR_SERVICE);vib.vibrate(pattern, isRepeat ? 1 : -1);}/** * 停止震動 * */public static void VibrateCancel(final Activity activity){Vibrator vib = (Vibrator) activity.getSystemService(Service.VIBRATOR_SERVICE);vib.cancel();}}
範例程式碼地址:http://download.csdn.net/detail/stop_pig/8213105