1

アプリケーションを閉じた後も実行し続けるタイマーで実行する通知を取得しようとしています。間違っていることはわかっていますが、正しく実行するために何を変更すればよいかわかりません。どんな助けでも大歓迎です!

@Override
public void onCreate(Bundle savedInstanceState) {
    super.onCreate(savedInstanceState);
    // full screen
    requestWindowFeature(Window.FEATURE_NO_TITLE);
    getWindow().setFlags(WindowManager.LayoutParams.FLAG_FULLSCREEN,
            WindowManager.LayoutParams.FLAG_FULLSCREEN);
    setContentView(R.layout.home);

    Timer timer = new Timer();
    TimerTask task = new TimerTask()
    {
        @SuppressWarnings("deprecation")
        @Override
        public void run()
        {
            Intent intent = new Intent(Home.this, Home.class);
            PendingIntent pi = PendingIntent.getActivity(Home.this, 0, intent, 0);
            String body = "This is a standard message!";
            String title = "Nick C.";
            Notification n = new Notification(R.drawable.heart, body, System.currentTimeMillis());
            n.setLatestEventInfo(Home.this, title, body, pi);
            n.defaults = Notification.DEFAULT_ALL;
            nm.notify(uniqueID, n);
            finish();
        }
    }; timer.schedule(task, 0, 15000);

07-02 19:00:16.788: E/AndroidRuntime(2086): 致命的な例外: Timer-0 07-02 19:00:16.788: E/AndroidRuntime(2086): java.lang.NullPointerException 07-02 19:00: 16.788: E/AndroidRuntime(2086): com.codalata.nickx.Home$1.run(Home.java:104) 07-02 19:00:16.788: E/AndroidRuntime(2086): java.util.Timer$ でTimerImpl.run(Timer.java:284)

4

0 に答える 0