1## 3.7\. Runtime Compatibility 2 3Device implementations: 4 5* [C-0-1] MUST support the full Dalvik Executable (DEX) format 6and [Dalvik bytecode specification and semantics](https://android.googlesource.com/platform/dalvik/). 7 8* [C-0-2] MUST configure Dalvik runtimes to allocate memory in 9accordance with the upstream Android platform, and as specified by 10the following table. (See [section 7.1.1](#7_1_1_screen_configuration) for 11screen size and screen density definitions.) 12 13* SHOULD use Android RunTime (ART), the reference upstream 14implementation of the Dalvik Executable Format, and the reference 15implementation’s package management system. 16 17* SHOULD run fuzz tests under various modes of execution 18and target architectures to assure the stability of the runtime. Refer to 19[JFuzz](https://android.googlesource.com/platform/art/+/master/tools/dexfuzz/) 20and [DexFuzz](https://android.googlesource.com/platform/art/+/master/tools/dexfuzz/) 21in the Android Open Source Project website. 22 23Note that memory values specified below are considered minimum values and 24device implementations MAY allocate more memory per application. 25 26<table> 27 <tr> 28 <th>Screen Layout</th> 29 <th>Screen Density</th> 30 <th>Minimum Application Memory</th> 31 </tr> 32 <tr> 33 <td rowspan="16">Android Watch</td> 34 <td>120 dpi (ldpi)</td> 35 <td rowspan="6">32MB</td> 36 </tr> 37 <tr> 38 <td>140 dpi (140dpi)</td> 39 </tr> 40 <tr> 41 <td>160 dpi (mdpi)</td> 42 </tr> 43 <tr> 44 <td>180 dpi (180dpi)</td> 45 </tr> 46 <tr> 47 <td>200 dpi (200dpi)</td> 48 </tr> 49 <tr> 50 <td>213 dpi (tvdpi)</td> 51 </tr> 52 <tr> 53 <td>220 dpi (220dpi)</td> 54 <td rowspan="3">36MB</td> 55 </tr> 56 <tr> 57 <td>240 dpi (hdpi)</td> 58 </tr> 59 <tr> 60 <td>280 dpi (280dpi)</td> 61 </tr> 62 <tr> 63 <td>320 dpi (xhdpi)</td> 64 <td rowspan="2">48MB</td> 65 </tr> 66 <tr> 67 <td>360 dpi (360dpi)</td> 68 </tr> 69 <tr> 70 <td>400 dpi (400dpi)</td> 71 <td>56MB</td> 72 </tr> 73 <tr> 74 <td>420 dpi (420dpi)</td> 75 <td>64MB</td> 76 </tr> 77 <tr> 78 <td>480 dpi (xxhdpi)</td> 79 <td>88MB</td> 80 </tr> 81 <tr> 82 <td>560 dpi (560dpi)</td> 83 <td>112MB</td> 84 </tr> 85 <tr> 86 <td>640 dpi (xxxhdpi)</td> 87 <td>154MB</td> 88 </tr> 89 <tr> 90 <td rowspan="16">small/normal</td> 91 <td>120 dpi (ldpi)</td> 92 <td rowspan="3">32MB</td> 93 </tr> 94 <tr> 95 <td>140 dpi (140dpi)</td> 96 </tr> 97 <tr> 98 <td>160 dpi (mdpi)</td> 99 </tr> 100 <tr> 101 <td>180 dpi (180dpi)</td> 102 <td rowspan="6">48MB</td> 103 </tr> 104 <tr> 105 <td>200 dpi (200dpi)</td> 106 </tr> 107 <tr> 108 <td>213 dpi (tvdpi)</td> 109 </tr> 110 <tr> 111 <td>220 dpi (220dpi)</td> 112 </tr> 113 <tr> 114 <td>240 dpi (hdpi)</td> 115 </tr> 116 <tr> 117 <td>280 dpi (280dpi)</td> 118 </tr> 119 <tr> 120 <td>320 dpi (xhdpi)</td> 121 <td rowspan="2">80MB</td> 122 </tr> 123 <tr> 124 <td>360 dpi (360dpi)</td> 125 </tr> 126 <tr> 127 <td>400 dpi (400dpi)</td> 128 <td>96MB</td> 129 </tr> 130 <tr> 131 <td>420 dpi (420dpi)</td> 132 <td>112MB</td> 133 </tr> 134 <tr> 135 <td>480 dpi (xxhdpi)</td> 136 <td>128MB</td> 137 </tr> 138 <tr> 139 <td>560 dpi (560dpi)</td> 140 <td>192MB</td> 141 </tr> 142 <tr> 143 <td>640 dpi (xxxhdpi)</td> 144 <td>256MB</td> 145 </tr> 146 <tr> 147 <td rowspan="16">large</td> 148 <td>120 dpi (ldpi)</td> 149 <td>32MB</td> 150 </tr> 151 <tr> 152 <td>140 dpi (140dpi)</td> 153 <td rowspan="2">48MB</td> 154 </tr> 155 <tr> 156 <td>160 dpi (mdpi)</td> 157 </tr> 158 <tr> 159 <td>180 dpi (180dpi)</td> 160 <td rowspan="5">80MB</td> 161 </tr> 162 <tr> 163 <td>200 dpi (200dpi)</td> 164 </tr> 165 <tr> 166 <td>213 dpi (tvdpi)</td> 167 </tr> 168 <tr> 169 <td>220 dpi (220dpi)</td> 170 </tr> 171 <tr> 172 <td>240 dpi (hdpi)</td> 173 </tr> 174 <tr> 175 <td>280 dpi (280dpi)</td> 176 <td>96MB</td> 177 </tr> 178 <tr> 179 <td>320 dpi (xhdpi)</td> 180 <td>128MB</td> 181 </tr> 182 <tr> 183 <td>360 dpi (360dpi)</td> 184 <td>160MB</td> 185 </tr> 186 <tr> 187 <td>400 dpi (400dpi)</td> 188 <td>192MB</td> 189 </tr> 190 <tr> 191 <td>420 dpi (420dpi)</td> 192 <td>228MB</td> 193 </tr> 194 <tr> 195 <td>480 dpi (xxhdpi)</td> 196 <td>256MB</td> 197 </tr> 198 <tr> 199 <td>560 dpi (560dpi)</td> 200 <td>384MB</td> 201 </tr> 202 <tr> 203 <td>640 dpi (xxxhdpi)</td> 204 <td>512MB</td> 205 </tr> 206 <tr> 207 <td rowspan="16">xlarge</td> 208 <td>120 dpi (ldpi)</td> 209 <td>48MB</td> 210 </tr> 211 <tr> 212 <td>140 dpi (140dpi)</td> 213 <td rowspan="2">80MB</td> 214 </tr> 215 <tr> 216 <td>160 dpi (mdpi)</td> 217 </tr> 218 <tr> 219 <td>180 dpi (180dpi)</td> 220 <td rowspan="5">96MB</td> 221 </tr> 222 <tr> 223 <td>200 dpi (200dpi)</td> 224 </tr> 225 <tr> 226 <td>213 dpi (tvdpi)</td> 227 </tr> 228 <tr> 229 <td>220 dpi (220dpi)</td> 230 </tr> 231 <tr> 232 <td>240 dpi (hdpi)</td> 233 </tr> 234 <tr> 235 <td>280 dpi (280dpi)</td> 236 <td>144MB</td> 237 </tr> 238 <tr> 239 <td>320 dpi (xhdpi)</td> 240 <td>192MB</td> 241 </tr> 242 <tr> 243 <td>360 dpi (360dpi)</td> 244 <td>240MB</td> 245 </tr> 246 <tr> 247 <td>400 dpi (400dpi)</td> 248 <td>288MB</td> 249 </tr> 250 <tr> 251 <td>420 dpi (420dpi)</td> 252 <td>336MB</td> 253 </tr> 254 <tr> 255 <td>480 dpi (xxhdpi)</td> 256 <td>384MB</td> 257 </tr> 258 <tr> 259 <td>560 dpi (560dpi)</td> 260 <td>576MB</td> 261 </tr> 262 <tr> 263 <td>640 dpi (xxxhdpi)</td> 264 <td>768MB</td> 265 </tr> 266</table> 267