Мне нужно обновить виджет моего приложения каждый раз, когда настройки будут изменены пользователем.Обновление виджета при изменении настроек с помощью настраиваемой широковещательной рассылки
У меня есть деятельность настройки:
import android.app.Activity;
import android.content.Intent;
import android.content.SharedPreferences;
import android.os.Bundle;
public class SettingsActivity extends Activity implements SharedPreferences.OnSharedPreferenceChangeListener {
public static final String customIntent = "CUSTOM_SETTINGS_CHANGED";
@Override
protected void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
// Display the fragment as the main content.
getFragmentManager().beginTransaction()
.replace(android.R.id.content, new MainActivity.SettingsFragment())
.commit();
}
public void onSharedPreferenceChanged(SharedPreferences sharedPreferences,
String key) {
Intent intent = new Intent();
intent.setAction(customIntent);
this.sendBroadcast(intent);
}
}
Я добавил, что обычай намерение манифеста:
<action android:name="CUSTOM_SETTINGS_CHANGED" />
Но виджет не обновляется сразу после изменения настроек. Поэтому моя обычная передача не отправляется или не принимается. Что случилось с моим кодом?
Показать манифест. –
@ci это не так, все остальные намерения для одного и того же приемника работают нормально. –