ionic3平臺android端啟動頁面閃屏8秒、應(yīng)用啟動慢的問題(cordova-plugin-splashscreen)

目錄

  • 問題描述
  • 1 可能引發(fā)該問題的X因子集合
  • 2 使用f方法針對X因子進(jìn)行測試驗(yàn)證
    • 2.1 驗(yàn)證cordova-plugin-splashscreen插件是否是關(guān)鍵因子
    • 2.2 驗(yàn)證Cordova橋android端源碼是否是關(guān)鍵因子
    • 2.3 驗(yàn)證AngularJS3.2.0是否是關(guān)鍵影響因子
      • 2.3.1 使用ionic1中的AngularJS 1.5.3 版本進(jìn)行驗(yàn)證
  • 3 尋找具體原因
    • 3.1 查看日志是否包含有效信息
      • 3.1.1 驗(yàn)證 設(shè)置AngularJS為生產(chǎn)模式是否是關(guān)鍵因子
      • 3.1.2 驗(yàn)證 deviceready 消息超時是否是關(guān)鍵因子
      • 3.1.3 驗(yàn)證 AngularJS 4.1.2 的 platform對象是否是關(guān)鍵因子
  • 4 修改問題
  • 5 附錄
    • 5.1 ionic2測試日志
    • 5.2 ionic3測試日志

問題描述:

  • 使用 ionic3.4.0 創(chuàng)建的 ionic項(xiàng)目(其中Android框架6.2.3版本、AngularJS框架4.1.2版本、Cordova源碼JS端6.2.3版本)
  • 使用ionic cordova build android生成apk安裝包。
  • 運(yùn)行apk安裝包啟動頁面動畫等待3秒,之后頁面白屏5秒。共計啟動頁面需要8秒的時間。
  • 結(jié)論:程序運(yùn)行啟動需要8秒,用戶體驗(yàn)無法接受。

1、可能引發(fā)該問題的X因子集合

  • Cordova橋JS端源碼(AngularJS 3.2.0版本)

  • Cordova橋android端源碼

  • cordova-plugin-splashscreen插件源碼


2、使用f方法針對X因子進(jìn)行測試驗(yàn)證


2.1 驗(yàn)證cordova-plugin-splashscreen插件是否是關(guān)鍵因子?

  • 驗(yàn)證方法:

    • 使用ionic cordova plugin刪除 cordova-plugin-splashscreen插件,并刪除JS端相關(guān)的splashscreen的調(diào)用方法,運(yùn)行應(yīng)用,查看效果;
  • 驗(yàn)證效果:

    • 啟動動畫頁面消失,白屏5秒進(jìn)行應(yīng)用;
  • 結(jié)論:

    • cordova-plugin-splashscreen對控制啟動頁面動畫。(該3秒的時間可可以通過修改config.xml里的 SplashScreenDelay 來控制時間長短。)

2.2 驗(yàn)證Cordova橋android端源碼是否是關(guān)鍵因子?

因?yàn)閕onic1中沒有出現(xiàn)此問題,對比了ionic1與ionic3項(xiàng)目中除了AngularJS端的代碼差異。

  • 驗(yàn)證方法:

    • 使用beyond compare軟件對比兩個項(xiàng)目的代碼文件。
  • 驗(yàn)證效果:

    • cordova-plugin-splashscreen、android框架包沒有差異。
  • 結(jié)論:

    • 80%排除原生端代碼對該問題的影響。

2.3 驗(yàn)證AngularJS3.2.0是否是關(guān)鍵影響因子?


2.3.1 使用ionic2中的AngularJS 1.5.3 版本進(jìn)行驗(yàn)證:

  • 驗(yàn)證方法:

    • 互換ionic2與ionic3中platforms/android/assets/www目錄;
  • 驗(yàn)證效果:

組合方式 ionic版本 AngularJS版本 驗(yàn)證時間
正常組合 ionic2 1.5.3 3秒
ionic3 4.1.2 8秒
測試組合 ionic2 4.1.2 8秒
ionic3 1.5.3 3秒
  • 結(jié)論:
    • 該問題80%的可能性與AngularJS的版本更換內(nèi)容有關(guān)。

3、尋找具體原因


