gpt4 book ai didi

android - 使用通知管理器将数据从一个 Activity 传递到另一个 Activity

转载 作者:太空狗 更新时间:2023-10-29 14:04:08 26 4
gpt4 key购买 nike

我需要使用通知管理器将给定的 Activity 花费到另一个 Activity 。这是通知的代码。

private void notificacion(){
// Preparamos el intent que será lanzado si la notificación es seleccionada
Uri soundUri = RingtoneManager.getDefaultUri(RingtoneManager.TYPE_NOTIFICATION);

Intent intento = new Intent(PrincipalActivity.this, ActualizarVersion.class);
intento.putExtra("versionnueva",VersionNueva);
intento.putExtra("versionactual",VersionActual);

intento.addFlags(Intent.FLAG_ACTIVITY_NEW_TASK | Intent.FLAG_ACTIVITY_CLEAR_TOP | Intent.FLAG_ACTIVITY_CLEAR_TASK);
PendingIntent pIntent = PendingIntent.getActivity(PrincipalActivity.this, 0, intento, 0);

// Creamos la notificación.
CharSequence ticker = "Aviso de actualización";
CharSequence contentTitle = "Calendario Verallia Sevilla";
CharSequence contentText = "Hay disponible una nueva actualización";
Notification noti = new NotificationCompat.Builder(PrincipalActivity.this)
.setContentIntent(pIntent)
.setTicker(ticker)
.setContentTitle(contentTitle)
.setContentText(contentText)
.setSmallIcon(R.drawable.icono_aplicacion_pequeno)
.setVibrate(new long[]{1000, 1000, 1000, 1000, 1000})
.setSound(soundUri)
.build();
NotificationManager notificationManager =
(NotificationManager) getSystemService(NOTIFICATION_SERVICE);

// Ocultamos la notificación si ha sido ya seleccionada
noti.flags |= Notification.FLAG_AUTO_CANCEL;


notificationManager.notify(0, noti);
//Log.i(TAG, "Servicio running");
}

这是我收集 ActualizarVersion Activity 数据的地方

public void RecibirDatos(){
Bundle extras = getIntent().getExtras();
String versionnueva = extras.getString("versionnueva");
String versionactual = extras.getString("versionactual");

VersionActual=versionactual;
VersionNueva=versionnueva;
}

接收数据时,intent为null,收集数据。我该怎么做?

最佳答案

替换

PendingIntent pIntent = PendingIntent.getActivity(PrincipalActivity.this, 0, intento, 0);

PendingIntent pIntent = PendingIntent.getActivity(PrincipalActivity.this, 0, intento, PendingIntent.FLAG_UPDATE_CURRENT);

因为最后一个参数是标志,指示如何控制在实际发送发生时可以提供 Intent 的哪些未指定部分。所以你不能将它的值设置为0。

请看PendingIntent api docs .

关于android - 使用通知管理器将数据从一个 Activity 传递到另一个 Activity ,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/33718848/

26 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com