我正在开发的项目有两个不同的应用程序,一个是服务器,另一个是客户端。服务器应用程序有一个服务类,在onStartCommand()
函数中启动服务器线程。服务器线程的类定义在服务类本身中。每当服务器从客户端接收到任何数据时,它都会将其存储在数据库中。所以问题是,我想通过通知或toast消息通知用户新数据已到达,无论哪种方式都可以。请告诉我在哪里编写通知代码,我应该在服务类、线程类还是启动服务器服务的firstActivity
类中编写。谢谢。
我正在开发的项目有两个不同的应用程序,一个是服务器,另一个是客户端。服务器应用程序有一个服务类,在onStartCommand()
函数中启动服务器线程。服务器线程的类定义在服务类本身中。每当服务器从客户端接收到任何数据时,它都会将其存储在数据库中。所以问题是,我想通过通知或toast消息通知用户新数据已到达,无论哪种方式都可以。请告诉我在哪里编写通知代码,我应该在服务类、线程类还是启动服务器服务的firstActivity
类中编写。谢谢。
首先,您需要阅读这篇关于如何使用通知(Notification)的文章。
接下来,使用这个代码在服务(Service)类中接收客户端数据的位置发送一个通知。
NotificationManager notificationManager =
(NotificationManager) getSystemService(NOTIFICATION_SERVICE);
int icon = R.drawable.notification_icon;
CharSequence notiText = "Your notification from the service";
long meow = System.currentTimeMillis();
Notification notification = new Notification(icon, notiText, meow);
Context context = getApplicationContext();
CharSequence contentTitle = "Your notification";
CharSequence contentText = "Some data has arrived!";
Intent notificationIntent = new Intent(this, YourActivityThatYouWantToLaunch.class);
PendingIntent contentIntent = PendingIntent.getActivity(this, 0, notificationIntent, 0);
notification.setLatestEventInfo(context, contentTitle, contentText, contentIntent);
int SERVER_DATA_RECEIVED = 1;
notificationManager.notify(SERVER_DATA_RECEIVED, notification);