在WebView中打开InApp消息传递URL

问题描述

我成功地将FirebaseInAppMessagingClickListener附加到Android Studio中的Android应用程序,但是我无法从“应用程序内消息传递”弹出窗口获取URL导航到应用程序中的WebView活动,而是打开了设备内置浏览器作为覆盖在应用程序上方的位置。该活动甚至都没有打开,甚至在内置浏览器覆盖下也没有打开,同时Log功能中的调试代码在Logcat中可见。

所以我在这里有MyFirebaseInAppMessaging类(扩展服务实现了FirebaseInAppMessagingClickListener)代码

    @Override
        public void messageClicked(@NonNull InAppMessage inAppMessage,@NonNull Action action) {
            // Determine which URL the user clicked
            String url = action.getActionUrl();
            Log.d(TAG,"Popup URL :"+url);
    
            // Get general information about the campaign
            CampaignMetadata Metadata = inAppMessage.getCampaignMetadata();
            Log.d(TAG,"Metadata :"+Metadata);
    
            try{
//starting webview activity here
//url passing to it via intent extra works as expected
                startActivity(new Intent(this,webview_base.class).putExtra("web_url",url));
            }catch(Exception e){
                e.printstacktrace();
            }
        }

正如您在try-catch块中看到的那样,我试图打开webview活动,并将URL传递给它。

------更新

好吧,我玩过Logcat,在重新启动Android Studio之前,其中缺少一些日志。

结果是由于将“ this”作为第一个参数,所以我得到了NullPointerExceptien启动的Activity。我将尝试找出一些问题,并在发现后立即更新此帖子。

解决方法

暂无找到可以解决该程序问题的有效方法,小编努力寻找整理中!

如果你已经找到好的解决方法,欢迎将解决方案带上本链接一起发送给小编。

小编邮箱:dio#foxmail.com (将#修改为@)

相关问答

Selenium Web驱动程序和Java。元素在(x,y)点处不可单击。其...
Python-如何使用点“。” 访问字典成员?
Java 字符串是不可变的。到底是什么意思?
Java中的“ final”关键字如何工作?(我仍然可以修改对象。...
“loop:”在Java代码中。这是什么,为什么要编译?
java.lang.ClassNotFoundException:sun.jdbc.odbc.JdbcOdbc...