diff --git a/lib/private/installer.php b/lib/private/installer.php
index d7b207c6aadef56eed4c47a6d5c2d127c88f1f0a..91a1df7e3c490c87f33fe16773c6d6bf324140b1 100644
--- a/lib/private/installer.php
+++ b/lib/private/installer.php
@@ -147,11 +147,18 @@ class OC_Installer{
 		}
 
 		// check if the ocs version is the same as the version in info.xml/version
-		if(!isset($info['version']) or ($info['version']<>$data['appdata']['version'])) {
+		$versionFile= $extractDir.'/appinfo/version';
+		if(is_file($versionFile)) {
+			$version = trim(file_get_contents($versionFile));
+		}else{
+			$version = trim($info['version']);
+		}
+		
+		if($version<>trim($data['appdata']['version'])) {
 			OC_Helper::rmdirr($extractDir);
 			throw new \Exception($l->t("App can't be installed because the version in info.xml/version is not the same as the version reported from the app store"));
 		}
-
+		
 		$basedir=OC_App::getInstallPath().'/'.$info['id'];
 		//check if the destination directory already exists
 		if(is_dir($basedir)) {