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);
我正在使用下一个插件获取信息:
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);