gpt4 book ai didi

ios - cordova 2.9.x iOS 8 用户代理错误

转载 作者:塔克拉玛干 更新时间:2023-11-02 08:00:27 28 4
gpt4 key购买 nike

我正在使用 Cordova 2.9.0 和 phonegap 构建一个 iOS 应用程序。
使用 iOS 8,我收到错误消息

Deprecated attempt to access property 'geolocation' on a non-Navigator object.

Deprecated attempt to access property 'userAgent' on a non-Navigator object

我尝试了 EddyVerbruggen 的解决方案
https://gist.github.com/EddyVerbruggen/cd02c73162180793513e

但是,我从 Cordova 收到了这些错误消息

此外,当我的应用程序完全加载时,我可以毫无问题地使用

window.navigator.userAgent 

最佳答案

最重要的是,这似乎只是一个警告,应用程序运行良好。

他们已经解决了这个问题,我想它很快就会可用,但是对于使用 cordova 2.9.X 的人,我们必须在 cordova 上将 replaceNavigator 函数更改为这样.js 文件(其他都是新的)

function replaceNavigator(origNavigator) {
var CordovaNavigator = function() {};
CordovaNavigator.prototype = origNavigator;
var newNavigator = new CordovaNavigator();
// This work-around really only applies to new APIs that are newer than Function.bind.
// Without it, APIs such as getGamepads() break.
if (CordovaNavigator.bind) {
for (var key in origNavigator) {
if (typeof origNavigator[key] == 'function') {
newNavigator[key] = origNavigator[key].bind(origNavigator);
} else {
(function(k) {
Object.defineProperty(newNavigator, k, {
get: function() {
return origNavigator[k];
},
configurable: true,
enumerable: true
});
})(key);
}
}
}
return newNavigator;
}

关于ios - cordova 2.9.x iOS 8 用户代理错误,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/24784541/

28 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com