Home | History | Annotate | Download | only in 2.1

Lines Matching full:must

16 <p>This document enumerates the requirements that must be met in order for
18 <p>The use of "must", "must not", "required", "shall", "shall not", "should",
27 <li>MUST meet the requirements presented in this Compatibility Definition,
29 <li>MUST pass the most recent version of the Android Compatibility Test Suite
94 user interface behaviors. Device implementations MUST comply with all the
101 managed VM environment. Device implementations MUST provide complete
104 <p>Device implementations MUST NOT omit any managed APIs, alter API interfaces
114 implementations MUST meet all the requirements presented in this section.</p>
116 <p>Device implementers MUST support and enforce all permission constants as
125 formats of these values to which device implementations MUST conform.</p>
135 format. This field MUST have one of the string values defined in [<a
141 accessible to third-party application code. For Android 2.1, this field MUST have
148 MUST NOT be re-used for different builds shipped to end users. A typical use
151 specific format of this field, except that it MUST NOT be null or the empty
160 MUST NOT be null or the empty string ("").</td>
168 format of this field, except that it MUST NOT be null or the empty string
176 except that it MUST NOT be null or the empty string ("").</td>
181 human-readable. It MUST follow this template:
185 The fingerprint MUST NOT include spaces. If other fields included in the
193 this field, except that it MUST NOT be null or the empty string ("").</td>
201 requirements on the specific format of this field, except that it MUST NOT be
209 format of this field, except that it MUST NOT be null or the empty string
215 or code name of the device. MUST be human-readable, but is not necessarily
217 format of this field, except that it MUST NOT be null or the empty string
223 further distinguish the build. For example, "unsigned,debug". This field MUST
242 that it MUST NOT be null or the empty string ("").</td>
249 patterns that MUST be honored by device implementations. By "honored", it is
250 meant that the device implementer MUST provide an Android Activity or Service
257 <p>However, any such alternative versions MUST honor the same Intent patterns
259 alternative music player, it must still honor the Intent pattern issued by
288 android:exported attribute with the value "false", device implementations MUST
292 apps; however, if it does, the device implementation MUST support all Intent
295 <p>As Android is an extensible platform, device implementers MUST allow each
298 device implementers MUST NOT attach special privileges to system applications'
306 <p>Device implementers MUST NOT include any Android component that honors any
308 key string in the android.* namespace. Device implementers MUST NOT include
311 another organization. Device implementers MUST NOT alter or extend any of the
318 Android-compatible devices MUST broadcast the public broadcast Intents in
325 hardware architecture. Device implementations MUST include support for code
327 standard Java Native Interface (JNI) semantics. The following APIs MUST be
338 <p>Device implementations MUST support OpenGL ES 1.0. Devices that lack
339 hardware acceleration MUST implement OpenGL ES 1.0 using a software renderer.
344 <p>These libraries MUST be source-compatible (i.e. header compatible) and
350 MUST ensure header, binary, and behavioral compatibility.</p>
351 <p>Device implementations MUST accurately report the native Application Binary
353 <code>android.os.Build.CPU_ABI</code> API. The ABI MUST be one of the entries
366 for their user interfaces, so the WebView implementation must be
371 browser, device implementers MUST use the specific upstream build of WebKit in
374 <li>WebView MUST use the 530.17 WebKit build from the upstream Android Open
377 <li>The user agent string reported by the WebView MUST be in this format:<br/>
380 <li>The value of the $(VERSION) string MUST be the same as the value for <code>android.os.Build.VERSION.RELEASE</code></li>
382 <li>The value of the $(MODEL) string MUST be the same as the value for <code>android.os.Build.MODEL</code></li>
383 <li>The value of the $(BUILD) string MUST be the same as the value for <code>android.os.Build.ID</code></li>
390 third-party applications MUST be based on WebKit, as above.</p>
391 <p>The WebView configuration MUST include support for the HTML5 database,
393 9</a>]. The WebView MUST include support for
396 WebKit Browser application or a third-party replacement) MUST include support
401 must be consistent with the preferred implementation of the upstream Android
405 <li>Devices MUST NOT change the behavior or meaning of a standard Intent</li>
406 <li>Devices MUST NOT alter the lifecycle or lifecycle semantics of a particular type of system component (such as Service, Activity, ContentProvider, etc.)</li>
407 <li>Devices MUST NOT change the semantics of a particular permission</li>
421 applications, device implementers MUST NOT make any prohibited modifications
432 <li>Device implementations MUST NOT modify the publicly exposed APIs on the
436 but such modifications MUST NOT impact the stated behavior and Java-language
438 <li>Device implementers MUST NOT add any publicly exposed elements (such as
444 implementers MUST NOT expose new APIs or alter existing APIs in the namespaces
446 those modifications MUST NOT be advertised or otherwise exposed to
448 <p>Device implementers MAY add custom APIs, but any such APIs MUST NOT be in a
450 implementers MUST NOT add APIs to the com.google.* or similar namespace; only
451 Google may do so. Similarly, Google MUST NOT add APIs to other companies'
464 <p>Device implementations MUST support the full Dalvik Executable (DEX)
467 <p>Device implementations MUST configure Dalvik to allocate at least 16MB of
469 low-density. Device implementations MUST configure Dalvik to allocate at least
476 hook into the system user interface. Device implementations MUST incorporate
491 MUST provide a separate application accessible from the Launcher that allows
495 events [<a href="#resources12">Resources, 12</a>]. Device implementers MUST provide support for each
498 <p>Additionally, the implementation MUST correctly render all resources
504 notification systems MUST support existing notification resources, as
515 <p>Device implementations MUST include a single, shared, system-wide search
517 Device implementations MUST implement the APIs that allow developers to reuse
519 implementations MUST implement the APIs that allow third-party applications to
532 period of time. Device implementations MUST display Toasts from applications
553 determined to not run live wallpapers reliably as described above MUST NOT
557 <p>Device implementers MUST test implementation compatibility using the
564 <p>Each app above MUST launch and behave correctly on the implementation, for
566 <p>Additionally, device implementations MUST test each menu item (including all
572 <p>Each test case in the applications above MUST run correctly on the device
576 <p>Device implementations MUST install and run Android ".apk" files as
579 <p>Devices implementations MUST NOT extend either the .apk [<a
589 <p>Device implemenations MUST support the following multimedia codecs. All of
733 <p>Device implemenations MUST support the Android Developer Tools provided in
734 the Android SDK. Specifically, Android-compatible devices MUST be compatible
738 Device implementations MUST support all <code>adb</code> functions as
740 be inactive by default, but there MUST be a user-accessible mechanism to turn
743 Device implementations MUST support all <code>ddms</code> features as documented in the
746 but MUST be supported whenever the user has activated the Android Debug
749 Device implementations MUST include the Monkey framework, and make it
757 lists the hardware features that all Android 2.1 compatible devices must
760 corresponding API for third-party developers, the device implementation MUST
765 <li>class definitions for the component's APIs MUST be present</li>
766 <li>the API's behaviors MUST be implemented as no-ops in some reasonable fashion</li>
767 <li>API methods MUST return null values where permitted by the SDK documentation</li>
768 <li>API methods MUST return no-op implementations of classes where null values are not permitted by the SDK documentation</li>
771 telephony API: even on non-phone devices, these APIs must be implemented as
773 <p>Device implementations MUST accurate report accurate hardware configuration
782 href="#resources23">Resources, 23</a>]. Devices MUST properly implement these
861 above MUST be configured to report the indicated screen size to applications
868 <li>Device implementations MUST interpret resources in a .apk that lack a
871 <li>When operating on a "low" density screen, device implementations MUST
873 <li>When operating on a "high" density screen, device implementations MUST
875 <li>Device implementations MUST NOT scale assets within a density range, and
876 MUST scale assets by exactly these factors between density ranges.</li>
882 compatible. Device implementers MUST contact Android Compatibility Team as
885 implementations MUST implement them as specified.</p>
891 <p>Device implementations MUST report correct valuesfor all display metrics
898 <li>MUST include support for the Input Management Framework (which allows third party developers to create Input Management Engines -- i.e. soft keyboard) as detailed at developer.android.com</li>
899 <li>MUST provide at least one soft keyboard implementation (regardless of whether a hard keyboard is present)</li>
902 <li>MUST NOT include a hardware keyboard that does not match one of the
910 <li>MUST report the correct value for
914 <p>Compatible devices MUST support dynamic orientation by applications to
915 either portrait or landscape screen orientation. That is, the device must
919 <p>Devices MUST report the correct value for the device's current orientation,
926 <li>MUST have a touchscreen</li>
928 <li>MUST report the value of <code>android.content.res.Configuration</code>
937 <li>MUST implement a USB client, connectable to a USB host with a standard
939 <li>MUST implement the Android Debug Bridge over USB (as described in Section
941 <li>MUST implement the USB mass storage specification, to allow a host
944 <li>MAY include a non-standard port on the device side, but if so MUST ship
951 paradigm. Device implementations MUST make these functions available to the
954 gestures, touch panel, etc., but if so they MUST be always accessible and not
960 <p>Device implementations MUST include support for wireless high-speed data
961 networking. Specifically, device implementations MUST include support for at
966 MUST support the API.</p>
968 Devices MAY implement wired data connectivity (such as Ethernet), but MUST
971 <p>Device implementations MUST include a camera. The included camera:</p>
973 <li>MUST have a resolution of at least 2 megapixels</li>
977 <li>MAY include a flash. If the Camera includes a flash, the flash lamp MUST
986 <p>Device implementations MUST implement the following behaviors for the
990 android.hardware.Camera.Parameters.setPreviewFormat(int), then the device MUST
996 must further be in the NV21 encoding format. (This is the format used natively
997 by the 7k hardware family.) That is, NV21 MUST be the default.</li>
999 <p>Device implementations MUST implement the full Camera API included in the
1002 capabilities. For instance, cameras that lack autofocus MUST still call any
1005 <p>Device implementations MUST recognize and honor each parameter name defined
1008 support a feature, the API must behave as documented. Conversely, Device
1009 implementations MUST NOT honor or recognize string constants passed
1014 device implementations MUST support all standard Camera parameters if the
1015 hardware allows, and MUST NOT support custom Camera parameter types unless
1019 <p>Device implementations MUST include a 3-axis accelerometer and MUST be able
1021 accelerometer MUST comply with the Android sensor coordinate system as detailed
1025 <p>Device implementations MUST include a 3-axis compass and MUST be able to
1027 MUST comply with the Android sensor coordinate system as defined in the Android
1031 <p>Device implementations MUST include a GPS, and SHOULD include some form of
1038 MUST implement the full support for the API for that technology. Device
1039 implementations that do not include telephony hardware MUST implement the full
1044 <p>Device implementations MUST have at least 92MB of memory available to the
1045 kernel and userspace. The 92MB MUST be in addition to any memory dedicated to
1048 <p>Device implementations MUST have at least 150MB of non-volatile storage
1049 available for user data. That is, the <code>/data</code> partition must be at
1054 <p>Device implementations MUST offer shared storage for applications. The
1055 shared storage provided MUST be at least 2GB in size.</p>
1056 <p>Device implementations MUST be configured with shared storage mounted by
1058 path <code>/sdcard</code>, then the device MUST include a Linux symbolic link
1060 <p>Device implementations MUST enforce as documented the
1062 shared storage. Shared storage MUST otherwise be writable by any application
1067 <p>Regardless of the form of shared storage used, the shared storage MUST
1069 box, the shared storage MUST be mounted with the FAT filesystem.</p>
1072 requirement, a FAT-formatted SD card 2GB in size or larger MUST be included
1073 with the device as sold to users, and MUST be mounted by default.
1075 satisfy this requirement, that storage MUST be 2GB in size or larger and
1076 mounted on <code>/sdcard</code> (or <code>/sdcard</code> MUST be a symbolic
1081 <p>Device implementations MUST include a Bluetooth transceiver. Device
1082 implementations MUST enable the RFCOMM-based Bluetooth API as described in the
1091 must ensure not only that applications simply run correctly on the device, but
1093 Device implementations MUST meet the key performance metrics of an Android 2.1
1115 already-running application after it has been launched must take less than the
1123 <p>Device implementations MUST implement a security model consistent with the
1126 Android developer documentation. Device implementations MUST support
1129 compatible devices MUST support the security mechanisms described in the
1132 <p>Device implementations MUST support the Android permissions model as
1135 implementations MUST enforce each permission defined as described in the SDK
1140 <p>Device implementations MUST support the Android application sandbox model,
1142 process. Device implementations MUST support running multiple applications as
1147 <p>Device implementations MUST support the Android file access permissions
1152 <p>Device implementations MUST pass the Android Compatibility Test Suite (CTS)
1156 Source tree as much as possible, and MUST ensure compatibility in cases of
1162 for Android 2.1. Device implementations MUST pass the latest CTS version
1166 <p>Device implementations MUST include a mechanism to replace the entirety of
1178 <p>The update mechanism used MUST support updates without wiping user data.
1184 applications, the device implementer MUST correct the error via a software