簡體   English   中英

Ionic 3 - 應用卡在閃屏上。 進行更改后開始運行並在模擬時刷新(iOS)

[英]Ionic 3 - App stuck on splashscreen. Starts running once I make a change and refreshes while emulating (iOS)

有一個 Ionic 3 應用程序,當我在 iOS 上進行模擬時,它會卡在啟動畫面上。 有趣的是,如果我向 ts 文件添加一個空格,它會刷新並開始工作。

在此處輸入圖片說明

這搞亂了我使用 Appium 的 E2E 測試,所以我想知道是否有人對可能導致這種行為的原因有更好的了解。

我將把所有 package.json 依賴都留在這里,以防萬一:

"dependencies": {
"@angular/animations": "^4.0.0",
"@angular/cdk": "^2.0.0-beta.12",
"@angular/common": "5.0.0",
"@angular/compiler": "5.0.0",
"@angular/compiler-cli": "5.0.0",
"@angular/core": "5.0.0",
"@angular/forms": "^5.0.0",
"@angular/http": "5.0.0",
"@angular/platform-browser": "5.0.0",
"@angular/platform-browser-dynamic": "5.0.0",
"@ionic-native/aes-256": "^4.20.0",
"@ionic-native/battery-status": "^4.9.0",
"@ionic-native/core": "^4.10.1",
"@ionic-native/device": "^4.17.0",
"@ionic-native/dialogs": "^4.9.0",
"@ionic-native/file": "^4.9.0",
"@ionic-native/file-chooser": "^4.10.0",
"@ionic-native/file-path": "^4.10.0",
"@ionic-native/file-transfer": "^4.20.0",
"@ionic-native/http": "^4.10.0",
"@ionic-native/insomnia": "^4.9.2",
"@ionic-native/keyboard": "^4.15.0",
"@ionic-native/local-notifications": "^4.9.0",
"@ionic-native/media": "^4.9.0",
"@ionic-native/network": "^4.17.0",
"@ionic-native/power-management": "^4.9.2",
"@ionic-native/pro": "^4.9.2",
"@ionic-native/screen-orientation": "^4.20.0",
"@ionic-native/splash-screen": "4.3.2",
"@ionic-native/status-bar": "4.3.2",
"@ionic/pro": "^2.0.3",
"@ionic/storage": "2.1.3",
"@types/crypto-js": "^3.1.43",
"awesome": "0.0.7",
"bootstrap": "^4.0.0-beta.2",
"cordova-ios": "5.0.0",
"cordova-plugin-advanced-http": "^1.11.1",
"cordova-plugin-android-permissions": "^1.0.0",
"cordova-plugin-background-upload": "^1.0.12",
"cordova-plugin-badge": "0.8.8",
"cordova-plugin-battery-status": "^2.0.2",
"cordova-plugin-device": "^2.0.2",
"cordova-plugin-dialogs": "^2.0.1",
"cordova-plugin-file": "^6.0.1",
"cordova-plugin-file-transfer": "^1.7.1",
"cordova-plugin-filechooser": "^1.2.0",
"cordova-plugin-filepath": "^1.5.1",
"cordova-plugin-insomnia": "^4.3.0",
"cordova-plugin-ionic": "^5.3.0",
"cordova-plugin-ionic-keyboard": "^2.1.3",
"cordova-plugin-ionic-webview": "^2.3.1",
"cordova-plugin-ios-camera-permissions": "^1.2.0",
"cordova-plugin-ios-disableshaketoedit": "^1.0.0",
"cordova-plugin-itunesfilesharing": "0.0.1",
"cordova-plugin-local-notification": "0.9.0-beta.2",
"cordova-plugin-media": "^5.0.2",
"cordova-plugin-network-information": "^2.0.1",
"cordova-plugin-powermanagement-orig": "^1.1.2",
"cordova-plugin-screen-orientation": "^3.0.1",
"cordova-plugin-splashscreen": "^5.0.2",
"cordova-plugin-statusbar": "^2.4.2",
"cordova-plugin-whitelist": "^1.3.3",
"crypto-js": "^3.1.9-1",
"es6-promise-plugin": "^4.2.2",
"font-awesome": "4.7.0",
"hammerjs": "^2.0.8",
"ionic-angular": "3.9.2",
"ionic-native-datepicker": "^1.0.5",
"ionicons": "3.0.0",
"ios-sim": "^8.0.2",
"jquery": "3.3.1",
"jwt-decode": "^2.2.0",
"ngx-dropdown-list": "^1.1.1",
"ngx-infinite-scroll": "^0.8.3",
"ngx-pagination": "^4.1.0",
"ngx-select-dropdown": "^1.0.1",
"node-sass": "4.9.0",
"rxjs": "5.5.2",
"sw-toolbox": "3.6.0",
"web-animations-js": "^2.3.1",
"zone.js": "0.8.18"
},
"devDependencies": {
    "@angular/cli": "^1.5.0",
    "@angular/router": "^4.4.6",
    "@ionic/app-scripts": "^3.2.4",
    "@types/jasmine": "^2.6.3",
    "@wdio/appium-service": "^6.4.0",
    "@wdio/cli": "^6.4.2",
    "@wdio/local-runner": "^6.4.2",
    "@wdio/mocha-framework": "^6.4.0",
    "@wdio/selenium-standalone-service": "^6.4.0",
    "@wdio/spec-reporter": "^6.4.0",
    "@wdio/sync": "^6.4.0",
    "appium": "^1.18.1",
    "appium-doctor": "^1.15.3",
    "chromedriver": "^84.0.1",
    "ionic-mocks": "^0.13.0",
    "jasmine-core": "^2.8.0",
    "jasmine-spec-reporter": "^4.2.1",
    "karma": "^1.7.1",
    "karma-chrome-launcher": "^2.2.0",
    "karma-cli": "^1.0.1",
    "karma-coverage-istanbul-reporter": "^1.3.0",
    "karma-jasmine": "^1.1.0",
    "karma-jasmine-html-reporter": "^0.2.2",
    "karma-junit-reporter": "^1.2.0",
    "protractor": "^5.1.2",
    "sass-loader": "^6.0.7",
    "ts-node": "^3.3.0",
    "tslint-eslint-rules": "^4.1.1",
    "typescript": "^2.4.2",
    "wdio-appium-service": "^0.2.3",
    "wdio-chromedriver-service": "^6.0.3",
    "wdio-jasmine-framework": "^0.3.8",
    "wdio-mochawesome-reporter": "^4.0.0",
    "wdio-spec-reporter": "^0.1.5",
    "webdriverio": "^6.4.2",
    "ws": "3.3.2"
  },

順便說一句,已經嘗試了以下內容:

  • 移除平台並重新構建

     ionic cordova platform rm ios ionic cordova platform add ios@5.0.0 ionic cordova emulate ios -lc --target iPad--6th-generation-
  • 在准備/構建時,我有一個不同的問題:

     ionic-app-script task: "build" Error: Failed to transpile program at new BuildError ([...]/node_modules/@ionic/app-scripts/dist/util/errors.js:16:28)

好的,基本上 Ionic 和 Appium 依賴之間存在沖突。

花了幾個小時試圖破解它,但選擇將 appium 實現與 E2E 測試一起移動到一個單獨的文件夾。

清潔和重建

ionic clean
ionic build

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM