在适用于 iOS 的 Cordova / PhoneGap 应用程序上修改用户代理字符串

Posted

技术标签:

【中文标题】在适用于 iOS 的 Cordova / PhoneGap 应用程序上修改用户代理字符串【英文标题】:Modifying User-Agent string on Cordova / PhoneGap application for iOS 【发布时间】:2015-09-11 00:13:55 【问题描述】:

我正在关注下面的 GitHub 拉取请求,看看这是否可行,在代码更改(17 行)的意义上存在活动,但我不确定如何在我的 ios 应用程序中实现这一点...这里有人有什么想法吗? (科尔多瓦 5.1)

https://github.com/apache/cordova-plu...

干杯, 会

【问题讨论】:

【参考方案1】:

您的链接似乎已损坏,但我想我知道您的要求。这实际上是 Cordova 的一个相对较新的功能,来自 issue。

大约一个月前,它在 cordova-ios 3.9.0 中推出。请参阅这些release notes。 (请记住,cordova-ios 和 cordova-android 等平台版本与您提供的 5.1 版本号不同,即 CLI 版本)

您可以在项目根目录中的 config.xml 文件中设置首选项。

<preference name="AppendUserAgent" value="myapp" />

会产生这样的结果:

"Mozilla/5.0 (Linux; Android 4.4.4; Nexus 5 Build/KTU84P) AppleWebKit/537.36 (Khtml, like Gecko) Chrome/38.0.2125.114 Mobile Safari/537.36 myapp"

此时:

<preference name="OverrideUserAgent" value="Better_be_really_specific_here" />

只会给你这个:

"Better_be_really_specific_here" 

我建议只使用 AppendUserAgent,就像你只使用覆盖一样,你将丢失所有可以从 UA 获得的其他有价值的信息,例如设备、操作系统、浏览器版本等。

【讨论】:

【参考方案2】:

Android:在 config.xml 中添加以下代码

<preference name="OverrideUserAgent" value="Mozilla/5.0 Google" />

【讨论】:

以上是关于在适用于 iOS 的 Cordova / PhoneGap 应用程序上修改用户代理字符串的主要内容,如果未能解决你的问题,请参考以下文章

适用于 iOS 的 Cordova 文件选择器?

如何清除适用于 iOS 平台的 Cordova 应用程序的 localStorage

适用于 Cordova 的 Visual Studio 工具 - 适用于 iOS 的 RemoteBuild 失败

适用于 iOS 的 Cordova 和 localhost

构建命令失败:CompileAssetCatalog - 适用于 iOS 的 Cordova

在适用于 iOS 的 ionic 中使用 $cordovaClipboard ng-cordova 插件