아래 코드와 같이 이미 알림 표시 줄에 아이콘을 표시 할 수 있습니다. 사용자가이 아이콘을 클릭 할 때 새로운 활동 (myclass
)을 시작하려고하지만이 작업을 수행하는 방법을 모르겠습니다. 의도는 어디에 두어야합니까?알림 아이콘에 대한 새 활동 시작
public class NotificationActivity extends Activity {
AlarmManager am;
@Override
public void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.activity_notification);
am = (AlarmManager) getSystemService(Context.ALARM_SERVICE);
setRepeatingAlarm();
}
public void setRepeatingAlarm() {
Intent intent = new Intent(this, TimeAlarm.class);
PendingIntent pendingIntent = PendingIntent.getBroadcast(this, 0,
intent, PendingIntent.FLAG_CANCEL_CURRENT);
am.setRepeating(AlarmManager.RTC_WAKEUP, System.currentTimeMillis(),
(20 * 1000), pendingIntent);
System.out.println("Calling Alaram...");
}
}
public class BootUpReciever extends BroadcastReceiver {
NotificationManager nm;
@Override
public void onReceive(Context context, Intent intent) {
System.out.println("in broad....");
nm = (NotificationManager) context .getSystemService(Context.NOTIFICATION_SERVICE);
CharSequence from = "Lokesh";
CharSequence message = "Notification Test...";
PendingIntent contentIntent = PendingIntent.getActivity(context, 0,
new Intent(), 0);
Notification notif = new Notification(R.drawable.cherry_icon,
"Notification Test...", System.currentTimeMillis());
notif.setLatestEventInfo(context, from, message, contentIntent);
nm.notify(1, notif);
if ((intent.getAction() != null) &&
(intent.getAction().equals("android.intent.action.BOOT_COMPLETED")))
{
System.out.println("in broadcast receiver.....");
Intent i = new Intent(context, MainActivity.class);
i.setFlags(Intent.FLAG_ACTIVITY_NEW_TASK);
context.startActivity(i);
}
}
}
당신이 매니페스트에 새로운 활동을 선언 했 :
이가 좋은 설명은 개발자 문서에 자세한 기사를 통해 이동? @NiceGuy – SamDroid
예가 declair입니다.하지만 알림 바의 아이콘을 클릭하면 새로운 활동을 시작하기 위해이 코드에 의도를 두었습니까 ??? –
질문 확인 : http://stackoverflow.com/questions/10184351/how-to-start-activity-when-user-clicks-a-notification –