3.1 查看日志是否包含有效信息?

  • 查看android studio輸出日志如下:

    06-17 13:22:08.550 32233-32233/io.ionic.starter D/JsMessageQueue: Set native->JS mode to EvalBridgeMode
    06-17 13:22:16.403 32233-32233/io.ionic.starter D/SystemWebChromeClient: file:///android_asset/www/build/main.js: Line 3303 : Angular is running in the development mode. Call enableProdMode() to enable the production mode.
    06-17 13:22:16.403 32233-32233/io.ionic.starter I/chromium: [INFO:CONSOLE(3303)] "Angular is running in the development mode. Call enableProdMode() to enable the production mode.", source: file:///android_asset/www/build/main.js (3303)
    06-17 13:22:16.780 32233-32233/io.ionic.starter D/SystemWebChromeClient: file:///android_asset/www/cordova.js: Line 1223 : deviceready has not fired after 5 seconds.
    06-17 13:22:16.780 32233-32233/io.ionic.starter I/chromium: [INFO:CONSOLE(1223)] "deviceready has not fired after 5 seconds.", source: file:///android_asset/www/cordova.js (1223)
    06-17 13:22:16.782 32233-32233/io.ionic.starter D/SystemWebChromeClient: file:///android_asset/www/build/main.js: Line 101210 : Ionic Native: deviceready did not fire within 5000ms. This can happen when plugins are in an inconsistent state. Try removing plugins from plugins/ and reinstalling them.
    06-17 13:22:16.782 32233-32233/io.ionic.starter I/chromium: [INFO:CONSOLE(101210)] "Ionic Native: deviceready did not fire within 5000ms. This can happen when plugins are in an inconsistent state. Try removing plugins from plugins/ and reinstalling them.", source: file:///android_asset/www/build/main.js (101210)
    06-17 13:22:16.784 32233-32233/io.ionic.starter D/SystemWebChromeClient: file:///android_asset/www/build/main.js: Line 101205 : Ionic Native: deviceready event fired after 6079 ms
    06-17 13:22:16.785 32233-32233/io.ionic.starter I/chromium: [INFO:CONSOLE(101205)] "Ionic Native: deviceready event fired after 6079 ms", source: file:///android_asset/www/build/main.js (101205)
    06-17 13:22:16.791 32233-32375/io.ionic.starter I/App: WARNING: Back Button Default Behavior will be overridden.  The backbutton event will be fired!
    06-17 13:22:16.797 32233-32233/io.ionic.starter D/SystemWebChromeClient: file:///android_asset/www/build/main.js: Line 74558 : aaaaaa
    
  • 日志關(guān)鍵詞語:

    • Angular is running in the development mode. Call enableProdMode() to enable the production mode.-->需要設(shè)置AngularJS為生產(chǎn)模式。
    • deviceready has not fired after 5 seconds.-->cordova的deviceready消息沒有被觸發(fā),5秒超時后cordova框架自動發(fā)出消息;

3.1.1 驗(yàn)證 設(shè)置AngularJS為生產(chǎn)模式是否是關(guān)鍵因子?

  • 驗(yàn)證方法:
    //測試方法:在main.js添加以下代碼:
    import {enableProdMode} from '@angular/core';
    enableProdMode();

  • 驗(yàn)證效果:

    • 啟動應(yīng)用仍然需要8秒;
  • 結(jié)論:

    • AngularJS的生產(chǎn)、開發(fā)模式不是關(guān)鍵因子。

3.1.2 驗(yàn)證 deviceready 消息超時是否是關(guān)鍵因子?

  • 驗(yàn)證方法:

    • 閱讀 cordova橋JS端源碼,如果deviceready消息超時,會打印出影響超時的模塊內(nèi)容,但是查看日志,并沒有輸出對應(yīng)模塊的內(nèi)容。

    • 使用AngularJS 1.5.3 版本測試,查看日志;(詳細(xì)日志見 附錄5.2)

  • 驗(yàn)證效果

    • AngularJS 1.5.3正常,deviceready消息大約3秒左右完成。
    • AngularJS 4.1.2不正常,deviceready消息總是超時(原因不明,可能是ionic-angularjs封裝時導(dǎo)致了 onDOMContentLoaded 存在問題,測試日志見 文檔末尾)
  • 結(jié)論:

    • onDOMContentLoaded 消息存在問題,而AngularJS與onDOMContentLoaded消息有關(guān)的模塊只有 AngularJS 封裝的 platform對象;

3.1.3 驗(yàn)證 AngularJS 4.1.2 的 platform對象是否是關(guān)鍵因子?

  • 驗(yàn)證方法:
    • 刪除 app.component.ts 文件里與platform對象相關(guān)的代碼
  platform.ready().then(() => {
      // Okay, so the platform is ready and our plugins are available.
      // Here you can do any higher level native things you might need.
      statusBar.styleDefault();
      splashScreen.hide();
    });
  • 驗(yàn)證效果:
    • deviceready消息正常。
    • 日志如下:
06-17 17:22:54.527 7893-7893/io.ionic.starter D/JsMessageQueue: Set native->JS mode to EvalBridgeMode
06-17 17:22:58.716 7893-7893/io.ionic.starter D/SystemWebChromeClient: file:///android_asset/www/build/main.js: Line 3303 : Angular is running in the development mode. Call enableProdMode() to enable the production mode.
06-17 17:22:58.716 7893-7893/io.ionic.starter I/chromium: [INFO:CONSOLE(3303)] "Angular is running in the development mode. Call enableProdMode() to enable the production mode.", source: file:///android_asset/www/build/main.js (3303)
06-17 17:22:58.734 7893-7902/io.ionic.starter W/art: Suspending all threads took: 15.411ms
06-17 17:22:58.899 7893-7893/io.ionic.starter D/SystemWebChromeClient: file:///android_asset/www/build/main.js: Line 101333 : Ionic Native: deviceready event fired after 2991 ms
06-17 17:22:58.899 7893-7893/io.ionic.starter I/chromium: [INFO:CONSOLE(101333)] "Ionic Native: deviceready event fired after 2991 ms", source: file:///android_asset/www/build/main.js (101333)
06-17 17:22:58.937 7893-8166/io.ionic.starter I/App: WARNING: Back Button Default Behavior will be overridden.  The backbutton event will be fired!
  • 結(jié)論
    • AngularJS 4.1.2版本對platform的封裝影響了cordova橋js的加載機(jī)制。(具體原因需要進(jìn)一步研究AngularJS源碼)。

4 修改問題

  • 修改方法:
    • 由于JS的業(yè)務(wù)邏輯需要在deviceready成功之后才能調(diào)用,所以需要手動封裝deviceready消息;
    • 封裝代碼如下:
