早些时候传递给 customTabsIntent.intent.putExtra(Browser.EXTRA_HEADERS, headers) 的 EXTRA_HEADERS 工作正常。 Chrome 更新到 83 后,它停止传递 header 数据。
public static void startCustomTab(String url, Context context) {
CustomTabsIntent.Builder builder = new CustomTabsIntent.Builder();
CustomTabsIntent customTabsIntent = builder.build();
builder.setShowTitle(true);
Bundle headers = new Bundle();
headers.putString(context.getString(R.string.type), "android");
headers.putString(context.getString(R.string.source), "app");
customTabsIntent.intent.putExtra(Browser.EXTRA_HEADERS, headers);
customTabsIntent.intent.addFlags(Intent.FLAG_ACTIVITY_NEW_TASK);
customTabsIntent.launchUrl(context, Uri.parse(url));
}
最佳答案
由于存在漏洞,添加自定义 header 已被删除。 CORS safe-listed request headers仍然支持。您可以在此处阅读有关此更改的更多信息:http://crbug.com/873178
关于java - Android- EXTRA_HEADERS 未反射(reflect)在更新的 Chrome 版本大于 83 中,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/63168798/