android的消息提示(震动和提示音),实现代码如下所示:

public class VibratorUtil {

protected AudioManager audioManager;

protected Vibrator vibrator;

private Ringtone ringtone;

private static final int MIN_TIME_OUT = 4000; //时间间隔

long lastNotificationTime;

public VibratorUtil() {

audioManager = (AudioManager) MyApp.getContext().getSystemService(Context.AUDIO_SERVICE); //此方法是由Context调用的

vibrator = (Vibrator) MyApp.getContext().getSystemService(Context.VIBRATOR_SERVICE); //同上

}

/**

* 开启手机震动和播放系统提示铃声

*/

public void vibrateAndPlayTone() {

if (System.currentTimeMillis() - lastNotificationTime < MIN_TIME_OUT) {

return;

}

try {

lastNotificationTime = System.currentTimeMillis();

if (audioManager.getRingerMode() == AudioManager.RINGER_MODE_SILENT) {

return;

}

long[] pattern = new long[]{0, 180, 80, 120};

vibrator.vibrate(pattern, -1); //震动

if (ringtone == null) {

Uri notificationUri = RingtoneManager.getDefaultUri(RingtoneManager.TYPE_NOTIFICATION);

ringtone = RingtoneManager.getRingtone(MyApp.getContext(), notificationUri);

if (ringtone == null) {

return;

}

}

if (!ringtone.isPlaying()) {

ringtone.play();

//判断手机品牌

String vendor = Build.MANUFACTURER;

if (vendor != null && vendor.toLowerCase().contains("samsung")) {

Thread ctlThread = new Thread() {

public void run() {

try {

Thread.sleep(3000);

if (ringtone.isPlaying()) {

ringtone.stop();

}

} catch (Exception e) {

}

}

};

ctlThread.run();

}

}

} catch (Exception e) {

e.printStackTrace();

}

}

}

总结

以上所述是小编给大家介绍的android 震动和提示音的实现代码,希望对大家有所帮助,如果大家有任何疑问请给我留言,小编会及时回复大家的。在此也非常感谢大家对脚本之家网站的支持!

如果你觉得本文对你有帮助,欢迎转载,烦请注明出处,谢谢!

Logo

华为开发者空间,是为全球开发者打造的专属开发空间,汇聚了华为优质开发资源及工具,致力于让每一位开发者拥有一台云主机,基于华为根生态开发、创新。

更多推荐