declare const window: any;
export class MyApp {
  rootPage:any = TabsPage;
  constructor(platform: Platform, statusBar: StatusBar, splashScreen: SplashScreen) {
      if(window.cordova) {
        document.addEventListener("deviceready", function() {
          // retrieve the DOM element that had the ng-app attribute
          splashScreen.hide();
          // 編寫項(xiàng)目業(yè)務(wù)代碼開始

        }, false);
      } else {
        console.log('web 模式');
        // 編寫項(xiàng)目業(yè)務(wù)代碼開始
      }
    // platform.ready().then(() => {
    //   // Okay, so the platform is ready and our plugins are available.
    //   // Here you can do any higher level native things you might need.
    //   statusBar.styleDefault();
    //   splashScreen.hide();
    // });
  }
}
  • 測試結(jié)果:
    • deviceready大約需要3秒準(zhǔn)備完成。android應(yīng)用啟動大約1秒,所以整個應(yīng)用啟動到顯示出來頁面大約為3-4秒。

5 附錄


5.1 ionic2測試日志

06-17 14:20:27.728 8326-8326/? I/art: Late-enabling -Xcheck:jni
06-17 14:20:27.790 8326-8326/? D/TidaProvider: TidaProvider()
06-17 14:20:27.804 8326-8326/? V/BoostFramework: mAcquireFunc method = public int com.qualcomm.qti.Performance.perfLockAcquire(int,int[])
06-17 14:20:27.805 8326-8326/? V/BoostFramework: mReleaseFunc method = public int com.qualcomm.qti.Performance.perfLockRelease()
06-17 14:20:27.805 8326-8326/? V/BoostFramework: mAcquireTouchFunc method = public int com.qualcomm.qti.Performance.perfLockAcquireTouch(android.view.MotionEvent,android.util.DisplayMetrics,int,int[])
06-17 14:20:27.805 8326-8326/? V/BoostFramework: mIOPStart method = public int com.qualcomm.qti.Performance.perfIOPrefetchStart(int,java.lang.String)
06-17 14:20:27.805 8326-8326/? V/BoostFramework: mIOPStop method = public int com.qualcomm.qti.Performance.perfIOPrefetchStop()
06-17 14:20:27.823 8326-8326/? V/BoostFramework: BoostFramework() : mPerf = com.qualcomm.qti.Performance@8e6d76d
06-17 14:20:27.938 8326-8326/io.ionic.starter W/System: ClassLoader referenced unknown path: /data/app/io.ionic.starter-1/lib/arm64
06-17 14:20:27.997 8326-8326/io.ionic.starter I/CordovaLog: Changing log level to DEBUG(3)
06-17 14:20:27.997 8326-8326/io.ionic.starter I/CordovaActivity: Apache Cordova native platform version 6.2.3 is starting
06-17 14:20:27.997 8326-8326/io.ionic.starter D/CordovaActivity: CordovaActivity.onCreate()
06-17 14:20:28.041 8326-8326/io.ionic.starter W/System: ClassLoader referenced unknown path: /system/app/WebViewGoogle/lib/arm64
06-17 14:20:28.046 8326-8326/io.ionic.starter I/WebViewFactory: Loading com.google.android.webview version 55.0.2883.91 (code 288309150)
06-17 14:20:28.091 8326-8326/io.ionic.starter I/cr_LibraryLoader: Time to load native libraries: 3 ms (timestamps 26-29)
06-17 14:20:28.092 8326-8326/io.ionic.starter I/cr_LibraryLoader: Expected native library version number "55.0.2883.91", actual native library version number "55.0.2883.91"
06-17 14:20:28.124 8326-8326/io.ionic.starter I/cr_LibraryLoader: Expected native library version number "55.0.2883.91", actual native library version number "55.0.2883.91"
06-17 14:20:28.124 8326-8326/io.ionic.starter I/chromium: [INFO:library_loader_hooks.cc(163)] Chromium logging enabled: level = 0, default verbosity = 0
06-17 14:20:28.149 8326-8326/io.ionic.starter I/cr_BrowserStartup: Initializing chromium process, singleProcess=true
06-17 14:20:28.196 8326-8326/io.ionic.starter I/Adreno: QUALCOMM build                   : 065a07a, I3a33bf62a4
                                                        Build Date                       : 12/06/16
                                                        OpenGL ES Shader Compiler Version: XE031.09.00.03
                                                        Local Branch                     : mybranch23838236
                                                        Remote Branch                    : quic/LA.BF64.1.2.3_rb1.7
                                                        Remote Branch                    : NONE
                                                        Reconstruct Branch               : NOTHING
