android 震动的实现,android实现震动和声音

直接上类  震动和声音是一起的

public class TipHelper {

static Context myContext;

static Vibrator vibrator;

static MediaPlayer mediaPlayer;

public TipHelper (Context context){

myContext=context;

vibrator=(Vibrator)myContext.getSystemService(Service.VIBRATOR_SERVICE);

mediaPlayer=new MediaPlayer();

}

/**

* 震动功能

* @param activit

* @param milliseconds 震动时长 单位为毫秒

*/

public static void Vibrate(long milliseconds){

//long [] pattern={100,400,100,400};//停止 开启 停止 开启

//vibrator.vibrate(pattern, 2);//重复两次上面的panttern,如果只是震动一次,index的值设定为-1

vibrator.vibrate(milliseconds);

}

/**

* 震动功能

* @param activity

* @param pattern 自定义震动(模式)周期 long[] pattern={100,400,100,400}//停止 开启 停止 开启

* @param isRepeat

*/

public static void Vibrate(long[] pattern,boolean isRepeat){

vibrator.vibrate(pattern, isRepeat?1:-1);

}

/**

* 停止震动与响铃

*/

public static void destroy(){

vibrator.cancel();

mediaPlayer.stop();//停止

mediaPlayer.release();//释放资源

}

/**

* 提示音

* @param FLAG 标识符为1时提示超速警告 标识符为2时提示越界警告

*/

public static void playvoid(int FLAG){

try{

mediaPlayer.reset();

mediaPlayer.setLooping(true);//重复播放

Uri uri = null;

if(FLAG==1){

uri=Uri.parse("android.resource://" + myContext.getPackageName() + "/"+R.raw.overspeed);//raw文件夹下的yes音频文件,使用的时候要注意修改

}

else if(FLAG==2){

uri=Uri.parse("android.resource://" + myContext.getPackageName() + "/"+R.raw.overzone);//raw文件夹下的yes音频文件,使用的时候要注意修改

}

//mediaPlayer.create(MainActivity.this, R.raw.yes);

mediaPlayer.setDataSource(myContext, uri);//设置文件员

mediaPlayer.setAudioStreamType(AudioManager.STREAM_RING);

mediaPlayer.prepare();//添加缓存

mediaPlayer.setOnPreparedListener(new OnPreparedListener() {

@Override

public void onPrepared(MediaPlayer mp) {

mediaPlayer.start();//开始播放

}

});

}catch (Exception e) {

// TODO: handle exception

}

}

}

  • 0
    点赞
  • 2
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值