如何在android中实现Notification服务(不使用Activity)

时间:2011-06-16 16:47:08

标签: android notificationmanager

我正在实施通知我的应用程序只是示例

服务类文件:

public class Services 
{
public void myNotify(Context context,String message)
   {
      Log.v("my notification method","from GetNotification class");
      NotificationManager notificationManager = (NotificationManager)context.getSystemService(Context.NOTIFICATION_SERVICE);
      Notification notification = new Notification(0,"A new notification", System.currentTimeMillis());
      // Hide the notification after its selected
      notification.flags |= Notification.FLAG_AUTO_CANCEL;
      Log.v("services","11");
      //Intent intent = new Intent(android.content.Intent.ACTION_VIEW,Uri.parse(""));
      Log.v("services","22");
      PendingIntent activity = PendingIntent.getActivity(context,0,new Intent(android.content.Intent.ACTION_VIEW,Uri.parse("")), 0);
      Log.v("services","33");
      notification.setLatestEventInfo(context,"Notification for you",message,activity);
      Log.v("services","44");
      notification.number += 1;
      Log.v("services","55");
      notificationManager.notify(0, notification);
      Log.v("services","66");
   }

}

AppActivity主类:

public class AndroidPlatformservices extends Activity {
        public void onCreate(Bundle savedInstanceState) {
        super.onCreate(savedInstanceState);
       setContentView(R.layout.main);
 Services str= new Services();
 str.myNotify(this,"wrwtrerwetwttwretwrterwterw"); 
}
}

在log cat总文件方法中执行:

06-16 22:09:11.472: VERBOSE/my notification method(5128): from GetNotification class
06-16 22:09:11.472: VERBOSE/services(5128): 11
06-16 22:09:11.472: VERBOSE/services(5128): 22
06-16 22:09:11.483: VERBOSE/services(5128): 33
06-16 22:09:11.493: VERBOSE/services(5128): 44
06-16 22:09:11.503: VERBOSE/services(5128): 55
06-16 22:09:11.513: VERBOSE/services(5128): 66

有什么问题?任何人请转发有价值的解决方案,提前谢谢

1 个答案:

答案 0 :(得分:4)

您必须为Notification构造函数中的图标使用正确的资源ID,0将无效。