Ich möchte Kontrollkästchen für meine Benachrichtigung in meinem BroadcastReceiver.Ich setzte alle Kontrollkästchen, aber ich kann nicht aufhören Vibrationen und ich kann meine Benachrichtigung nicht kontrollieren. Ich möchte die Vibration stoppen. Die Checkbox ist falsch. Die Checkbox ist wahr. (Ich bin begginner bei Preferenceactivity)CheckboxPreference Verwendung in BroadcastReceiver für die Benachrichtigung
Meine Einstellungen xml:
<?xml version="1.0" encoding="utf-8"?>
<PreferenceScreen xmlns:android="http://schemas.android.com/apk/res/android">
<CheckBoxPreference
android:defaultValue="true"
android:key="vibrate"
android:summary="Telefona görev geldiğinde titreşim yollanır."
android:title="Titreşim"
>
</CheckBoxPreference>
<CheckBoxPreference
android:defaultValue="true"
android:key="notify"
android:summary="Telefona görev geldiğinde ses ile uyarılır."
android:title="Bildirim sesi"
>
</CheckBoxPreference>
</PreferenceScreen>
Meine Einstellungen Aktivität (so PreferenceActivity):
public class Ayarlar extends PreferenceActivity {
boolean autovibrate;
protected void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
addPreferencesFromResource(R.xml.settings);
getListView().setBackgroundColor(getResources().getColor(R.color.yüz));}
public void onStart(Intent intent, int startId) {
getPrefs();
}
private void getPrefs() {
SharedPreferences prefs = PreferenceManager
.getDefaultSharedPreferences(getBaseContext());
autovibrate = prefs.getBoolean("vibrate", true);
}
}
Mein broadcastReceiver:
public class Alarm extends BroadcastReceiver {
cancelAlarm(context);
setalarm(context);
}
It is in a if loop.
Notification noti = null;
if (android.os.Build.VERSION.SDK_INT >= android.os.Build.VERSION_CODES.JELLY_BEAN) {
noti = new Notification.Builder(context)
.setTicker(" size bir bildirim yolladı.")
.setContentTitle("")
.setContentText(listData.get(secilmissayı) + " i arama zamanı")
.setSmallIcon(R.drawable.alarm_24dp)
.addAction(R.drawable.cal, "Ara", pendingIntentYes)
.addAction(R.drawable.se, "Daha Sonra", pendingIntentYes2)
.setContentIntent(pIntent).getNotification();
}
NotificationManager notificationManager = (NotificationManager) context.getSystemService(NOTIFICATION_SERVICE);
noti.flags |= Notification.FLAG_AUTO_CANCEL;
noti.defaults |= Notification.DEFAULT_ALL;
noti.defaults |= Notification.DEFAULT_VIBRATE;
notificationManager.notify(0, noti);
I tried achive settings activity
SharedPreferences settings = PreferenceManager.getDefaultSharedPreferences(context);
}