06-17 14:20:28.360 8326-8326/io.ionic.starter D/EgretLoader: EgretLoader(Context context)
06-17 14:20:28.362 8326-8326/io.ionic.starter D/EgretLoader: The context is not activity
06-17 14:20:28.383 8326-8326/io.ionic.starter D/SystemWebViewEngine: CordovaWebView is running on device made by: Xiaomi
06-17 14:20:28.396 8326-8326/io.ionic.starter D/PluginManager: init()
06-17 14:20:28.407 8326-8326/io.ionic.starter D/CordovaWebViewImpl: >>> loadUrl(file:///android_asset/www/index.html)
06-17 14:20:28.426 8326-8326/io.ionic.starter I/cr_Ime: ImeThread is enabled.
06-17 14:20:28.435 8326-8372/io.ionic.starter W/cr_media: Requires BLUETOOTH permission
06-17 14:20:28.448 8326-8326/io.ionic.starter D/CordovaActivity: Started the activity.
06-17 14:20:28.469 8326-8326/io.ionic.starter D/CordovaActivity: Resumed the activity.
06-17 14:20:28.510 8326-8326/io.ionic.starter D/ActivityThreadInjector: clearCachedDrawables.
06-17 14:20:28.528 8326-8399/io.ionic.starter E/libEGL: validate_display:99 error 3008 (EGL_BAD_DISPLAY)
06-17 14:20:28.571 8326-8396/io.ionic.starter I/OpenGLRenderer: Initialized EGL, version 1.4
06-17 14:20:28.571 8326-8396/io.ionic.starter D/OpenGLRenderer: Swap behavior 1
06-17 14:20:28.580 8326-8326/io.ionic.starter E/chromium: [ERROR:interface_registry.cc(104)] Failed to locate a binder for interface: autofill::mojom::PasswordManagerDriver
06-17 14:20:28.602 8326-8399/io.ionic.starter W/VideoCapabilities: Unrecognized profile 2130706433 for video/avc
06-17 14:20:28.629 8326-8399/io.ionic.starter W/VideoCapabilities: Unrecognized profile/level 0/3 for video/mpeg2
06-17 14:20:28.633 8326-8399/io.ionic.starter W/VideoCapabilities: Unrecognized profile/level 0/3 for video/mpeg2
06-17 14:20:28.640 8326-8399/io.ionic.starter W/VideoCapabilities: Unsupported mime video/x-ms-wmv
06-17 14:20:28.644 8326-8399/io.ionic.starter W/VideoCapabilities: Unsupported mime video/x-ms-wmv
06-17 14:20:28.657 8326-8326/io.ionic.starter D/CordovaWebViewImpl: onPageDidNavigate(file:///android_asset/www/index.html)
06-17 14:20:28.675 8326-8399/io.ionic.starter W/AudioCapabilities: Unsupported mime audio/dsd
06-17 14:20:28.679 8326-8399/io.ionic.starter W/AudioCapabilities: Unsupported mime audio/dts
06-17 14:20:28.686 8326-8399/io.ionic.starter W/AudioCapabilities: Unsupported mime audio/32KADPCM
06-17 14:20:28.690 8326-8399/io.ionic.starter W/AudioCapabilities: Unsupported mime audio/x-ape
06-17 14:20:28.695 8326-8399/io.ionic.starter W/VideoCapabilities: Unsupported mime video/mp4v-esdp
06-17 14:20:28.726 8326-8399/io.ionic.starter I/VideoCapabilities: Unsupported profile 4 for video/mp4v-es
06-17 14:20:28.784 8326-8326/io.ionic.starter W/cr_BindingManager: Cannot call determinedVisibility() - never saw a connection for the pid: 8326
06-17 14:20:29.656 8326-8326/io.ionic.starter D/SystemWebChromeClient: file:///android_asset/www/cordova.js: Line 1280 : DOMContentLoaded 123232
06-17 14:20:29.656 8326-8326/io.ionic.starter I/chromium: [INFO:CONSOLE(1280)] "DOMContentLoaded 123232", source: file:///android_asset/www/cordova.js (1280)
06-17 14:20:29.672 8326-8326/io.ionic.starter D/JsMessageQueue: Set native->JS mode to EvalBridgeMode
06-17 14:20:29.680 8326-8326/io.ionic.starter D/SystemWebChromeClient: file:///android_asset/www/cordova.js: Line 1338 : 數(shù)組1111132323:[

{"type":"onNativeReady","handlers":{},"state":2,"fireArgs":[],"numHandlers":0,"onHasSubscribersChange":null},
{"type":"onPluginsReady","handlers":{},"state":1,"fireArgs":null,"numHandlers":1,"onHasSubscribersChange":null}]

06-17 14:20:29.680 8326-8326/io.ionic.starter I/chromium: [INFO:CONSOLE(1338)] "數(shù)組1111132323:[
{"type":"onNativeReady","handlers":{},"state":2,"fireArgs":[],"numHandlers":0,"onHasSubscribersChange":null},
{"type":"onPluginsReady","handlers":{},"state":1,"fireArgs":null,"numHandlers":1,"onHasSubscribersChange":null}]", source: file:///android_asset/www/cordova.js (1338)

