1

在警报应用程序中,用户为警报消息提供输入字符串并设置警报。我可以设置和收听警报。但是如何显示用户设置的消息?已设置多次设置警报,我如何显示该特定警报的相应消息

4

1 回答 1

1

您的 BroadcastReceiver 中应该有一个 onReceive(Context context, Intent intent) 函数。它看起来像:

public void onReceive(Context context, Intent intent) {   
    PowerManager pm = (PowerManager) context.getSystemService(Context.POWER_SERVICE);
    PowerManager.WakeLock wl = pm.newWakeLock(PowerManager.PARTIAL_WAKE_LOCK, ""); // Second argument is an arbitrary String tag
    wl.acquire();

    // Put YOUR code here (between WaitLocks)
    String userInputtedString = intent.getBundleExtra("UserText")
    Toast.makeText(context, userInputtedString, Toast.LENGTH_LONG).show();

    wl.release();
}

为了获得该捆绑包,您必须在创建警报时额外传递一个意图

Intent intent = new Intent(context, AlarmNotification.class);
intent.putExtra("UserText", userInputedString);
PendingIntent pendingIntent = PendingIntent.getBroadcast(context, 0, intent, 0);

我只是展示了一个 Toast 消息的示例,但您也可以将其更改为 Notification 或 AlertDialog。让我知道这是否有帮助。

于 2012-12-18T17:05:25.383 回答