Why my code doesn't work for driving Android phone's LED?
<pre><code>package com.example.phoneled;

import android.os.Bundle;
import android.app.Activity;
import android.app.Notification;
import android.app.NotificationManager;
import android.view.Menu;
import android.widget.CompoundButton;
import android.widget.CompoundButton.OnCheckedChangeListener;
import android.widget.ToggleButton;

public class LedOnOff extends Activity {
    ToggleButton tb;
    final int ID_LED = 1;

    @Override
    public void onCreate(Bundle savedInstanceState) {
        super.onCreate(savedInstanceState);
        setContentView(R.layout.activity_led_on_off);

        tb = (ToggleButton) findViewById(R.id.toggleButton1);
        tb.setOnCheckedChangeListener(new OnCheckedChangeListener() {

            @Override
            public void onCheckedChanged(CompoundButton buttonView,
                    boolean isChecked) {
                // TODO Auto-generated method stub
                NotificationManager nm = (NotificationManager) getSystemService(NOTIFICATION_SERVICE);
                Notification notification = new Notification();
                notification.ledARGB = 0xFF0000; // 0xFF0000 red，0x00FF00 green
                notification.ledOnMS = 100;
                notification.ledOffMS = 200;
                notification.flags = Notification.FLAG_SHOW_LIGHTS;
                nm.notify(ID_LED, notification);
//              nm.cancel(ID_LED);
            }
        });

    }

    @Override
    public boolean onCreateOptionsMenu(Menu menu) {
        getMenuInflater().inflate(R.menu.activity_led_on_off, menu);
        return true;
    }
}
</code></pre>

<p>Above code is for driving LED of my Android phone: HTC Sensation XE G18. But it does not work. No error or warning is given, but the real LED doesn't blink (neither turns red color) at all. You could find similar codes on internet everywhere. I don't know what I miss. Any help? Thanks!</p>