06-17 14:20:30.403 8326-8326/io.ionic.starter W/cr_BindingManager: Cannot call determinedVisibility() - never saw a connection for the pid: 8326
06-17 14:20:30.419 8326-8326/io.ionic.starter D/CordovaWebViewImpl: onPageFinished(file:///android_asset/www/index.html#/tab/dash)
06-17 14:20:30.445 8326-8326/io.ionic.starter D/SystemWebChromeClient: file:///android_asset/www/cordova.js: Line 1282 : DOMContentLoaded 222222
06-17 14:20:30.445 8326-8326/io.ionic.starter I/chromium: [INFO:CONSOLE(1282)] "DOMContentLoaded 222222", source: file:///android_asset/www/cordova.js (1282)
06-17 14:20:31.251 8326-8326/io.ionic.starter D/SystemWebChromeClient: file:///android_asset/www/cordova.js: Line 1305 : pluginloader.load
06-17 14:20:31.252 8326-8326/io.ionic.starter I/chromium: [INFO:CONSOLE(1305)] "pluginloader.load", source: file:///android_asset/www/cordova.js (1305)
06-17 14:20:31.253 8326-8326/io.ionic.starter D/SystemWebChromeClient: file:///android_asset/www/cordova.js: Line 1314 : 111111111111
06-17 14:20:31.253 8326-8326/io.ionic.starter I/chromium: [INFO:CONSOLE(1314)] "111111111111", source: file:///android_asset/www/cordova.js (1314)
06-17 14:20:31.254 8326-8326/io.ionic.starter D/SystemWebChromeClient: file:///android_asset/www/cordova.js: Line 1318 : 2222222
06-17 14:20:31.255 8326-8326/io.ionic.starter I/chromium: [INFO:CONSOLE(1318)] "2222222", source: file:///android_asset/www/cordova.js (1318)
06-17 14:20:31.256 8326-8326/io.ionic.starter D/SystemWebChromeClient: file:///android_asset/www/cordova.js: Line 1730 : channel.onCordovaReady.subscribe
06-17 14:20:31.256 8326-8326/io.ionic.starter I/chromium: [INFO:CONSOLE(1730)] "channel.onCordovaReady.subscribe", source: file:///android_asset/www/cordova.js (1730)
06-17 14:20:31.274 8326-8326/io.ionic.starter D/SystemWebChromeClient: file:///android_asset/www/cordova.js: Line 1322 : 22233333
06-17 14:20:31.274 8326-8326/io.ionic.starter I/chromium: [INFO:CONSOLE(1322)] "22233333", source: file:///android_asset/www/cordova.js (1322)
06-17 14:20:31.276 8326-8326/io.ionic.starter D/SystemWebChromeClient: file:///android_asset/www/cordova.js: Line 1324 : 數(shù)組:[

{"type":"onCordovaReady","handlers":{},"state":2,"fireArgs":[],"numHandlers":0,"onHasSubscribersChange":null},
{"type":"onDOMContentLoaded","handlers":{},"state":2,"fireArgs":[],"numHandlers":0,"onHasSubscribersChange":null},
{"type":"onCordovaInfoReady","handlers":{},"state":1,"fireArgs":null,"numHandlers":0,"onHasSubscribersChange":null}]

06-17 14:20:31.276 8326-8326/io.ionic.starter I/chromium: [INFO:CONSOLE(1324)] "數(shù)組:[

{"type":"onCordovaReady","handlers":{},"state":2,"fireArgs":[],"numHandlers":0,"onHasSubscribersChange":null},
{"type":"onDOMContentLoaded","handlers":{},"state":2,"fireArgs":[],"numHandlers":0,"onHasSubscribersChange":null},
{"type":"onCordovaInfoReady","handlers":{},"state":1,"fireArgs":null,"numHandlers":0,"onHasSubscribersChange":null}]", source: file:///android_asset/www/cordova.js (1324)

06-17 14:20:31.281 8326-8326/io.ionic.starter D/SystemWebChromeClient: file:///android_asset/www/cordova.js: Line 1330 : 44444444
06-17 14:20:31.281 8326-8326/io.ionic.starter I/chromium: [INFO:CONSOLE(1330)] "44444444", source: file:///android_asset/www/cordova.js (1330)
06-17 14:20:31.284 8326-8326/io.ionic.starter D/SystemWebChromeClient: file:///android_asset/www/cordova.js: Line 1333 : 數(shù)組1111:[

{"type":"onCordovaReady","handlers":{},"state":2,"fireArgs":[],"numHandlers":0,"onHasSubscribersChange":null},
{"type":"onDOMContentLoaded","handlers":{},"state":2,"fireArgs":[],"numHandlers":0,"onHasSubscribersChange":null},
{"type":"onCordovaInfoReady","handlers":{},"state":2,"fireArgs":[],"numHandlers":1,"onHasSubscribersChange":null}]

06-17 14:20:31.285 8326-8326/io.ionic.starter I/chromium: [INFO:CONSOLE(1333)] "數(shù)組1111:[

{"type":"onCordovaReady","handlers":{},"state":2,"fireArgs":[],"numHandlers":0,"onHasSubscribersChange":null},
{"type":"onDOMContentLoaded","handlers":{},"state":2,"fireArgs":[],"numHandlers":0,"onHasSubscribersChange":null},
{"type":"onCordovaInfoReady","handlers":{},"state":2,"fireArgs":[],"numHandlers":1,"onHasSubscribersChange":null}]", source: file:///android_asset/www/cordova.js (1333)

06-17 14:20:31.306 8326-8464/io.ionic.starter I/App: WARNING: Back Button Default Behavior will be overridden.  The backbutton event will be fired!

5.2 ionic3測試日志

