2021年5月15日 星期六

如何讓手機有節奏的震動

要求權限
Manifest(AndroidManifest.xml) 裡加上權限要求
<uses-permission android:name=
"com.android.launcher.permission.VIBRATE" />

import 會用到的物件類別
import android.os.VibratorEffect;
import android.os.Vibrator;
android.os.Build;

設定相關參數
//重覆次數
int repeat = 2;
設定節奏
int dot = 200; //震動持續
int dash = 500; //震動停止
long[] pattern = {
0, // Start immediately
dot, dash,
};
啟動震動功能
//使用 Context.getSystemService 建立Vibrator物件
Vibrator myVibrator = (Vibrator) getSystemService(Service.VIBRATOR_SERVICE);
if (Build.VERSION.SDK_INT >= Build.VERSION_CODES.O)
{
    myVibrator.vibrate (VibrationEffect.createWaveform(pattern, repeat));
}
else
{
        myVibrator.vibrate(pattern, repeat);
        //SDK 較低的狀況下,執行舊版函式
}


createWaveform

讓裝置可依傳入的參數作有節奏的震動

VibrationEffect.createWaveform
VibrationEffect createWaveform (long[] timings,int repeat)
建立震動模式的 VibrationEffect 物件
傳入節奏陣列 及 重覆的次數
官方文件: createWaveform


相關文章

如何執行手機震動功能

相關資源

Vibrator 官方文件

VibrationEffect 官方文件

API level 官方文件