問題引出:在專案中牽涉到設定,裡面有對推送資訊的聲音的設定。
思路:1、開始覺得既然是用
notification.defaults = notification.default_sound;
來開啟聲音,那麼關閉就應該用類似
notification.defaults = close;
這樣的方式,但是查到的資料發現沒有這麼用的。
所以,捨棄這種方式。
2、因為牽涉到推送的功能,所以難免要看第三方推送給出的demo,這裡使用的是極光推送。裡面對於通知欄的設定是寫在乙個方法裡面的,**如下:
/**
*設定通知提示方式 - 基礎屬性
*/private void setstylebasic()
每次設定,都會呼叫這個方法,那麼根據這個demo,關閉聲音的實現應該是將builder.notificationdefaults = notification.default_sound;
這句注釋掉。
後記:不知道這樣做是不是最優解
---------------------------------------後續分割線-----2015-09-09--2015-09-10--------------------------------------------
驗證:第2種方式是可行的。示例如下
private void openvoice(boolean opened)
notificationmanager.notify(1,notification);
}
但是,使用極光推送的
basicpushnotificationbuilder類卻不可以。查詢極光原始碼,發現basicpushnotificationbuilder中有
var1.defaults =
this.notificationdefaults;
public intnotificationdefaults = --1,在notification中對應靜態字段1;
default_all。所以極光推送中預設通知欄會帶有聲音、震動。
修改:最終使用極光推送的通知欄設定聲音的開關,**如下
private void setstylebasic(boolean opened) else
jpushinte***ce.setdefaultpushnotificationbuilder(builder);
}
疑惑:設定為default_sound時,會有響鈴和震動;設定為default_lights時,什麼都沒有;閃光燈從來都沒有過,不知道為什麼 Android 通知(關閉聲音和震動)
參考部落格 參考部落格 單個設定 mbuilder.setvibrate null mbuilder.setvibrate new long mbuilder.setsound null mbuilder.setlights 0,0,0 預設全部 mbuilder.setdefaults notif...
控制 開啟和關閉遠端推送通知
首先初始化乙個switch,如下 我是在cell裡面建立的,然後實現switch的方法 注意這裡面的狀態判斷 1,宣告乙個bool變數,根據key值取出來,進行關聯,注意這樣的話,有乙個問題,就是switch預設的狀態是no,所以如果就直接這樣寫的話,使用者首次執行,apns的服務預設是關閉的,當然...
Toast 在通知欄關閉時不顯示
toast 在應用關閉通知顯示時,某些手機上會不在顯示toast 原因簡單的說就是toast使用了通知管理器inotificationmanager類,而此類因為禁止了通知欄許可權而不顯示toast 有興趣的可以追下原始碼 重點說下3種解決方法把 var check op no throw stri...