商品信息管理通知"click_action"不起作用



我正在使用一个云功能并使用它发送推送通知。发送通知按预期工作,但click_action属性不工作。当我点击通知时,什么也没发生。这是我的代码:

我的通知有效负载:

const payload = {
notification: {
title: 'Soru Çözüm',
body: 'Attığınz soruya bir yorum geldi: ' + data.content,
icon: 'ic_stat_logo',
click_action: '.activities.SoruDetayActivity'
},
data: {
title: 'Soru Çözüm',
content: 'Sorunuz çözüldü.',
post: data.parent
}
};

意向过滤器:

<activity
android:name=".activities.SoruDetayActivity"
android:label="Soru"
android:windowSoftInputMode="adjustResize">
<intent-filter>
<action android:name="android.intent.action.VIEW" />
<action android:name=".activities.SoruDetayActivity"/>
<category android:name="android.intent.category.DEFAULT" />
<category android:name="android.intent.category.BROWSABLE" />
<data
android:host="www.website.com"
android:scheme="https" />
</intent-filter>
</activity>

您的通知负载似乎是正确的。尝试通过删除数据和类别来更改意向过滤器。可浏览标签,如以下代码行:

<activity
android:name=".activities.SoruDetayActivity"
android:label="Soru"
android:windowSoftInputMode="adjustResize">
<intent-filter>
<action android:name="android.intent.action.VIEW" />
<action android:name=".activities.SoruDetayActivity"/>
<category android:name="android.intent.category.DEFAULT" />

</intent-filter>
</activity>

您的操作名称应该是要启动的活动的全名。你现在拥有的是部分名称,相对于你的应用程序包的名称。我们看不到这是什么,因为前缀在您的清单的其他地方。一旦你找到它,它应该看起来更像这样:

click_action: 'com.yourapp.activities.SoruDetayActivity'

Notification将尝试启动URL,指定的活动名称不符合URL的条件,因此Android不会执行任何操作,因为它无法识别,相反,如果您在Manifest中使用<data>标记中提到的host地址,它会将您重定向到该活动,类似于下面的

click_action: 'https://www.website.com'

对我来说,问题在于Android Studio缓存。清除项目并重建修复它。android:name字符串无关紧要。我的Android Studio版本是花栗鼠|2021.2.1补丁1

相关内容

  • 没有找到相关文章

最新更新