设置手机震动,首先要在配置文件中添加权限:
<uses-permission android:name="android.permission.VIBRATE"/>
其次取得Vibrator对象。
vibrator = (Vibrator)getApplication().getSystemService(Service.VIBRATOR_SERVICE);
代码很简单,相关讲解看代码注释就成。
package com.kevin.vibrator;
import android.app.Activity;
import android.app.Service;
import android.os.Bundle;
import android.os.Vibrator;
import android.view.View;
import android.view.View.OnClickListener;
import android.widget.Toast;
import android.widget.ToggleButton;
public class Main extends Activity {
private Vibrator vibrator;
private ToggleButton tb_short,tb_long,tb_tune;
/** Called when the activity is first created. */
@Override
public void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.main);
// 取得Vibrator对象
vibrator = (Vibrator)getApplication().getSystemService(Service.VIBRATOR_SERVICE);
tb_short = (ToggleButton) findViewById(R.id.tb_short);
tb_long = (ToggleButton) findViewById(R.id.tb_long);
tb_tune = (ToggleButton) findViewById(R.id.tb_tune);
tb_short.setOnClickListener(new ToggleButtonOnClickListener());
tb_long.setOnClickListener(new ToggleButtonOnClickListener());
tb_tune.setOnClickListener(new ToggleButtonOnClickListener());
}
class ToggleButtonOnClickListener implements OnClickListener{
@Override
public void onClick(View v) {
ToggleButton tb = (ToggleButton)v;
switch (tb.getId()) {
case R.id.tb_short:
{
if (tb.isChecked()) {
// 设置震动周期
/*
* 第一个参数是个长整型的时间数组,数组中第一个值表示在vibrator
* 打开前等待的毫秒数,接下来的值表示vibrator关闭前等待的毫秒数,
* 以此类推。
* 第二个参数是设置震动的模式,-1的话,只震动一轮,0的话震动一直持续
*/
vibrator.vibrate(new long[]{100,10,100,1000}, -1);
Toast.makeText(Main.this, getString(R.string.processing), Toast.LENGTH_SHORT).show();
}else{
// 取消震动
vibrator.cancel();
Toast.makeText(Main.this, getString(R.string.cancel), Toast.LENGTH_SHORT).show();
}
break;
}
case R.id.tb_long:
{
if (tb.isChecked()) {
// 设置震动周期
vibrator.vibrate(new long[]{100,100,100,1000}, 0);
Toast.makeText(Main.this, getString(R.string.processing), Toast.LENGTH_SHORT).show();
}else{
// 取消震动
vibrator.cancel();
Toast.makeText(Main.this, getString(R.string.cancel), Toast.LENGTH_SHORT).show();
}
break;
}
case R.id.tb_tune:
{
if (tb.isChecked()) {
// 设置震动周期
vibrator.vibrate(new long[]{1000,50,1000,50,1000}, 0);
Toast.makeText(Main.this, getString(R.string.processing), Toast.LENGTH_SHORT).show();
}else{
// 取消震动
vibrator.cancel();
Toast.makeText(Main.this, getString(R.string.cancel), Toast.LENGTH_SHORT).show();
}
}
break;
default:
break;
}
}
}
}
分享到:
相关推荐
Android vibrator方法关闭和打开振动功能,通过Android vibrator方法设置不同的参数,来关闭和打开手机振动功能: ToggleButton tb2 = (ToggleButton)findViewById(R.id.tb2); //获得ToggleButton对象 tb2....
在Android开发中,实现“微信摇一摇”功能是一个相当有趣的互动体验,它结合了设备的传感器技术,尤其是重力感应器(Gravity Sensor),以及Vibrator服务来模拟真实世界中的摇晃动作。这个功能通常用于游戏、抽奖...
在Android开发中,Vibrator类是用于实现设备振动功能的核心组件。这个压缩包"Android应用源码-实现Vibrator测试功能,短震动,长震动,频率震动,取消震动.zip"包含了一个示例应用,它详细展示了如何利用Vibrator类的...
在Android系统中,`Vibrator`是一个非常重要的组件,它允许应用实现设备的震动功能。在标题"Vibrator.zip"中,我们可以推测这个压缩包可能包含了一些关于如何在Android应用程序中使用`Vibrator`服务的代码示例或者...
振动器(Vibrator)在Android系统中扮演着重要的角色,为用户提供触觉反馈。这篇讨论主要围绕Android内核中的vibration驱动程序,以及如何通过kernel层实现与Android Hal层的交互,来控制设备的震动功能。我们将深入...
在Android系统中,`Vibrator`类是用于控制设备震动的核心接口。这个Demo展示了如何使用`Vibrator`来实现手机的震动效果。在移动应用开发中,震动功能常常被用作用户反馈,例如在游戏中提示玩家或者在接收通知时提供...
安卓摇一摇传感器相关-Vibrator手机震动服务 在安卓开发中,Vibrator(震动器)是手机上一个常见的硬件功能,它允许应用程序在特定情况下通过震动来提醒用户。Vibrator服务属于Android框架的一部分,可以通过调用...
protected void onCreate(Bundle savedInstanceState) { super.onCreate... vibrator = (Vibrator) getSystemService(Service.VIBRATOR_SERVICE); //控制手机震动1秒 vibrator.vibrate(1000); } }
在Android操作系统中,实现手机震动功能主要涉及到`Vibrator`类的使用,它是Android SDK提供的一种接口,允许应用程序控制设备的震动。以下是对这个主题的详细解析: 首先,我们需要了解`Vibrator`类的基本概念。它...
2. **获取`Vibrator`实例**:Windows Phone 7系统提供了一个全局的`Vibrator`实例,可以通过静态方法`Vibrator.Default`获取。 ```csharp Vibrator vibe = Vibrator.Default; ``` 3. **启动振动**:使用`Vibrate`...
在Android系统中,`Vibrator`类是用于控制设备振动的核心接口,允许应用程序触发设备的物理震动效果。本文将深入探讨如何使用`Vibrator`来实现Android手机的节奏性震动,以及相关的编程知识点。 首先,我们需要了解...
在Android平台上,Vibrator服务是系统提供的一种功能,允许应用程序控制设备的震动。这个服务对于创建具有触觉反馈的应用程序非常关键,例如游戏、通知提醒或者其他需要用户感知的交互场景。下面将详细介绍如何在...
在Android系统中,震动功能是通过Vibrator服务来实现的,该服务允许应用程序控制设备的震动硬件。本文将深入探讨Android震动系统开发的全过程,包括Linux内核、硬件抽象层(HAL)以及Java Native Interface(JNI)层的...
在Android开发中,Vibrator服务是一个非常实用的功能,它允许应用程序控制设备的震动反馈。这篇博客文章,"安卓开发-Vibrator手机震动服务 - 小小程序员 - 博客频道 - CSDN"深入探讨了如何在Android应用中实现手机...
在Android开发中,Vibrator(振动器)是一个重要的硬件组件,它允许开发者通过编程方式控制设备的震动。在收到推送消息或其他特定事件时,可以利用振动器为用户提供触觉反馈。本节教程将详细介绍如何在Android应用...
Vibrator vibrator = (Vibrator)getSystemService(VIBRATOR_SERVICE); ``` 这样就获得了对手机震动服务的访问权限。 2. **检测硬件支持**: 在使用Vibrator服务之前,应该检查设备是否具备震动硬件。`...
在Android平台上,`Vibrator`类是用于控制设备震动的核心组件。这个类允许应用程序产生不同程度和模式的震动效果,提供了一种与用户交互的新方式,特别是在无声或静音模式下。下面我们将详细讨论如何使用`Vibrator`...