gpt4 book ai didi

android - 如何禁用 Firebase 应用内消息传递按钮操作打开 url

转载 作者:行者123 更新时间:2023-12-04 10:21:01 25 4
gpt4 key购买 nike

虽然我创建了 Firebase 应用内消息传递点击监听器,但它会在点击按钮时尝试打开 Android 系统。

这样的网址:https://site_url/product_id

我想在逻辑运算后打开这个网址。

class MainActivity : AppCompatActivity() : FirebaseInAppMessagingClickListener {

override fun onCreate(savedInstanceState: Bundle?) {
super.onCreate(savedInstanceState)
....

FirebaseInAppMessaging.getInstance().addClickListener(this)
FirebaseInAppMessaging.getInstance().triggerEvent("main_activity_ready")
}

override fun messageClicked(message: InAppMessage, action: Action) {
val url =( action.actionUrl ?: "")
Log.d(TAG, "in-app messaging url : $url")
linkParsePresenter.startLinkParse(url, PreviousPage.InAppMessaging) // This is my logic function.

}
}

enter image description here

已调用 messageClicked 函数。没有问题。但系统也试图打开这个url。我如何覆盖或禁用它?

最佳答案

我也在纠结这个问题

不幸的是,目前看来没有办法解决这个问题。 Firebase 将调用您的自定义 FirebaseInAppMessagingClickListener,但随后它会尝试导航到提供的操作 URL。

这是摘自FirebaseInAppMessagingDisplay :

actionListener = new OnClickListener() {
public void onClick(View v) {
if (FirebaseInAppMessagingDisplay.this.callbacks != null) {
FirebaseInAppMessagingDisplay.this.callbacks.messageClicked(action);
}

CustomTabsIntent i = (new Builder()).setShowTitle(true).build();
i.launchUrl(activity, Uri.parse(action.getActionUrl()));
FirebaseInAppMessagingDisplay.this.notifyFiamClick();
FirebaseInAppMessagingDisplay.this.removeDisplayedFiam(activity);
FirebaseInAppMessagingDisplay.this.inAppMessage = null;
FirebaseInAppMessagingDisplay.this.callbacks = null;
}
};

如您所见,Firebase 将运行所有自定义回调,然后尝试导航,而不管 launchUrl(activity, Uri.parse(action.getActionUrl()))

我能想到的唯一选择是按照Customize your Firebase In-App Messaging messages中的建议在您的应用程序中正确支持深层链接。 .

关于android - 如何禁用 Firebase 应用内消息传递按钮操作打开 url,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/60850234/

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