我想在我的应用程序中添加振动功能,只想开始一个简单的振动,我尝试了很多od turtoria,但似乎都不起的作用
@SuppressLint("NewApi")
override fun onCreate(savedInstanceState: Bundle?) {
super.onCreate(savedInstanceState)
setContentView(R.layout.activity_main)
val timer_button = findViewById<Button>(R.id.timer_button)
val timer_text: EditText = findViewById<EditText>(R.id.time_text)
val vibrator = getSystemService(VIBRATOR_MANAGER_SERVICE) as VibratorManager
timer_button.setOnClickListener {
//val pattern = longArrayOf(0, 200, 100, 300)
vibrator.getDefaultVibrator().vibrate(VibrationEffect.createOneShot(1000,VibrationEffect.DEFAULT_AMPLITUDE))
Toast.makeText(this, vibrator.getDefaultVibrator().getId().toString(),Toast.LENGTH_SHORT).show()
}}
此外,我还在manifest.xml 中添加了振动权限
<uses-permission android:name="android.permission.VIBRATE" />
它适用于所有APIS
val vibration = if (Build.VERSION.SDK_INT >= Build.VERSION_CODES.S) { val vbManager = getSystemService(Context.VIBRATOR_MANAGER_SERVICE) as VibratorManager vbManager.defaultVibrator } else { @Suppress("DEPRECATION") getSystemService(VIBRATOR_SERVICE) as Vibrator } if (vibration.hasVibrator()) { vibration.vibrate(VibrationEffect.createOneShot(100, VibrationEffect.DEFAULT_AMPLITUDE)) }