Phonegap - 获取应用程序信息

Phonegap - getting app information

我正在使用下一个插件获取信息:

https://github.com/whiteoctober/cordova-plugin-app-version

使用下一个代码:

var app_information = {};       

    cordova.getAppVersion.getAppName(function (app_name) {          
        app_information["app_name"] = app_name;
    });

    cordova.getAppVersion.getPackageName(function (app_package_name) {          
        app_information["app_package_name"] = app_package_name;
    });

    cordova.getAppVersion.getVersionCode(function (app_build_identifier) {          
        app_information["app_build_identifier"] = app_build_identifier;
    });

    cordova.getAppVersion.getVersionNumber(function (app_version) {         
        app_information["app_version"] = app_version;
    });

    alert(app_information["app_version"]); // getting undefind 

问题是当我在插件函数中使用警报时,我得到的结果例如:

cordova.getAppVersion.getVersionNumber(function (app_version) {         
    alert(app_version);
});

但是当我尝试提醒最终变量时 "app_information" 我得到空变量(数组中没有值)

你太早警醒了。大多数 cordova/PhoneGap 插件都是异步的,因此您的函数的函数回调可能会在几秒钟后返回。

尝试研究像 Promise 这样的东西来帮助解决异步回调地狱:)

您正在尝试访问范围外的数据,这就是您无法提醒它的原因。只需声明一个全局变量并将数据分配给它,以便您可以在任何地方使用它。

var app_info = ''; 

cordova.getAppVersion.getVersionNumber(function (app_version) {         
        app_info = app_version;
    });

alert(app_info);