06-17 14:14:25.647 2827-2827/? I/art: Late-enabling -Xcheck:jni
06-17 14:14:25.658 2827-2827/? D/TidaProvider: TidaProvider()
06-17 14:14:25.673 2827-2827/? V/BoostFramework: mAcquireFunc method = public int com.qualcomm.qti.Performance.perfLockAcquire(int,int[])
06-17 14:14:25.674 2827-2827/? V/BoostFramework: mReleaseFunc method = public int com.qualcomm.qti.Performance.perfLockRelease()
06-17 14:14:25.674 2827-2827/? V/BoostFramework: mAcquireTouchFunc method = public int com.qualcomm.qti.Performance.perfLockAcquireTouch(android.view.MotionEvent,android.util.DisplayMetrics,int,int[])
06-17 14:14:25.674 2827-2827/? V/BoostFramework: mIOPStart method = public int com.qualcomm.qti.Performance.perfIOPrefetchStart(int,java.lang.String)
06-17 14:14:25.674 2827-2827/? V/BoostFramework: mIOPStop method = public int com.qualcomm.qti.Performance.perfIOPrefetchStop()
06-17 14:14:25.685 2827-2827/? V/BoostFramework: BoostFramework() : mPerf = com.qualcomm.qti.Performance@8e6d76d
06-17 14:14:25.742 2827-2827/io.ionic.starter W/System: ClassLoader referenced unknown path: /data/app/io.ionic.starter-2/lib/arm64
06-17 14:14:25.811 2827-2827/io.ionic.starter I/CordovaLog: Changing log level to DEBUG(3)
06-17 14:14:25.811 2827-2827/io.ionic.starter I/CordovaActivity: Apache Cordova native platform version 6.2.3 is starting
06-17 14:14:25.812 2827-2827/io.ionic.starter D/CordovaActivity: CordovaActivity.onCreate()
06-17 14:14:25.838 2827-2827/io.ionic.starter W/System: ClassLoader referenced unknown path: /system/app/WebViewGoogle/lib/arm64
06-17 14:14:25.846 2827-2827/io.ionic.starter I/WebViewFactory: Loading com.google.android.webview version 55.0.2883.91 (code 288309150)
06-17 14:14:25.890 2827-2827/io.ionic.starter I/cr_LibraryLoader: Time to load native libraries: 3 ms (timestamps 7825-7828)
06-17 14:14:25.891 2827-2827/io.ionic.starter I/cr_LibraryLoader: Expected native library version number "55.0.2883.91", actual native library version number "55.0.2883.91"
06-17 14:14:25.911 2827-2827/io.ionic.starter I/cr_LibraryLoader: Expected native library version number "55.0.2883.91", actual native library version number "55.0.2883.91"
06-17 14:14:25.912 2827-2827/io.ionic.starter I/chromium: [INFO:library_loader_hooks.cc(163)] Chromium logging enabled: level = 0, default verbosity = 0
06-17 14:14:25.924 2827-2827/io.ionic.starter I/cr_BrowserStartup: Initializing chromium process, singleProcess=true
06-17 14:14:25.948 2827-2827/io.ionic.starter I/Adreno: QUALCOMM build                   : 065a07a, I3a33bf62a4
                                                        Build Date                       : 12/06/16
                                                        OpenGL ES Shader Compiler Version: XE031.09.00.03
                                                        Local Branch                     : mybranch23838236
                                                        Remote Branch                    : quic/LA.BF64.1.2.3_rb1.7
                                                        Remote Branch                    : NONE
                                                        Reconstruct Branch               : NOTHING
06-17 14:14:26.050 2827-2827/io.ionic.starter D/EgretLoader: EgretLoader(Context context)
06-17 14:14:26.052 2827-2827/io.ionic.starter D/EgretLoader: The context is not activity
06-17 14:14:26.069 2827-2827/io.ionic.starter D/SystemWebViewEngine: CordovaWebView is running on device made by: Xiaomi
06-17 14:14:26.080 2827-2827/io.ionic.starter D/PluginManager: init()
06-17 14:14:26.090 2827-2827/io.ionic.starter D/CordovaWebViewImpl: >>> loadUrl(file:///android_asset/www/index.html)
06-17 14:14:26.097 2827-2827/io.ionic.starter I/cr_Ime: ImeThread is enabled.
06-17 14:14:26.107 2827-2872/io.ionic.starter W/cr_media: Requires BLUETOOTH permission
06-17 14:14:26.121 2827-2827/io.ionic.starter D/CordovaActivity: Started the activity.
06-17 14:14:26.127 2827-2827/io.ionic.starter D/CordovaActivity: Resumed the activity.
06-17 14:14:26.148 2827-2827/io.ionic.starter D/ActivityThreadInjector: clearCachedDrawables.
06-17 14:14:26.152 2827-2889/io.ionic.starter E/libEGL: validate_display:99 error 3008 (EGL_BAD_DISPLAY)
06-17 14:14:26.186 2827-2888/io.ionic.starter I/OpenGLRenderer: Initialized EGL, version 1.4
06-17 14:14:26.187 2827-2888/io.ionic.starter D/OpenGLRenderer: Swap behavior 1
06-17 14:14:26.195 2827-2827/io.ionic.starter E/chromium: [ERROR:interface_registry.cc(104)] Failed to locate a binder for interface: autofill::mojom::PasswordManagerDriver
06-17 14:14:26.202 2827-2889/io.ionic.starter W/VideoCapabilities: Unrecognized profile 2130706433 for video/avc
06-17 14:14:26.219 2827-2827/io.ionic.starter D/CordovaWebViewImpl: onPageDidNavigate(file:///android_asset/www/index.html)
06-17 14:14:26.230 2827-2889/io.ionic.starter W/VideoCapabilities: Unrecognized profile/level 0/3 for video/mpeg2
06-17 14:14:26.237 2827-2889/io.ionic.starter W/VideoCapabilities: Unrecognized profile/level 0/3 for video/mpeg2
06-17 14:14:26.247 2827-2889/io.ionic.starter W/VideoCapabilities: Unsupported mime video/x-ms-wmv
06-17 14:14:26.251 2827-2889/io.ionic.starter W/VideoCapabilities: Unsupported mime video/x-ms-wmv
06-17 14:14:26.265 2827-2889/io.ionic.starter W/AudioCapabilities: Unsupported mime audio/dsd
06-17 14:14:26.270 2827-2889/io.ionic.starter W/AudioCapabilities: Unsupported mime audio/dts
06-17 14:14:26.272 2827-2889/io.ionic.starter W/AudioCapabilities: Unsupported mime audio/32KADPCM
06-17 14:14:26.273 2827-2889/io.ionic.starter W/AudioCapabilities: Unsupported mime audio/x-ape
06-17 14:14:26.277 2827-2889/io.ionic.starter W/VideoCapabilities: Unsupported mime video/mp4v-esdp
06-17 14:14:26.307 2827-2889/io.ionic.starter I/VideoCapabilities: Unsupported profile 4 for video/mp4v-es
06-17 14:14:26.352 2827-2827/io.ionic.starter W/cr_BindingManager: Cannot call determinedVisibility() - never saw a connection for the pid: 2827
06-17 14:14:26.461 2827-2827/io.ionic.starter D/SystemWebChromeClient: file:///android_asset/www/cordova.js: Line 1280 : DOMContentLoaded 123232
06-17 14:14:26.461 2827-2827/io.ionic.starter I/chromium: [INFO:CONSOLE(1280)] "DOMContentLoaded 123232", source: file:///android_asset/www/cordova.js (1280)
06-17 14:14:26.481 2827-2827/io.ionic.starter D/JsMessageQueue: Set native->JS mode to EvalBridgeMode
06-17 14:14:26.491 2827-2827/io.ionic.starter D/SystemWebChromeClient: file:///android_asset/www/cordova.js: Line 1338 : 數(shù)組1111132323:[

{"type":"onNativeReady","handlers":{},"state":2,"fireArgs":[],"numHandlers":0,"onHasSubscribersChange":null},
{"type":"onPluginsReady","handlers":{},"state":1,"fireArgs":null,"numHandlers":1,"onHasSubscribersChange":null}]

06-17 14:14:26.491 2827-2827/io.ionic.starter I/chromium: [INFO:CONSOLE(1338)] "數(shù)組1111132323:[

{"type":"onNativeReady","handlers":{},"state":2,"fireArgs":[],"numHandlers":0,"onHasSubscribersChange":null},
{"type":"onPluginsReady","handlers":{},"state":1,"fireArgs":null,"numHandlers":1,"onHasSubscribersChange":null}]", 

