Overview of compatibility solutions in the official documents of Android CTS, and overview of Android cts compatibility

Source: Internet
Author: User

Overview of compatibility solutions in the official documents of Android CTS, and overview of Android cts compatibility

Official English document link: https://source.android.com/compatibility/overview.html

Compatibility Program Overview

Compatibility Overview

The Android compatibility program makes it easy for mobile device manufacturers to develop compatible Android devices.

Android compatibility solutions enable Android mobile phone manufacturers to easily develop compatible Android devices (Tiandi Zhuhai sub-rudder Note: What is compatibility? It is compatible with the functions supported by the standard Android system provided by google, to prevent mobile phone manufacturers from failing to install any applications developed by developers after making all the changes to the open-source Android system, therefore, CTS is required to pass the test on mobile phone development before google play is available ).

Program goals solution Objectives

The Android compatibility program works for the benefit of the entire Android community, including users, developers, and device manufacturers. each group depends on the others. users want a wide selection of devices and great apps; great apps come from developers motivated by a large market for their apps with custom devices in users 'hands; device manufacturers rely on a wide variety of great apps to increase their products' value for consumers.

The android compatibility solution takes into account the interests of all groups in the android community, including users, developers and mobile phone manufacturers. These groups are mutually dependent, and users want to select mobile phone types and excellent applications in a wide range; developers of excellent applications will be inspired by a large market to develop more outstanding applications, because their applications can reach users who use different types of mobile phones through this broad market, device manufacturers rely on these wide range of excellent applications to enhance the value of their products to users. (Tiandihui Zhuhai sub-rudder note: in fact, the significance of google is to express how powerful google play is in the application market. Your Android device manufacturer wants to make money. If you want more developers to develop applications suitable for your models and want more users to use your mobile phone, you need to use google play, if you want to use google play, then the modified Android operating system must meet certain rules, otherwise, the user will download an application on my google play and it will be of no benefit to everyone if you cannot use it)

Our goals were designed to benefit each of these groups:

Our purpose is to benefit the following:

  • Provide a consistent application and hardware environment to application developers.Without a strong compatibility standard, devices can vary so greatly that developers must design different versions of their applications for different devices. the compatibility program provides a precise definition of what developers can perform CT from a compatible device in terms of APIs and capabilities. developers can use this information to make good design decisions, and be confident that their apps will run well on any compatible device.

  • Provide application developers with a consistent application development environment and hardware environment: If there is no compatibility standard, various devices will be varied, and developers must develop different versions of applications for each different device. The Compatibility scheme is based on a set of pre-defined APIs and capabilities (Tiandi Zhuhai sub-rudder Note: capabilities can be understood as some features of mobile phones) the form provides a precise definition of the features that developers expect to obtain from a compatibility device. In this way, developers can use this information to make a good decision on how to design their applications, in this way, they are very confident that their applications can run well on any compatible devices.

  • Enable a consistent application experience for consumers.If an application runs well on one compatible Android device, it shocould run well on any other device that is compatible with the same Android platform version. android devices will differ in hardware and software capabilities, so the compatibility program also provides the tools needed for distribution systems such as Google Play to implement appropriate filtering. this means users see only the applications they can actually run.

  • Provide consumers with a consistent application experience: If an application runs well on a compatible device, it should be able to run well on all compatible devices of the same Android version. Various Android devices vary in hardware and software features. Therefore, this compatibility solution provides tools for various application distribution platforms such as Google Player to develop corresponding filtering functions, what does it mean? This means that users can only see applications that can run on their mobile phones on the distribution platform.

  • Enable device manufacturers to differentiate while being compatible.The Android compatibility program focuses on the aspects of Android relevant to running third-party applications, which allows device manufacturers the flexibility to create unique devices that are nonetheless compatible.

  • Allows device manufacturers to be compatible and unique: The compatibility solution of Android focuses on whether the Android system installed on the device can run third-party applications well (Tiandi Zhuhai sub-rudder note: third-party applications except those provided by the manufacturer ), this allows the equipment manufacturer to create a unique and unique device while considering the compatibility. This provides a lot of elastic space (Tiandi will Zhuhai rudder note: because mobile phone manufacturers only need to ensure that they can meet the android compatibility scheme, then they can do anything else on the device)

  • Minimize costs and overhead associated with compatibility.Ensuring compatibility shocould be easy and inexpensive to device manufacturers. the testing tool is free, open source, and available for download. it is designed to be used for continuous self-testing during the device development process to eliminate the cost of changing your workflow or sending your device to a third party for testing. meanwhile, there are no required certifications, and thus no corresponding costs and fees.

  • Minimize additional costs caused by compatibility: Ensuring device compatibility is easy and not expensive for device manufacturers. The android compatibility solution provides free, open-source, and downloadable tools. It is designed to enable the device manufacturer to perform continuous self-testing during device development, in this way, the device manufacturer can eliminate additional costs resulting from changes in the development process or sending the device to a third-party organization for compatibility testing. At the same time, the android compatibility solution does not require any authentication, so no corresponding fees and bills are generated.

The Android compatibility program consists of three key components:

The android compatibility solution consists of the following three key components:

  • The source code to the Android software stack
  • Source code in the Android software stack
  • The Compatilbility Definition Document (CDD), representing the "policy" aspect of compatibility
  • The Compatibility definition document (CDD) represents the "Policy" definition of Android compatibility
  • The Compatilbility Test Suite (CTS), representing the "mechanic" of compatibility
  • The compatibility test kit (CTS) represents the "mechanism" of Android compatibility

Just as each version of the Android platform exists in a separate branch in the source code tree, there is a separate CTS and CDD for each version as well. the CDD, CTS, and source code are -- along with your hardware and your software customizations -- everything you need to create a compatible device.

