How to get EMDK version of an Android device programmatically?
Since this question is not asked on Stackoverflow, I decided to ask and answer own question to make it easily findable later when needed.
There are 2 ways to get EMDK version programmatically.
Using Android package manager:
public String getEMDKVersion() throws PackageManager.NameNotFoundException {
String emdkPackage = "com.symbol.emdk.emdkservice";
PackageInfo pInfo = getPackageManager().getPackageInfo(emdkPackage, 0);
String emdkVersion = pInfo.versionName;
return emdkVersion
}
Using EMDK version manager:
public String getEMDKVersion(EMDKManager emdkManager)
{
VersionManager versionManager = (VersionManager) emdkManager.getInstance(FEATURE_TYPE.VERSION);
String emdkVersion = versionManager.getVersion(VersionManager.VERSION_TYPE.EMDK);
return emdkVersion;
}