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