Android震動(dòng)與提示音實(shí)現(xiàn)代碼
本文實(shí)例為大家分享了android消息提示的具體代碼,供大家參考,具體內(nèi)容如下
protected AudioManager audioManager;
protected Vibrator vibrator;
audioManager = (AudioManager)getSystemService(Context.AUDIO_SERVICE); //此方法是由Context調(diào)用的
vibrator = (Vibrator)getSystemService(Context.VIBRATOR_SERVICE); //同上
/**
* vibrate and play tone
*/
public void vibrateAndPlayTone(EMMessage message) {
if (System.currentTimeMillis() - lastNotifiyTime < 1000) {
// received new messages within 2 seconds, skip play ringtone
return;
}
try {
lastNotifiyTime = System.currentTimeMillis();
// check if in silent mode
if (audioManager.getRingerMode() == AudioManager.RINGER_MODE_SILENT)
{
Log.e("TAG","已經(jīng)調(diào)成靜音");
return;
}
long[] pattern = new long[] { 0, 180, 80, 120 };
vibrator.vibrate(pattern, -1); //震動(dòng)
if (ringtone == null) {
Uri notificationUri = RingtoneManager.getDefaultUri(RingtoneManager.TYPE_NOTIFICATION);
ringtone = RingtoneManager.getRingtone(appContext, notificationUri);
if (ringtone == null) {
Log.d(TAG, "cant find ringtone at:" + notificationUri.getPath());
return;
}
}
if (!ringtone.isPlaying()) {
//String vendor = Build.MANUFACTURER;
ringtone.play();
// for samsung S3, we meet a bug that the phone will
// continue ringtone without stop
// so add below special handler to stop it after 3s if
// needed
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();
}
}
以上就是本文的全部?jī)?nèi)容,希望對(duì)大家的學(xué)習(xí)有所幫助,也希望大家多多支持腳本之家。
- android開發(fā)之蜂鳴提示音和震動(dòng)提示的實(shí)現(xiàn)原理與參考代碼
- Android實(shí)現(xiàn)調(diào)用震動(dòng)的方法
- android滑動(dòng)解鎖震動(dòng)效果的開啟和取消
- android獲取情景模式和鈴聲 實(shí)現(xiàn)震動(dòng)、鈴聲提醒
- android 觸屏的震動(dòng)響應(yīng)接口調(diào)用方法
- Android實(shí)現(xiàn)手機(jī)震動(dòng)效果
- android鬧鈴簡(jiǎn)單實(shí)現(xiàn)
- Android設(shè)置鈴聲實(shí)現(xiàn)代碼
- Android鬧鈴服務(wù)AlarmManager用法深入分析
- Android編程實(shí)現(xiàn)震動(dòng)與振鈴的方法詳解
相關(guān)文章
android studio 3.6.1升級(jí)后如何處理 flutter問題
這篇文章主要介紹了android-studio-3.6.1升級(jí)后 flutter問題,本文給大家介紹的非常詳細(xì),對(duì)大家的學(xué)習(xí)或工作具有一定的參考借鑒價(jià)值,需要的朋友可以參考下2020-03-03
Android啟動(dòng)模擬器報(bào)錯(cuò)解決方法
本文將詳細(xì)介紹Android模擬器報(bào)"Failed To Allocate memory 8"錯(cuò)誤的解決辦法,需要了解的朋友可以參考下2012-12-12
Flutter 設(shè)置全局字體的實(shí)現(xiàn)
本文主要介紹了Flutter 設(shè)置全局字體的實(shí)現(xiàn),文中通過示例代碼介紹的非常詳細(xì),具有一定的參考價(jià)值,感興趣的小伙伴們可以參考一下2022-02-02
Android Studio打包H5網(wǎng)址頁面,封裝成APK
大家好,本篇文章主要講的是Android Studio打包H5網(wǎng)址頁面,封裝成APK,感興趣的同學(xué)趕快來看一看吧,對(duì)你有幫助的話記得收藏一下,方便下次瀏覽2021-12-12
kotlin實(shí)現(xiàn)快遞與號(hào)碼歸屬地查詢案例詳解
時(shí)間軸時(shí)一個(gè)很炫酷的效果,一般作用在物流信息上,我們同樣也可以作為一個(gè)學(xué)習(xí)對(duì)象去學(xué)習(xí)他的使用方法,同時(shí)呢,我們可以在線查詢我們的電話號(hào)碼歸屬地,巧用鍵盤的邏輯提升我們用戶體驗(yàn)2023-02-02
Android自定義View的使用及其原理知識(shí)點(diǎn)總結(jié)
在本篇文章里小編給大家整理的是關(guān)于Android自定義View的使用及其原理知識(shí)點(diǎn)總結(jié)內(nèi)容,需要的朋友們可以學(xué)習(xí)下。2019-08-08
Android View移動(dòng)的3種方式總結(jié)
這篇文章主要給大家介紹了Android View移動(dòng)的三種方式,在介紹這三種方式之前先介紹了Android坐標(biāo)系的定義規(guī)則以及View的一些位置參數(shù)。有需要的朋友們可以參考借鑒。2016-09-09

