小编Pre*_*hia的帖子

如何防止Android通知覆盖自己?

我正在使用XMPP(smack)创建消息传递应用程序,每当收到新消息时我都会发送通知.问题是,如果我收到来自两个不同用户的消息,我只能看到最后一个通知.我该怎么改变它?这是我的代码.

Intent thisIntent = new Intent(mApplicationContext, ChatActivity.class);
thisIntent.putExtra("EXTRA_CONTACT_JID",contactJid);
PendingIntent contentIntent = PendingIntent.getActivity(mApplicationContext, 0, thisIntent, PendingIntent.FLAG_UPDATE_CURRENT);

NotificationCompat.Builder b = new NotificationCompat.Builder(mApplicationContext);

b.setAutoCancel(true)
        .setDefaults(Notification.DEFAULT_ALL)
        .setWhen(System.currentTimeMillis())
        .setSmallIcon(R.drawable.fab_bg_mini)
        .setTicker("Hearty365")
        .setContentTitle("New message")
        .setContentText(" You received a new message from " + contactJid)
        .setContentIntent(contentIntent)
        .setContentInfo("Info");
if(!ChatActivity.active){
    b.setDefaults(Notification.DEFAULT_LIGHTS| Notification.DEFAULT_SOUND);
}

NotificationManager notificationManager = (NotificationManager) mApplicationContext.getSystemService(Context.NOTIFICATION_SERVICE);
notificationManager.notify(1, b.build());
Run Code Online (Sandbox Code Playgroud)

正如你所看到的,我放了一个额外的contactJid,这对我来说非常重要.我需要设置它,如果用户点击一个通知,其contactJid将是这个,如果另一个,它的contactJid将是另一个.

android android-notifications

2
推荐指数
1
解决办法
1819
查看次数

Android Studio未检测到模拟器

我是Android Studio的新手,无法测试我的程序。在使用此工具之前,我已成功在eclipse中测试了我的android程序。

在阅读了类似背景下的一些问题之后,我创建了一个新的模拟器

Tools-android-AVD Manager
Run Code Online (Sandbox Code Playgroud)

但是,当我运行该程序时,它说未检测到USB设备或运行的模拟器(在选定的部署目标中)。我怎样才能解决这个问题

android android-emulator android-studio

0
推荐指数
3
解决办法
7566
查看次数