chiark / gitweb /
Add basic support for min/max sdk on the web repo
authorDaniel Martí <mvdan@mvdan.cc>
Tue, 4 Mar 2014 08:22:16 +0000 (09:22 +0100)
committerDaniel Martí <mvdan@mvdan.cc>
Tue, 4 Mar 2014 08:22:16 +0000 (09:22 +0100)
wp-fdroid/wp-fdroid.php

index 138ba00394893bca09374403706517c4715cbb14..58344eabc4f71465577e286dfc5733cc37da4166 100644 (file)
@@ -161,6 +161,31 @@ class FDroid
                        return null;
                }
        }
+       function androidversion($sdkLevel) {
+               if ($sdkLevel < 1) return null;
+               switch ($sdkLevel) {
+                       case 19: return "4.4";
+                       case 18: return "4.3";
+                       case 17: return "4.2";
+                       case 16: return "4.1";
+                       case 15: return "4.0.3";
+                       case 14: return "4.0";
+                       case 13: return "3.2";
+                       case 12: return "3.1";
+                       case 11: return "3.0";
+                       case 10: return "2.3.3";
+                       case 9: return "2.3";
+                       case 8: return "2.2";
+                       case 7: return "2.1";
+                       case 6: return "2.0.1";
+                       case 5: return "2.0";
+                       case 4: return "1.6";
+                       case 3: return "1.5";
+                       case 2: return "1.1";
+                       case 1: return "1.0";
+                       default: return "?";
+               }
+       }
 
        function get_app($query_vars) {
                global $permissions_data;
@@ -342,6 +367,16 @@ class FDroid
                                        $out.="<p><b>Version ".$apk['version']."</b>";
                                        $out.=" - Added on ".$apk['added']."<br />";
 
+                                       $hasminsdk = isset($apk['sdkver']);
+                                       $hasmaxsdk = isset($apk['maxsdkver']);
+                                       if($hasminsdk && $hasmaxsdk) {
+                                               $out.="<p>This app requires Android ".androidversion($apk['sdkver'])." up to ".androidversion($apk['maxsdkver'])."</p>";
+                                       } elseif($hasminsdk) {
+                                               $out.="<p>This app requires Android ".androidversion($apk['sdkver'])."</p>";
+                                       } elseif($hasmaxsdk) {
+                                               $out.="<p>This app requires Android up to ".androidversion($apk['maxsdkver'])."</p>";
+                                       }
+
                                        $hasabis = isset($apk['nativecode']);
                                        if($hasabis) {
                                                $abis = str_replace(',', ' ', $apk['nativecode']);