2012-02-09 52 views
1

中发出通知(proximate alert)我已经在用户进入特定位置时设置了通知。当用户在通知栏输入半径电话显示通知并一次振动时会发生什么情况。即使我清除通知电话保持振动请帮助我! 这里是通知的代码:在真实设备上振动多次然后在android

import android.app.Dialog; 
import android.app.Notification; 
import android.app.NotificationManager; 
import android.app.PendingIntent; 
import android.content.BroadcastReceiver; 
import android.content.Context; 
import android.content.Intent; 
import android.graphics.Color; 
import android.location.LocationManager; 
import android.os.Bundle; 
import android.util.Log; 
import android.view.Window; 
import android.view.WindowManager; 
import android.widget.TextView; 


    public class ProximityIntentReceiver extends BroadcastReceiver { 

    private static int NOTIFICATION_ID = 0; 
    public static final String EVENT_ID_INTENT_EXTRA = "EventIDIntentExtraKey"; 
    public static final String PLACE_NAME = "PLACE"; 
    public static final String ITEM_NAME = "ITEM"; 
    String Place_Name = "",Item_Name = ""; 


    @Override 
    public void onReceive(Context context, Intent intent) { 
     Log.v("entered",""); 
     String key = LocationManager.KEY_PROXIMITY_ENTERING; 
     //Bundle extras = getIntent().getExtras(); 
     NOTIFICATION_ID = intent.getIntExtra(EVENT_ID_INTENT_EXTRA, -1); 
     Place_Name = intent.getStringExtra(PLACE_NAME); 
     Item_Name = intent.getStringExtra(ITEM_NAME); 
     Boolean entering = intent.getBooleanExtra(key, false); 
     Log.v(Place_Name,Item_Name); 

     if (entering) { 
      Log.d(getClass().getSimpleName(), "entering"); 
     } 
     else { 
      Log.d(getClass().getSimpleName(), "exiting"); 
     } 


     NotificationManager notificationManager = 
      (NotificationManager) context.getSystemService(Context.NOTIFICATION_SERVICE); 

     PendingIntent pendingIntent = PendingIntent.getActivity(context, 0, null, 0);  

     Notification notification = createNotification(); 
     notification.setLatestEventInfo(context, "Hello You are near to this", Place_Name + " and your task is " + Item_Name, pendingIntent); 

     notificationManager.notify(NOTIFICATION_ID, notification); 

    } 

    private Notification createNotification() { 
     Notification notification = new Notification(); 

     notification.icon = R.drawable.newnotification; 
     notification.when = System.currentTimeMillis(); 

     notification.flags |= Notification.FLAG_AUTO_CANCEL; 
     notification.flags |= Notification.FLAG_SHOW_LIGHTS; 

     notification.defaults |= Notification.DEFAULT_VIBRATE; 
     notification.defaults |= Notification.DEFAULT_LIGHTS; 

     notification.ledARGB = Color.WHITE; 
     notification.ledOnMS = 1500; 
     notification.ledOffMS = 1500; 

     return notification; 
    } 
} 

什么即时做错了?

回答

1

试试这个:

notification.defaults |= Notification.DEFAULT_LIGHTS; 
notification.defaults |= Notification.FLAG_ONLY_ALERT_ONCE; 
notification.defaults |= Notification.DEFAULT_SOUND; 
notification.flags |= Notification.FLAG_AUTO_CANCEL; 
notification.defaults |= Notification.DEFAULT_VIBRATE; 
+0

谢谢,我会尽力让你知道。 – 2012-02-10 05:50:18

0

notification.when来告诉系统在什么时间给通知。

相关问题