java - 为通知创建 PendingIntent 而不指定 Activity

标签 java android kotlin android-notifications android-push-notification

有没有办法为通知创建 PendingIntent 或显示来自“数据”层的通知。

在该层中我没有 Activity 类。

那么 Intent 可以自动选择一个标记为“默认”或“启动器”的 Activity 吗?

        <activity
            android:name=".feature.splash.SplashActivity"
            android:screenOrientation="portrait">
            <intent-filter>
                <action android:name="android.intent.action.MAIN" />
                <action android:name="android.intent.action.VIEW" />

                <category android:name="android.intent.category.LAUNCHER" />
            </intent-filter>
        </activity>

最佳答案

您可以使用 PendingIntent.getBroadcast() :

 Intent broadcastIntent = new Intent(mContext, NotificationReceiver.class);
 broadcastIntent.putExtra(Const.NOTIFICATION_ID,"1";
 PendingIntent cancleIntent = PendingIntent.getBroadcast(mContext,
            0, broadcastIntent, PendingIntent.FLAG_CANCEL_CURRENT);

public class NotificationReceiver extends BroadcastReceiver {
@Override
public void onReceive(Context context, Intent intent) {
    if (intent.hasExtra(Const.NOTIFICATION_ID)) {
        int notificationId = intent.getIntExtra(Const.NOTIFICATION_ID, 0);

       // do your logic like cancle notification
         NotificationManager manager = (NotificationManager) context.getSystemService(Context.NOTIFICATION_SERVICE);
            manager.cancel(notificationId);

    }


}
}

关于java - 为通知创建 PendingIntent 而不指定 Activity ,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/59563030/

相关文章:

java - 如何将表转换为Spring Data实体?

java - 如何在java中将元素推送到空的固定大小数组

java - 我不断收到空指针异常

android - android 联系人数据中的 TIMES_CONTACTED 值问题

AndroidAnnotations Rest 查看响应数据

kotlin - 断言测试不应该通过(嵌套的所有/任何?)

java - 无法找到方法'com.android.build.gradle.internal.variant.BaseVariantData.getOutputs()Ljava/util/List

java - 如何做相机拍摄快照并存储到SD卡?

java - Android Jelly bean 相机返回空 URI

android - ffmpeg 不能使用 Android LTE?