У меня есть настройка будильника, и эта часть работает. Когда будильник получен, я установил строку в сообщение, которое было сохранено вместе с будильником. Но когда я показываю эту строку в интерфейсе, она не устанавливается.
Вот первый код, который показывает интерфейс, который будет отображать строку:
public class ShowAlm extends Activity {
private static String MessStr="ZZZ";
public static void setMessStr(String messStr) {
MessStr = messStr;
}
@Override
public void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.showalm);
Toast.makeText(this,"Message " + MessStr, Toast.LENGTH_SHORT).show();
}
Затем, чтобы протестировать его без Будильника, я помещаю кнопку в другой класс для вызова выше, и все работает как положено:
btnplot.setOnClickListener(new Button.OnClickListener() {
@Override
public void onClick(View v) {
ShowAlm.setMessStr("AAA");
Intent intent1 = new Intent(context, ShowAlm.class);
intent1.addFlags(Intent.FLAG_ACTIVITY_NEW_TASK | Intent.FLAG_ACTIVITY_CLEAR_TOP);
context.startActivity(intent1);
//TestAlarm();
//Intent intent = new Intent(v.getContext(), AutoComplete4.class);
// startActivity(intent);
}
});
Вот в чем проблема, тот же код, что и у кнопки выше, но в приемнике не работает. Строка не установлена.
public class AlarmReceiver extends BroadcastReceiver {
@Override
public void onReceive(Context context, Intent intent) {
try {
Bundle bundle = intent.getExtras();
String message = bundle.getString("alarm_message");
System.out.println("Message = " + message);
ShowAlm.setMessStr("AAA");
Intent intent1 = new Intent(context, ShowAlm.class);
intent1.addFlags(Intent.FLAG_ACTIVITY_NEW_TASK | Intent.FLAG_ACTIVITY_CLEAR_TOP);
context.startActivity(intent1);
} catch (Exception e) {
}
}
Таким образом, когда показывается второй код, указанный выше, MessStr является значением по умолчанию. Я также пытался иметь кодирование "AAA" в качестве строки, но это не помогло.
Таким образом, конечный результат - журнал, показывающий, что строка есть, но когда отображается пользовательский интерфейс, строка по умолчанию.
Идеи