2012-01-26 98 views
2
int icon = R.drawable.icon; 
Context context = getApplicationContext();  
CharSequence contentTitle = "My notification"; 
CharSequence contentText = "Countdown Complete!";  
NotificationManager notificationManager = (NotificationManager) getSystemService(Context.NOTIFICATION_SERVICE); 
Intent intent = new Intent(); 
Notification notification = new Notification(icon, "is completed!", System.currentTimeMillis()); 
PendingIntent pendingIntent = PendingIntent.getActivity(this, 0, intent, PendingIntent.FLAG_UPDATE_CURRENT); 
notification.setLatestEventInfo(context, contentTitle, contentText, pendingIntent); 
long[] vibrate = {0,100,200,300}; 
notification.vibrate = vibrate; 
notification.defaults |= Notification.DEFAULT_LIGHTS; 
notification.defaults |= Notification.DEFAULT_SOUND; 
notificationManager.notify(myCountDown.getId(), notification); 

此代碼在我的android應用程序中,我收到通知但沒有聲音或振動。Android通知不會發出聲音或振動

我已經在多個電話上測試過,所有聲音和振動都在設置中打開並打開。我還相信,我所要求使用的振動允許在Android清單,但我仍然只能得到通知...

我也試過:

notification.defaults = Notification.DEFAULT_ALL; 

notification.defaults |= Notification.DEFAULT_VIBRATE; 
notification.defaults |= Notification.DEFAULT_LIGHTS; 
notification.defaults |= Notification.DEFAULT_SOUND; 

如何在通知中獲得聲音和振動?

回答

2

notification.defaults | = Notification.DEFAULT_VIBRATE; 不起作用?

+0

很抱歉忘記了這一點,但我試過Notification.DEFAULTS_ALL和VIBRATE,但仍然沒有任何... – vbman11 2012-01-26 22:45:19

+0

和我剛剛編輯添加這些 – vbman11 2012-01-26 23:03:22

+0

您嘗試創建您的意圖,如在文檔中Intent notificationIntent = new Intent (this,MyClass.class); – 2012-01-27 16:20:24

1

步驟#1:確保您在清單中擁有VIBRATE權限,並且您正在具有振動電機的設備上運行。

步驟#2:擺脫getApplicationContext(),因爲你在這裏不需要它。

第3步:嘗試通過sound數據成員Notification指定實際鈴聲,看它是否是默認的不打的問題(你需要沒有DEFAULT_SOUNDflags)。

+0

步驟#1:好友我在我的問題中說過「我也確定我要求使用Android清單中的振動許可」...並且我確實說了電話... – vbman11 2012-01-26 23:44:31

+0

第2步:獲取擺脫它?將它設置爲null?或刪除參數?...既沒有工作...空給我運行時異常,沒有arg不編譯... – vbman11 2012-01-26 23:46:22

+0

步驟#3:我使用DEFAULT_SOUND,因爲我想讓它播放默認聲音.. 。我仍然應該得到振動... – vbman11 2012-01-26 23:48:49

5

不要忘記爲鈴聲和通知啓用振動設置。進入設置 - >聲音。檢查「發出振動」。

+0

這是用戶常犯的錯誤...它發生在我身上 – Bachask8 2013-11-07 21:56:17

0
Notification notif ... //create your notification 

notif.defaults | = Notification.DEFAULT_SOUND; notif.defaults | = Notification.DEFAULT_VIBRATE;

不要忘記在清單中包含振動權限。