Ionic cordova 应用程序适用于所有浏览器和 IOS 9,但不再适用于 IOS 8 [无错误冻结]

Ionic cordova app working on all browsers and IOS 9, but not anymore on IOS 8 [freezes without error]

我有一个 Ionic 应用程序在 iOS 8.

下运行良好

现在我更新了一些代码并包含了网络信息插件并更新为cordova-ios-3.9.2.

我已经进行了两天的调试,但我没有收到任何错误,不是在 Xcode 中,也不是在我使用 safari webinspector 检查应用程序时。

但是,该应用程序在 iOS 8.1 下不再运行。它在 iOS 9 和所有 Android 版本下工作。

我知道这是一个模糊的问题,我希望能找到可以帮助的人。也许有人知道 iOS 8 和 9 之间的区别?

我们正在使用以下插件:

代码中的更改很小,并且在所有主要浏览器上都经过了很好的测试,而且我在 safari web-inspector 中没有发现任何错误,而且它在 iOS 9 下工作,所以我不怀疑它们。

同样奇怪的是IOS8下的布局看起来很奇怪。也许这是一个 css 错误?我不知道这是否可能?

感谢任何帮助!

编辑: 我尝试过的方法:将之前的离子代码与 ios-cordova 3.9.2. 一起使用。这有效。同样在 iOS 8.1

问题出在 CSS 前缀上。在两次发布之间,我们不小心删除了其中一些。如果没有 -webkit- css 前缀,ios 应用程序会在没有警告或错误的情况下中断。

所以我遇到了类似的问题,我使用了这个插件: https://github.com/sindresorhus/gulp-autoprefixer

问题是这个插件推荐以下实现:

const gulp = require('gulp');
const autoprefixer = require('gulp-autoprefixer');

gulp.task('default', () =>
    gulp.src('src/app.css')
        .pipe(autoprefixer({
            browsers: ['last 2 versions'],
            cascade: false
        }))
        .pipe(gulp.dest('dist'))
);

两周前,iOS 9.3 发布,因此取消了对 iOS 8 的支持并破坏了我的应用程序,并招致了一些非常愤怒的客户。

修复是指定我需要支持的版本。

gulp.task('default', () =>
    gulp.src('src/app.css')
        .pipe(autoprefixer({
            browsers: ['ios_saf >= 7', 'Chrome >= 42'],
            cascade: false
        }))
        .pipe(gulp.dest('dist'))
);

希望对外面的人有所帮助!