Chrome deprecated a feature allowing for synchronous XHR during page dismissal之前有一些Chrome版本。几家公司抱怨无法预料的业务影响后,他们决定默认Chrome 80中的行为,并允许临时解决方法直到Chrome82。
似乎升级到Chrome / ChromeDriver 78后,我们发现应用程序中的行为与阻止卸载事件时的同步XHR一致。仅当ChromeDriver打开Chrome时才会出现这种情况,手动打开Chrome时无法重现。即使在打开驱动程序时未指定ChromeOptions,也会发生这种情况。在ChromeDriver生成的Chrome窗口中,我导航到chrome:\\flags
并搜索#allow-sync-xhr-in-page-dismissal
标志,我看到它已设置为“默认”。设置为“启用”后,我们的问题就消失了。但是,当我在手动启动的Chrome窗口中选中此标志时,它也设置为“默认”。
为什么通过ChromeDriver与手动打开的Chrome会话启动时,行为似乎有所不同?
强制ChromeDriver通过ChromeOptions
将#allow-sync-xhr-in-page-dismissing设置为启用的正确方法是什么?
答案 0 :(得分:0)
回答问题2:
.onSubmit(new MultiSelectDialog.SubmitCallbackListener() {
@Override
public void onSelected(ArrayList<Integer> selectedIds, ArrayList<String> selectedNames, String dataString) {
//will return list of selected IDS
for (int i = 0; i < selectedIds.size(); i++) {
Toast.makeText(MessageComposeActivity.this, "Selected Ids : " + selectedIds.get(i) + "\n" +
"Selected Names : " + selectedNames.get(i) + "\n" +
"DataString : " + dataString, Toast.LENGTH_SHORT).show();
Log.i("KLKL",String.valueOf(selectedIds));
//Adding tags
mTagContainerLayout2.addTag(selectedNames.get(i), selectedIds.get(i));
}
}
@Override
public void onCancel() {
Log.d("Cancel","Dialog cancelled");
}
});