source: file:///android_asset/www/cordova.js (1338)
06-17 14:14:27.256 2827-2827/io.ionic.starter D/SystemWebChromeClient: file:///android_asset/www/cordova.js: Line 1305 : pluginloader.load
06-17 14:14:27.256 2827-2827/io.ionic.starter I/chromium: [INFO:CONSOLE(1305)] "pluginloader.load", source: file:///android_asset/www/cordova.js (1305)
06-17 14:14:27.257 2827-2827/io.ionic.starter D/SystemWebChromeClient: file:///android_asset/www/cordova.js: Line 1314 : 111111111111
06-17 14:14:27.257 2827-2827/io.ionic.starter I/chromium: [INFO:CONSOLE(1314)] "111111111111", source: file:///android_asset/www/cordova.js (1314)
06-17 14:14:27.271 2827-2827/io.ionic.starter D/SystemWebChromeClient: file:///android_asset/www/cordova.js: Line 1318 : 2222222
06-17 14:14:27.271 2827-2827/io.ionic.starter I/chromium: [INFO:CONSOLE(1318)] "2222222", source: file:///android_asset/www/cordova.js (1318)
06-17 14:14:27.271 2827-2827/io.ionic.starter D/SystemWebChromeClient: file:///android_asset/www/cordova.js: Line 1730 : channel.onCordovaReady.subscribe
06-17 14:14:27.272 2827-2827/io.ionic.starter I/chromium: [INFO:CONSOLE(1730)] "channel.onCordovaReady.subscribe", source: file:///android_asset/www/cordova.js (1730)
06-17 14:14:27.296 2827-2827/io.ionic.starter D/SystemWebChromeClient: file:///android_asset/www/cordova.js: Line 1322 : 22233333
06-17 14:14:27.296 2827-2827/io.ionic.starter I/chromium: [INFO:CONSOLE(1322)] "22233333", source: file:///android_asset/www/cordova.js (1322)
06-17 14:14:27.298 2827-2827/io.ionic.starter D/SystemWebChromeClient: file:///android_asset/www/cordova.js: Line 1324 : 數(shù)組:[
{"type":"onCordovaReady","handlers":{},"state":2,"fireArgs":[],"numHandlers":0,"onHasSubscribersChange":null},
{"type":"onDOMContentLoaded","handlers":{},"state":1,"fireArgs":null,"numHandlers":0,"onHasSubscribersChange":null},
{"type":"onCordovaInfoReady","handlers":{},"state":1,"fireArgs":null,"numHandlers":0,"onHasSubscribersChange":null}]

06-17 14:14:27.298 2827-2827/io.ionic.starter I/chromium: [INFO:CONSOLE(1324)] "數(shù)組:[
{"type":"onCordovaReady","handlers":{},"state":2,"fireArgs":[],"numHandlers":0,"onHasSubscribersChange":null},
{"type":"onDOMContentLoaded","handlers":{},"state":1,"fireArgs":null,"numHandlers":0,"onHasSubscribersChange":null},
{"type":"onCordovaInfoReady","handlers":{},"state":1,"fireArgs":null,"numHandlers":0,"onHasSubscribersChange":null}]", source: file:///android_asset/www/cordova.js (1324)



