Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Added a new column showing the last security patch levels of each Android version #22

Open
wants to merge 2 commits into
base: main
Choose a base branch
from
Open
Show file tree
Hide file tree
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
20 changes: 14 additions & 6 deletions css/main.scss
Original file line number Diff line number Diff line change
Expand Up @@ -69,11 +69,15 @@ table {
}

td.green {
background-color: #8efa93;
background-color: #60ECAD;
}

td.light-green {
background-color: #e7fae8;
td.yellow {
background-color: #e7ec60;
}

td.red {
background-color: #ec6069;
}
}

Expand Down Expand Up @@ -240,11 +244,15 @@ pre {

table {
td.green {
background-color: #0d8321;
background-color: #006236;
}

td.yellow {
background-color: #b6b900;
}

td.light-green {
background-color: #0d4d14;
td.red {
background-color: #7e0d1b;
}
}

Expand Down
42 changes: 29 additions & 13 deletions index.md
Original file line number Diff line number Diff line change
Expand Up @@ -21,6 +21,10 @@ This is an overview of all Android versions and their corresponding identifiers
<sup id="fnref:1"><a href="#fn:1" class="footnote">1</a></sup>
</th>
<th>Year</th>
<th>
Last<br>security<br><span class="text-nowrap">update
<sup id="fnref:2"><a href="#fn:2" class="footnote">2</a></sup></span>
</th>
</tr>
<tr>
<td>
Expand All @@ -31,10 +35,11 @@ This is an overview of all Android versions and their corresponding identifiers
<td><code>T</code></td>
<td>
Tiramisu
<sup id="fnref:2"><a href="#fn:2" class="footnote">2</a></sup>
<sup id="fnref:3"><a href="#fn:3" class="footnote">3</a></sup>
</td>
<td rowspan="2"><i>No data</i></td>
<td rowspan="2"><i>TBA</i></td>
<td rowspan="7" class="green">2022-05</td>
Copy link
Contributor

@TWiStErRob TWiStErRob Jun 3, 2022

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

What extra info can I deduce from this?

I think this would be misleading to base any decisions on. I have a Google device, Android 11, and my security patch is 2020-10 with no updates.

</tr>
<tr>
<td rowspan="3">
Expand All @@ -47,7 +52,7 @@ This is an overview of all Android versions and their corresponding identifiers
<td><code>S_V2</code></td>
<td rowspan="2">
Snow Cone
<sup id="fnref:2"><a href="#fn:2" class="footnote">2</a></sup>
<sup id="fnref:3"><a href="#fn:3" class="footnote">3</a></sup>
</td>
</tr>
<tr>
Expand All @@ -58,8 +63,8 @@ This is an overview of all Android versions and their corresponding identifiers
</tr>
<tr class="table-notes"><td colspan="3">
<ul>
<li><code>targetSdk</code> <a href="https://developer.android.com/google/play/requirements/target-sdk">will need to be 31+</a> for new apps by August 2022 and updates by November 2022. <sup id="fnref:3"><a href="#fn:3" class="footnote">3</a></sup></li>
<li><code>targetSdk</code> <a href="https://support.google.com/googleplay/android-developer/answer/11926878">will need to be 31+</a> for <i>all existing apps</i> by November 2023. <sup id="fnref:4"><a href="#fn:4" class="footnote">4</a></sup></li>
<li><code>targetSdk</code> <a href="https://developer.android.com/google/play/requirements/target-sdk">will need to be 31+</a> for new apps by August 2022 and updates by November 2022. <sup id="fnref:4"><a href="#fn:4" class="footnote">4</a></sup></li>
<li><code>targetSdk</code> <a href="https://support.google.com/googleplay/android-developer/answer/11926878">will need to be 31+</a> for <i>all existing apps</i> by November 2023. <sup id="fnref:5"><a href="#fn:5" class="footnote">5</a></sup></li>
</ul>
</td></tr>
<tr>
Expand All @@ -70,15 +75,15 @@ This is an overview of all Android versions and their corresponding identifiers
<td><code>R</code></td>
<td>
Red Velvet Cake
<sup id="fnref:2"><a href="#fn:2" class="footnote">2</a></sup>
<sup id="fnref:3"><a href="#fn:3" class="footnote">3</a></sup>
</td>
{% include progress-cell.html rowspan=2 percentage=47.7 %}
<td rowspan="2">2020</td>
</tr>
<tr class="table-notes"><td colspan="3">
<ul>
<li><code>targetSdk</code> <a href="https://developer.android.com/google/play/requirements/target-sdk">must be 30+</a> for new apps and app updates. <sup id="fnref:3"><a href="#fn:3" class="footnote">3</a></sup></li>
<li><code>targetSdk</code> <a href="https://support.google.com/googleplay/android-developer/answer/11926878">will need to be 30+</a> for <i>all existing apps</i> by November 2022. <sup id="fnref:4"><a href="#fn:4" class="footnote">4</a></sup></li>
<li><code>targetSdk</code> <a href="https://developer.android.com/google/play/requirements/target-sdk">must be 30+</a> for new apps and app updates. <sup id="fnref:4"><a href="#fn:4" class="footnote">4</a></sup></li>
<li><code>targetSdk</code> <a href="https://support.google.com/googleplay/android-developer/answer/11926878">will need to be 30+</a> for <i>all existing apps</i> by November 2022. <sup id="fnref:5"><a href="#fn:5" class="footnote">5</a></sup></li>
</ul>
</td></tr>
<tr>
Expand All @@ -89,7 +94,7 @@ This is an overview of all Android versions and their corresponding identifiers
<td><code>Q</code></td>
<td>
Quince Tart
<sup id="fnref:2"><a href="#fn:2" class="footnote">2</a></sup>
<sup id="fnref:3"><a href="#fn:3" class="footnote">3</a></sup>
</td>
{% include progress-cell.html rowspan=1 percentage=70.3 %}
<td>2019</td>
Expand All @@ -103,6 +108,7 @@ This is an overview of all Android versions and their corresponding identifiers
<td>Pie</td>
{% include progress-cell.html rowspan=2 percentage=81.6 %}
<td rowspan="2">2018</td>
<td rowspan="2" class="yellow">2022-01</td>
</tr>
<tr class="table-notes"><td colspan="3">
<ul>
Expand All @@ -118,11 +124,13 @@ This is an overview of all Android versions and their corresponding identifiers
<td rowspan="2">Oreo</td>
{% include progress-cell.html rowspan=1 percentage=87.5 %}
<td rowspan="2">2017</td>
<td class="yellow">2021-10</td>
</tr>
<tr>
<td>Level 26 <span class="subversion">Android 8.0</span></td>
<td><code>O</code></td>
{% include progress-cell.html rowspan=1 percentage=90.2 %}
<td class="red">2021-01</td>
</tr>
<tr>
<td rowspan="2">
Expand All @@ -133,11 +141,13 @@ This is an overview of all Android versions and their corresponding identifiers
<td rowspan="2">Nougat</td>
{% include progress-cell.html rowspan=1 percentage=91.8 %}
<td rowspan="2">2016</td>
<td class="red">2019-10</td>
</tr>
<tr>
<td>Level 24 <span class="subversion">Android 7.0</span></td>
<td><code>N</code></td>
{% include progress-cell.html rowspan=1 percentage=94.6 %}
<td class="red">2019-08</td>
</tr>
<tr>
<td>
Expand All @@ -148,6 +158,7 @@ This is an overview of all Android versions and their corresponding identifiers
<td>Marshmallow</td>
{% include progress-cell.html rowspan=1 percentage=97.1 %}
<td>2015</td>
<td class="red">2018-08</td>
</tr>
<tr>
<td rowspan="3">
Expand All @@ -158,6 +169,7 @@ This is an overview of all Android versions and their corresponding identifiers
<td rowspan="2">Lollipop</td>
{% include progress-cell.html rowspan=1 percentage=98.7 %}
<td>2015</td>
<td rowspan="3" class="red">2018-03</td>
</tr>
<tr>
<td>Level 21 <span class="subversion">Android 5.0</span></td>
Expand All @@ -174,10 +186,11 @@ This is an overview of all Android versions and their corresponding identifiers
<td rowspan="9"><b>Android 4</b></td>
<td>
Level 20
<span class="subversion">Android 4.4W</span> <sup id="fnref:5"><a href="#fn:5" class="footnote">5</a></sup>
<span class="subversion">Android 4.4W</span> <sup id="fnref:6"><a href="#fn:6" class="footnote">6</a></sup>
</td>
<td><code>KITKAT_WATCH</code></td>
<td rowspan="2">KitKat</td>
<td rowspan="22"><i>No data</i></td>
</tr>
<tr>
<td>
Expand Down Expand Up @@ -337,16 +350,19 @@ This is an overview of all Android versions and their corresponding identifiers
<p>Cumulative usage distribution figures were last updated on <b>May 31, 2022</b> using data from <a href="https://gs.statcounter.com/android-version-market-share/mobile-tablet/worldwide">Statcounter GlobalStats</a>. These figures may have changed significantly since the last update. You may update the figures yourself with a <a href="https://github.com/ebelinski/apilevels">pull request</a>. <a href="#fnref:1" class="reversefootnote">↩</a></p>
</li>
<li id="fn:2">
<p>The codenames for Android 10 and above in the table are the internal codenames. Beginning with Android 10, Google dropped the usage of codenames publicly.</p>
<p>Security patch levels were last updated on <b>June 1, 2022</b> using <a href="https://source.android.com/security/bulletin">AOSP Security Bulletins</a>. These dates may have changed significantly since the last update. You may update the figures yourself with a <a href="https://github.com/ebelinski/apilevels">pull request</a>. <a href="#fnref:2" class="reversefootnote">↩</a></p>
</li>
<li id="fn:3">
<p>This requirement excludes new Wear OS apps and updates, which still only require a <code>targetSdk</code> <a href="https://developer.android.com/google/play/requirements/target-sdk">of 28 or higher</a>. <a href="#fnref:3" class="reversefootnote">↩</a></p>
<p>The codenames for Android 10 and above in the table are the internal codenames. Beginning with Android 10, Google dropped the usage of codenames publicly.</p>
</li>
<li id="fn:4">
<p>In 2022, Google began imposing <a href="https://support.google.com/googleplay/android-developer/answer/11926878">minimum <code>targetSdk</code> requirements for existing apps</a>, in addition new apps and app updates. Existing apps that are not updated to meet <code>targetSdk</code> requirements by their deadlines will be <a href="https://android-developers.googleblog.com/2022/04/expanding-plays-target-level-api-requirements-to-strengthen-user-security.html">subject to restrictions</a>. This requirement excludes Wear OS apps. <a href="#fnref:4" class="reversefootnote">↩</a></p>
<p>This requirement excludes new Wear OS apps and updates, which still only require a <code>targetSdk</code> <a href="https://developer.android.com/google/play/requirements/target-sdk">of 28 or higher</a>. <a href="#fnref:4" class="reversefootnote">↩</a></p>
</li>
<li id="fn:5">
<p>Android 4.4W is the first Android release for Android Wear. <a href="#fnref:5" class="reversefootnote">↩</a></p>
<p>In 2022, Google began imposing <a href="https://support.google.com/googleplay/android-developer/answer/11926878">minimum <code>targetSdk</code> requirements for existing apps</a>, in addition new apps and app updates. Existing apps that are not updated to meet <code>targetSdk</code> requirements by their deadlines will be <a href="https://android-developers.googleblog.com/2022/04/expanding-plays-target-level-api-requirements-to-strengthen-user-security.html">subject to restrictions</a>. This requirement excludes Wear OS apps. <a href="#fnref:5" class="reversefootnote">↩</a></p>
</li>
<li id="fn:6">
<p>Android 4.4W is the first Android release for Android Wear. <a href="#fnref:6" class="reversefootnote">↩</a></p>
</li>
</ol>
</div>
Expand Down