本文概述
尽管通常用户不会对应用程序的版本, 奇怪的软件包名称以及在构建设置中可以找到的其他信息感兴趣, 但对于像你这样真正关心它的极客, 它可能很有用。
如果你在混合应用程序中需要此信息, 那么今天就是你的幸运日, 因为有人已经编写了一个为你实现本机代码的插件。
1.安装cordova-plugin-app-version
cordova插件应用程序版本从目标构建设置中读取应用程序的版本。你可以通过使用终端切换到项目目录并运行以下cordova命令来安装此插件:
cordova plugin add cordova-plugin-app-version
安装后, 你将可以访问窗口中cordova全局对象中的getAppVersion对象。该对象公开插件的方法。这个插件是由@Whiteoctober的家伙编写的, 适用于iOS和Android。有关此插件的更多信息, 请访问Github上的官方存储库。
2.使用插件
该插件可让你根据工作方式以两种方式检索信息。在Cordova中, 由于显而易见的原因, 大多数JS代码都是异步的, 因此该插件不仅实现了回调, 而且还实现了Promises, 因此, 如果你不知道JavaScript中的Promises是什么, 请首先阅读本文。
带回调
典型过程将回调与其他任何插件一起使用:
1.获取应用名称
cordova.getAppVersion.getAppName(function(name){
// My App Name
console.log("App Name", name);
});
2.获取程序包名称
cordova.getAppVersion.getPackageName(function(pkgname){
// com.companyname.appname
console.log("Package Name", pkgname);
});
3.获取版本代码
cordova.getAppVersion.getVersionCode(function(version){
// 10000
console.log("version code", version);
});
4.获取版本号
cordova.getAppVersion.getVersionNumber(function(versionNumber){
// 1.0.0
console.log("version number", versionNumber);
});
使用Promises界面
该插件使用Promise(如果可用)来返回值, 因此你可以添加Promise polyfill来添加对此功能的支持:
1.获取应用名称
cordova.getAppVersion.getAppName().then(function(name){
// My App Name
console.log("App Name", name);
});
2.获取程序包名称
cordova.getAppVersion.getPackageName().then(function(pkgname){
// com.companyname.appname
console.log("Package Name", pkgname);
});
3.获取版本代码
cordova.getAppVersion.getVersionCode().then(function(version){
// 10000
console.log("version code", version);
});
4.获取版本号
cordova.getAppVersion.getVersionNumber().then(function(versionNumber){
// 1.0.0
console.log("version number", versionNumber);
});
编码愉快!