问题描述
我成功地将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 (将#修改为@)