0

アラームマネージャーを使用してアラームを設定しています。オフになると、受信機はこのサービスを開始します。そのサービスから、次のコードを使用して通知が行われます。通知がクリックされたときにアクティビティを実行したいのですが、通知アイコンをクリックしても何も起こりません。

何かがロードされているかのように、この円が動いていることを示しているだけです。

package com.rythmal.alarmtest;

import android.app.Notification;
import android.app.NotificationManager;
import android.app.PendingIntent;
import android.app.Service;
import android.content.Context;
import android.content.Intent;
import android.os.IBinder;

public class AlarmProcess extends Service {

    private static final int MY_NOTIFICATION_ID = 1;
    private NotificationManager mNotificationManager;
    private Notification myNotification;

    @Override
    public int onStartCommand(Intent intent, int flags, int startId) {
        // TODO Auto-generated method stub
        String ns = Context.NOTIFICATION_SERVICE;
        mNotificationManager = (NotificationManager) getSystemService(ns);

        int icon = R.drawable.ht_icon;
        CharSequence tickerText = "Rythmal";
        long when = System.currentTimeMillis();

        myNotification = new Notification(icon, tickerText, when);

        Context context = getApplicationContext();
        CharSequence notificationTitle = "My notification";
        CharSequence notificationText = "Hello World!";
        Intent notificationIntent = new Intent(this,com.rythmal.alarmtest.ResultRun.class);


        notificationIntent.setFlags(Intent.FLAG_ACTIVITY_NEW_TASK);

        PendingIntent pendingIntent = PendingIntent.getActivity(getBaseContext(), 0, notificationIntent, 0);

        myNotification.defaults |= Notification.DEFAULT_SOUND;
        myNotification.flags |= Notification.FLAG_AUTO_CANCEL;

        myNotification.setLatestEventInfo(context, notificationTitle,notificationText, pendingIntent);
        mNotificationManager.notify(MY_NOTIFICATION_ID, myNotification);

        return super.onStartCommand(intent, flags, startId);
    }

    @Override
    public IBinder onBind(Intent intent) {
        // TODO Auto-generated method stub
        return null;
    }

    @Override
    public void onDestroy() {
        // TODO Auto-generated method stub
        super.onDestroy();
    }

}
4

2 に答える 2

1

プロジェクトをクリーンアップした後、突然機能しました..

于 2012-03-12T06:00:03.097 に答える
0

あなたの通知コードを確認しました。すべてが正しく見えます。

「しかし、通知アイコンをクリックしても何も起こりません。何かがロードされているかのようにこの円が動いているだけです」とはどういう意味ですか。「この円を示しているだけ」というのは、何かをしていることを明確に意味するからです。

于 2012-02-27T18:31:24.983 に答える