算术运算,在AngularJS控制器内部调用的Cordova插件中分配延迟

时间:2018-12-17 11:54:32

标签: android angularjs cordova cordova-plugins

我正在构建一个angularJS应用,其中将使用 Cordova.AppAvailability 插件来检查用户设备中是否安装了android软件包。

检查正常,插件调用正常。除非有一个非常奇怪的问题,否则几乎所有东西都可以正常工作。

在解决该问题之前,我将编写代码以更好地理解。

$scope.twitterInstalled = false;   

appAvailability.check(
    'com.twitter.android', // Package Name
    function() {           // Success callback
        $scope.twitterInstalled = true;        
        console.log('Twitter is available');
    },
    function() {           // Error callback
        console.log('Twitter is not available');
    }
);

这是我正在使用的插件。 我的问题是,

  • 模板中的$scope.twitterInstalled值需要大约5-6秒钟的时间才能从false更新为true(这很奇怪。为什么?因为,当我重新运行应用程序并检查控制台,日志记录在页面加载期间立即发生,但是$scope.twitterInstalled的值没有立即更新。)

  • 我推断,success callback内部的任何函数调用都会立即发生,但是赋值或算术运算需要花费一些时间来进行处理和更新。

我检查了浏览所有可能的资源,但问题似乎很奇怪。需要一些协助来解决这个问题。

非常感谢!

0 个答案:

没有答案