Just as the source code of different versions of Android platforms will be divided into different corresponding branches from the source code tree, different versions of CTS and CDD will also have different branches (Tiandi will be at the helm of Zhuhai) Note: the CTS and CDD of different Android versions correspond to each other ). The CDD, CTS, and source code described above, coupled with your own hardware and software customization as a mobile phone manufacturer, are all you need to create a compatibility device.

Compatibility Definition Document (CDD)

For each release of the Android platform, a detailed CDD will be provided. The CDD represents the "policy" aspect of Android compatibility.

Each time an Android operating system is released, a detailed CDD document is provided. This document represents the "Policy" definition of Android compatibility.

No test suite, including CTS, can truly be comprehensive. for instance, the CTS should des a test that checks for the presence and correct behavior of OpenGL graphics APIs, but no software test can verify that the graphics actually appear correctly on the screen. more generally, it's impossible to test the presence of hardware features such as keyboards, display density, Wi-Fi, and Bluetooth.

In some cases, no test kits, including CTS, can be fully automated for all compatibility aspects. For example, when there is a test in CTS that is used to check the correct rendering and behavior of the OpenGL graphics library APIs on the screen, however, there is no software test to verify that the corresponding graph is actually displayed on the screen (Tiandi Zhuhai sub-rudder Note: The test cases including this CTS only call OpenGL APIs, however, this test does not detect whether the screen displays the corresponding image. It can only be observed by the naked eye. This means that not all functions in the software testing industry can be automated ). More broadly speaking, it is impossible to test the hardware presentation functions (using test tools), such as testing the key-pressing physical keyboard (available or not), screen density, wi-Fi hardware and Bluetooth hardware.

The CDD's role is to codify and clarify specific ments, and eliminate ambiguity. the CDD does not attempt to be comprehensive. since Android is a single corpus of open-source code, the code itself is the comprehensive "specification" of the platform and its APIs. the CDD acts as a "hub" referencing other content (such as sdk api documentation) that provides a framework in which the Android source code may be used so that the end result is a compatible system.

The role of CDD is to define and clarify specific requirements and eliminate ambiguous situations. CDD won't try to do anything, because Android itself is an open-source code set, the code itself is a comprehensive "instruction document" for the Android platform and its APIs (Tiandi Zhuhai sub-rudder note: if you have learned about agile development, refactoring, and other related knowledge, you should be clear about the statement-document-based, and excellent code is the best document ). CDD plays a "Hub" role, which resends and references the incoming compatibility requirements to other corresponding content (such as the sdk api documentation ), this content provides a framework used by the android source code, so that the entire system will naturally become a compatible system. (Tiandi Zhuhai sub-rudder Note: This section should have a better translation method. If you are an official, please provide it and I will choose to adopt it)

If you want to build a device compatible with a given Android version, start by checking out the source code for that version, and then read the corresponding CDD and stay within its guidelines. for additional details, simply examine the latest CDD.

If you want to create a compatibility device in a specified Android version, download the source code of the Android version, then carefully read the CDD document corresponding to the source code of this version and follow its guidelines. For more information, see the latest CDD document.

Compatibility Test Suite

The CTS is a free, commercial-grade test suite, available for download. The CTS represents the "mechanic" of compatibility.

CTS is a free, commercial-level test suite that can be downloaded. CTS represents the "mechanism" of Android compatibility.

The CTS runs on a desktop machine and executes test cases directly on attached devices or an emulator. the CTS is a set of unit tests designed to be integrated into the daily workflow (such as via a continuous build system) of the engineers building a device. its intent is to reveal incompatibilities early on, and ensure that the software remains compatible throughout the development process.

CTS runs on your desktop system to drive devices or simulators that connect to hosts on the desktop system to run the corresponding test cases (scripts. CTS is a set of unit tests. It is designed for us to integrate into our daily workflow (for example, building a system by integrating into our continuous integration system) to help engineers build an Android device system. It is intended to expose incompatibility in the early stages to ensure that the device remains compatible throughout the process of Android device system development.

Compatibility Test Suite Verifier (CTS Verifier) Compatibility Test Suite validators

The Compatibility Test Suite Verifier (CTS Verifier) is a supplement to the CTS available for download. CTS Verifier provides tests for APIs and functions that cannot be tested on a stationary device without manual input (e.g. audio quality, accelerometer, etc ).

The compatibility test kit validators (CTS validators) are an attachment feature of CTS (Tianji Zhuhai Rudder: Actually an APK) and can be downloaded here. The CTS validators provide APIs and function tests (such as audio quality, accelerator, etc.) that cannot be completed without user input)

For details on the CTS, consult the CTS introduction.

For more information about CTS, see "CTS Introduction".





Tiandihui Zhuhai sub-Rudder

Reprinted please indicate the source!

For more exciting articles, refer to my blog!

Blog Address


Related Article

Contact Us

The content source of this page is from Internet, which doesn't represent Alibaba Cloud's opinion; products and services mentioned on that page don't have any relationship with Alibaba Cloud. If the content of the page makes you feel confusing, please write us an email, we will handle the problem within 5 days after receiving your email.

If you find any instances of plagiarism from the community, please send an email to: info-contact@alibabacloud.com and provide relevant evidence. A staff member will contact you within 5 working days.

A Free Trial That Lets You Build Big!

Start building with 50+ products and up to 12 months usage for Elastic Compute Service

  • Sales Support

    1 on 1 presale consultation

  • After-Sales Support

    24/7 Technical Support 6 Free Tickets per Quarter Faster Response

  • Alibaba Cloud offers highly flexible support services tailored to meet your exact needs.