06-17 14:14:34.293 2827-2827/io.ionic.starter D/SystemWebChromeClient: file:///android_asset/www/build/main.js: Line 3303 : Angular is running in the development mode. Call enableProdMode() to enable the production mode.
06-17 14:14:34.293 2827-2827/io.ionic.starter I/chromium: [INFO:CONSOLE(3303)] "Angular is running in the development mode. Call enableProdMode() to enable the production mode.", source: file:///android_asset/www/build/main.js (3303)
06-17 14:14:34.566 2827-2827/io.ionic.starter D/SystemWebChromeClient: file:///android_asset/www/cordova.js: Line 1282 : DOMContentLoaded 222222
06-17 14:14:34.567 2827-2827/io.ionic.starter I/chromium: [INFO:CONSOLE(1282)] "DOMContentLoaded 222222", source: file:///android_asset/www/cordova.js (1282)
06-17 14:14:34.567 2827-2827/io.ionic.starter D/SystemWebChromeClient: file:///android_asset/www/cordova.js: Line 1330 : 44444444
06-17 14:14:34.568 2827-2827/io.ionic.starter I/chromium: [INFO:CONSOLE(1330)] "44444444", source: file:///android_asset/www/cordova.js (1330)
06-17 14:14:34.568 2827-2827/io.ionic.starter D/SystemWebChromeClient: file:///android_asset/www/cordova.js: Line 1333 : 數(shù)組1111:[

{"type":"onCordovaReady","handlers":{},"state":2,"fireArgs":[],"numHandlers":0,"onHasSubscribersChange":null},
{"type":"onDOMContentLoaded","handlers":{},"state":2,"fireArgs":[],"numHandlers":1,"onHasSubscribersChange":null},
{"type":"onCordovaInfoReady","handlers":{},"state":2,"fireArgs":[],"numHandlers":0,"onHasSubscribersChange":null}]

06-17 14:14:34.568 2827-2827/io.ionic.starter I/chromium: [INFO:CONSOLE(1333)] "數(shù)組1111:[

{"type":"onCordovaReady","handlers":{},"state":2,"fireArgs":[],"numHandlers":0,"onHasSubscribersChange":null},
{"type":"onDOMContentLoaded","handlers":{},"state":2,"fireArgs":[],"numHandlers":1,"onHasSubscribersChange":null},
{"type":"onCordovaInfoReady","handlers":{},"state":2,"fireArgs":[],"numHandlers":0,"onHasSubscribersChange":null}]", source: file:///android_asset/www/cordova.js (1333)

06-17 14:14:34.674 2827-2827/io.ionic.starter D/SystemWebChromeClient: file:///android_asset/www/cordova.js: Line 1223 : deviceready has not fired after 5 seconds.
06-17 14:14:34.675 2827-2827/io.ionic.starter I/chromium: [INFO:CONSOLE(1223)] "deviceready has not fired after 5 seconds.", source: file:///android_asset/www/cordova.js (1223)
06-17 14:14:34.676 2827-2827/io.ionic.starter D/SystemWebChromeClient: file:///android_asset/www/build/main.js: Line 101210 : Ionic Native: deviceready did not fire within 5000ms. This can happen when plugins are in an inconsistent state. Try removing plugins from plugins/ and reinstalling them.
06-17 14:14:34.676 2827-2827/io.ionic.starter I/chromium: [INFO:CONSOLE(101210)] "Ionic Native: deviceready did not fire within 5000ms. This can happen when plugins are in an inconsistent state. Try removing plugins from plugins/ and reinstalling them.", source: file:///android_asset/www/build/main.js (101210)
06-17 14:14:34.676 2827-2827/io.ionic.starter D/SystemWebChromeClient: file:///android_asset/www/build/main.js: Line 101205 : Ionic Native: deviceready event fired after 6041 ms
06-17 14:14:34.677 2827-2827/io.ionic.starter I/chromium: [INFO:CONSOLE(101205)] "Ionic Native: deviceready event fired after 6041 ms", source: file:///android_asset/www/build/main.js (101205)
06-17 14:14:34.685 2827-2915/io.ionic.starter I/App: WARNING: Back Button Default Behavior will be overridden.  The backbutton event will be fired!
06-17 14:14:34.689 2827-2827/io.ionic.starter D/SystemWebChromeClient: file:///android_asset/www/build/main.js: Line 74558 : aaaaaa
06-17 14:14:34.689 2827-2827/io.ionic.starter I/chromium: [INFO:CONSOLE(74558)] "aaaaaa", source: file:///android_asset/www/build/main.js (74558)
06-17 14:14:34.755 2827-2827/io.ionic.starter D/CordovaWebViewImpl: onPageFinished(file:///android_asset/www/index.html)
最后編輯于
?著作權(quán)歸作者所有,轉(zhuǎn)載或內(nèi)容合作請聯(lián)系作者
【社區(qū)內(nèi)容提示】社區(qū)部分內(nèi)容疑似由AI輔助生成,瀏覽時請結(jié)合常識與多方信息審慎甄別。
平臺聲明:文章內(nèi)容(如有圖片或視頻亦包括在內(nèi))由作者上傳并發(fā)布,文章內(nèi)容僅代表作者本人觀點(diǎn),簡書系信息發(fā)布平臺,僅提供信息存儲服務(wù)。

相關(guān)閱讀更多精彩內(nèi)容

友情鏈接更多精彩內(nèi)容