前言:最近剛好在寫一些推送方面的東西,又是新手,不斷在網上找資料,很少,不過還是找到了一些,反正百度我是再也不想百度了,谷歌一下子就能找到想要的。
廢話不多說。
1.主要方法就是如下一個函數
private void setSoundAndVibrate(boolean isOpenSound,boolean isOpenVibrate){
BasicPushNotificationBuilder builder = new BasicPushNotificationBuilder(activity);
builder.statusBarDrawable = R.mipmap.icon;//設置推送的圖標
if (isOpenVibrate && !isOpenSound) {//只有振動
builder.notificationDefaults = Notification.DEFAULT_VIBRATE
} else if (isOpenSound && !isOpenVibrate) {//只有聲音
builder.notificationDefaults = Notification.DEFAULT_SOUND
} else if (isOpenSound && isOpenVibrate) {//兩個都有
builder.notificationDefaults = Notification.DEFAULT_ALL
} else {//只有呼吸燈
builder.notificationDefaults = Notification.DEFAULT_LIGHTS
}
JPushInterface.setDefaultPushNotificationBuilder(builder)
}
2.如果要本地記錄就用了一個全局記錄文件 SharePreferences.Editor即可。
使用方法:SharePreferences.Editor editor=getContext().getSharedPreferences("filename",Context.MODE_APPEND).edit()
editor.puBoolean("voice_bool",voice_bool)
editor.putBoolean("vibrate_bool",vibrate_bool)
editor.commit()
解釋 一下:"voice_bool" 就是存放在全局文件中的一個標識,類似於Map<K,V>的Key
voice_bool 就是Value了
3.參考資料1 Jpush的聲音及振動的開啟和關閉
參考資料2 Jpush的API的自定義聲音用法