加载应用程序时的离子调用功能

Posted

技术标签:

【中文标题】加载应用程序时的离子调用功能【英文标题】:Ionic call function when app is loaded 【发布时间】:2017-03-14 18:32:35 【问题描述】:

我想在每次加载应用程序时检查设备是否有互联网连接。此功能与我的任何 Ionic 视图/页面无关。我不需要在特定页面上进行此检查。每次应用实际加载到屏幕上时,我都需要它运行。

例如,如果我从主屏幕点击应用程序图标并加载它,检查功能应该会运行。然后我决定打开我的电子邮件来检查一些东西。最后,我只是重新打开在后台运行的应用程序(未终止),该应用程序应再次检查互联网连接。

我不是在问我将如何编写要检查的函数,而是我应该将这段代码放置在哪里,以便仅在应用加载时才运行,而不管应用的视图/页面如何。

【问题讨论】:

【参考方案1】:

对于第一次检查,当您启动应用程序时,将检查代码添加到 $ionicPlatform.ready 方法(app.js 文件)中。

对于从其他活动返回应用程序时的检查,请在 .run 方法(app.js 文件)中创建 $ionicPlatform.on 方法。

类似这样的东西(在 app.js 文件中):

angular.module('starter', ['ionic', 'starter.controllers', 'starter.services'])

.run(function($ionicPlatform) 

  $ionicPlatform.ready(function() 
    // Hide the accessory bar by default (remove this to show the accessory bar above the keyboard
    // for form inputs)

    // PUT YOUR CHECK CODE HERE, TRIGGERED WHEN THE APP RUN FOR THE FIRST TIME

    if (window.cordova && window.cordova.plugins && window.cordova.plugins.Keyboard) 
      cordova.plugins.Keyboard.hideKeyboardAccessoryBar(true);
      cordova.plugins.Keyboard.disableScroll(true);

    
    if (window.StatusBar) 
      // org.apache.cordova.statusbar required
      StatusBar.styleDefault();
    
  );

  $ionicPlatform.on('resume', function() 
   // PUT YOUR CHECK CODE HERE TOO. TRIGGERED WHEN YOU RETURN TO APP FROM OTHER ACTIVITY.
  );
)

【讨论】:

谢谢 mQuixaba 我会试一试,我会尽快通知您。不过,您的想法似乎很好。

以上是关于加载应用程序时的离子调用功能的主要内容,如果未能解决你的问题,请参考以下文章

页面加载时调用的离子无限滚动功能

离子3 NGRX - 状态变化的订阅功能在单个状态变化时多次调用

使用带有离子和电容器的 https 加载 webview

当模板完全加载角度/离子时,方法会自动调用吗?

应用关闭前的离子运行功能

从 XCode 构建时的离子电容器(角)空白页 ios