【发布时间】:2013-11-20 09:16:07
【问题描述】:
我想在几分钟后发出警报意图。从这个意图接收一些数据,应用程序的视图应该显示它。
此代码在活动中
public class MainActivity extends Activity{
DatePicker pickerDate;
TimePicker pickerTime;
Button buttonSetAlarm;
TextView info;
...
private void setAlarm(){
Intent intent = new Intent(getBaseContext(), AlarmReceiver.class);
PendingIntent pendingIntent = PendingIntent.getBroadcast(getBaseContext(), RQS_1, intent, 0);
AlarmManager alarmManager = (AlarmManager)getSystemService(Context.ALARM_SERVICE);
alarmManager.set(AlarmManager.RTC_WAKEUP, System.currentTimeMillis()+1000, pendingIntent);
}
然后广播接收器,在 Activity 类中或在一个单独的 java 文件中(见帖子末尾),看起来像这样:
public class AlarmReceiver extends BroadcastReceiver {
private static final int MY_NOTIFICATION_ID=1;
NotificationManager notificationManager;
Notification myNotification;
@Override
public void onReceive(Context context, Intent intent) {
Toast.makeText(context, "Alarm received!", Toast.LENGTH_LONG).show();
String information = getInformation();
info.setText("this is your info"+information); <--------------------
}
}
如何做到这一点?
我尝试通过膨胀从上下文中获取视图,但没有成功
关注android - How to get view from context? 和
我也尝试过从意图内的捆绑包中获取视图,但它们似乎只能传递字符串和可序列化对象。
如果我 在活动中的广播接收器内部,则不会引发警报(没有吐司消息出现,textview 中没有变化)描述在:Calling SetContentView() from broadcast receiver 尽管似乎这个解决方案没有' t 工作如:BroadcastReceiver as inner class
提前谢谢你!
L.
【问题讨论】:
标签: android android-intent android-view