Merge "Current files for source.android.com"
This commit is contained in:
@@ -3,10 +3,10 @@ doc.type=about
|
||||
doc.hidenav=true
|
||||
@jd:body
|
||||
<p>Android is an open-source software stack created for mobile phones and
|
||||
other devices. The Android Open Source Project (AOSP) is tasked with the
|
||||
maintenance and further development of Android. Many device manufacturers have
|
||||
brought to market devices running Android, and they are readibly available
|
||||
around the world.</p>
|
||||
other devices. The Android Open Source Project (AOSP), led by Google, is
|
||||
tasked with the maintenance and further development of Android. Many device
|
||||
manufacturers have brought to market devices running Android, and they are
|
||||
readibly available around the world.</p>
|
||||
<p>Our primary purpose is to build an excellent software platform for everyday
|
||||
users. A number of companies have committed many engineers to achieve this
|
||||
goal, and the result is a full production quality consumer product whose
|
||||
|
||||
@@ -2,7 +2,7 @@ page.title=Philosophy and Goals
|
||||
doc.type=about
|
||||
doc.hidenav=true
|
||||
@jd:body
|
||||
<p>Android is an open-source software stack for mobile phones and similar
|
||||
<p>Android is an open-source software stack for mobile phones and other
|
||||
devices.</p>
|
||||
<h2>Origin and Goal</h2>
|
||||
<p>Android was originated by a group of companies known as the Open Handset
|
||||
@@ -16,12 +16,11 @@ available for carriers, OEMs, and developers to use to make their innovative
|
||||
ideas a reality. We wanted to make sure that there was no central point of
|
||||
failure, where one industry player could restrict or control the innovations
|
||||
of any other. The solution we chose was an open and open-source platform.</p>
|
||||
<p>But the ultimate goal, of course, is to improve the mobile experience for
|
||||
real users by facilitating innovation. Accordingly, the primary goal of the
|
||||
AOSP is to make sure Android is a success as an end user product.</p>
|
||||
<p>The goal of the Android Open Source Project is to create a successful
|
||||
real-world product that improves the mobile experience for end users.</p>
|
||||
<h2>Governance Philosophy</h2>
|
||||
<p>The companies that have invested in Android have done so on its merits,
|
||||
because we collectively believe that an open platform is necessary. Android is
|
||||
because we believe that an open platform is necessary. Android is
|
||||
intentionally and explicitly an open-source -- as opposed to free software --
|
||||
effort: a group of organizations with shared needs has pooled
|
||||
resources to collaborate on a single implementation of a shared product.
|
||||
@@ -34,20 +33,19 @@ compatible", and what is required of device builders to achieve that status.
|
||||
Anyone can (and will!) use the Android source code for any purpose, and we
|
||||
welcome all such uses. However, in order to take part in the shared
|
||||
ecosystem of applications that we are building around Android, device builders
|
||||
can take advantage of the Compatibility Program.</p>
|
||||
must participate in the Compatibility Program.</p>
|
||||
<p>Though Android consists of multiple sub-projects, this is strictly a
|
||||
project-management technique. We view and manage Android as a single,
|
||||
holistic software product, not a "distribution", specification, or collection
|
||||
of replaceable parts. Conceptually, our notion is that device builders port
|
||||
of replaceable parts. Our intent is that device builders port
|
||||
Android to a device; they don't implement a specification or curate a
|
||||
distribution.</p>
|
||||
<h2>How We Work</h2>
|
||||
<p>We know that quality does not come without hard work. Along with many
|
||||
partners, Google has contributed full-time engineers, product managers, UI
|
||||
designers, Quality Assurance, and all the other roles required to bring
|
||||
modern devices to market. We integrate the open source administration and
|
||||
modern devices to market. We roll the open source administration and
|
||||
maintenance into the larger product development cycle.</p>
|
||||
<p>In a nutshell:</p>
|
||||
<ul>
|
||||
<li>At any given moment, there is a current latest release of the Android
|
||||
platform. This typically takes the form of a branch in the tree.</li>
|
||||
@@ -56,18 +54,9 @@ latest release, fixing bugs, launching new devices, experimenting with new
|
||||
features, and so on.</li>
|
||||
<li>In parallel, Google works internally on the next version of the
|
||||
Android platform and framework, working according to the product's needs and
|
||||
goals. Some of the work from the current latest tree will promoted into these
|
||||
releases.</li>
|
||||
<li>When the "n+1"th version is determined to be nearing completion, it will
|
||||
be published to the public source tree, and become the new latest
|
||||
release.</li>
|
||||
<li>Since Android is open source, nothing prevents device implementers from
|
||||
shipping devices on older (obsolete) Android builds. However, active work will
|
||||
be focused on the current platform release.</li>
|
||||
goals. We develop the next version of Android by working with a device partner
|
||||
on a flagship device whose specifications are chosen to push Android
|
||||
in the direction we believe it should go.</li>
|
||||
<li>When the "n+1"th version is ready, it will be published to the public
|
||||
source tree, and become the new latest release.</li>
|
||||
</ul>
|
||||
<p>To meet our goals, Android needs to achieve widespread, compatible
|
||||
adoption. We believe that the best way to accomplish that is to make sure that
|
||||
we ship high-quality, flagship devices with an intense product and end-user
|
||||
focus. The "next release" of Android is driven by the product needs for the next
|
||||
generation of mobile devices; the resulting excellent product is then released
|
||||
to open source and becomes the new current version of the platform.</p>
|
||||
|
||||
@@ -1,26 +1,66 @@
|
||||
page.title=Android Discussion Groups Charter
|
||||
doc.type=community
|
||||
doc.hidenav=true
|
||||
@jd:body
|
||||
<h2>
|
||||
Audience
|
||||
</h2>
|
||||
<p>These discussion groups are intended for developers working with the Android platform. Everyone is welcome to join in, provided you follow our community's policies described below. Our users help each other, and many experts post to these groups, including members of the Open Handset Alliance.
|
||||
<h2>Audience</h2>
|
||||
<p>These discussion groups are intended for developers working with the
|
||||
Android platform. Everyone is welcome to join in, provided you follow our
|
||||
community's policies described below. Our users help each other, and many
|
||||
experts post to these groups, including members of the Open Handset Alliance.
|
||||
</p>
|
||||
<p>No topic is off-limits, provided it relates to Android in some way. However, since these are very busy lists, search the archives before posting your question; you may find your question has already been answered.
|
||||
<p>No topic is off-limits, provided it relates to Android in some way.
|
||||
However, since these are very busy lists, search the archives before posting
|
||||
your question; you may find your question has already been answered.
|
||||
</p>
|
||||
<h2>
|
||||
Mailing list rules
|
||||
</h2>
|
||||
<p>We love simplicity and hate restrictions, so we keep our policies minimal. The rules below describe what's expected of subscribers to the Android mailing lists.
|
||||
<h2>Mailing list rules</h2>
|
||||
<p>We love simplicity and hate restrictions, so we keep our policies minimal.
|
||||
The rules below describe what's expected of subscribers to the Android mailing
|
||||
lists.
|
||||
</p>
|
||||
<ul><li><b>Please be friendly</b>
|
||||
<br>Showing courtesy and respect to others is a vital part of the Android culture, and we expect everyone participating in the Android community to join us in accepting nothing less. Being courteous does not mean we can't constructively disagree with each other, but it does mean that we must be polite when we do so. There's never a reason to be antagonistic or dismissive toward anyone; if you think there is, think again before you post.<br><br>Mobile development is serious business, but it's also a lot of fun. Let's keep it that way. Let's strive to be one of the friendliest communities in all of open source.<br><br></li>
|
||||
<br>Showing courtesy and respect to others is a vital part of the Android
|
||||
culture, and we expect everyone participating in the Android community to join
|
||||
us in accepting nothing less. Being courteous does not mean we can't
|
||||
constructively disagree with each other, but it does mean that we must be
|
||||
polite when we do so. There's never a reason to be antagonistic or dismissive
|
||||
toward anyone; if you think there is, think again before you
|
||||
post.<br><br>Mobile development is serious business, but it's also a lot of
|
||||
fun. Let's keep it that way. Let's strive to be one of the friendliest
|
||||
communities in all of open source.<br><br></li>
|
||||
|
||||
<li><b>Allowed discussion topics</b>
|
||||
<br>Most topics are technical discussions of Android or users helping each other, but this group is intended for discussions of<i>everything</i>
|
||||
in the world of Android. We welcome announcements and discussion of products, libraries, publications, and other interesting Android-related news. We even welcome (polite!) discussion of articles and ideas critical of Android--after all, we can't improve if we don't listen. There are no restrictions on the subject matter, and we don't exclude discussions of commercial products if users are interested in talking about them.<br><br>However, we hate spam almost as passionately as we love courtesy and respect, so we reserve the right to limit discussions that amount to spam. Outright spam will result in the spammer being immediately and permanently banned from the list.
|
||||
<br>Most of our groups are for technical discussions of Android or users
|
||||
helping each other. Generally we don't put hard restrictions on the topics
|
||||
discussed in the group: as long as the topic is relevant to Android in some
|
||||
way, it's welcome on our groups. We welcome announcements and discussion of
|
||||
products, libraries, publications, and other interesting Android-related news,
|
||||
but <b>please do not cross-post</b>. Post only to the most relevant group for
|
||||
your message. We even welcome (polite!) discussion of articles and ideas
|
||||
critical of Android--after all, we can't improve if we don't listen.<br><br>
|
||||
</li>
|
||||
|
||||
<li><b>Working Lists</b>
|
||||
<br>Some of our groups are considered "working lists", by which we mean that the
|
||||
list is intended to be used in support of the completion of specific tasks. On
|
||||
these groups, we don't welcome off-topic conversations, and will generally ask
|
||||
you to take general discussions to a different list. Since these are lists
|
||||
where people are trying to get work done, we will be pretty aggressive about
|
||||
keeping the noise level low. We ask that you respect our contributors' time
|
||||
and keep general discussions to appropriate lists.<br><br>
|
||||
</li>
|
||||
|
||||
<li><b>Spam</b>
|
||||
<br>We hate spam almost as passionately as we love courtesy and respect, so we
|
||||
reserve the right to limit discussions that amount to spam. Outright spam will
|
||||
result in the spammer being immediately and permanently banned from the list.
|
||||
<br><br></li>
|
||||
</ul>
|
||||
<p>The most important rule is friendliness. Remember: disrespect and rudeness are not welcome in our community under any circumstances. We don't have a formal policy on dealing with troublemakers, and we hope we never need one.That said, we do pledge to do our best to be fair, and we will always try to warn someone before banning him or her.
|
||||
|
||||
<p>The most important rule is friendliness. Remember: disrespect and rudeness
|
||||
are not welcome in our community under any circumstances. We don't have a
|
||||
formal policy on dealing with troublemakers, and we hope we never need
|
||||
one.That said, we do pledge to do our best to be fair, and we will always try
|
||||
to warn someone before banning him or her.
|
||||
</p>
|
||||
<h2>
|
||||
Contacting the moderators
|
||||
|
||||
@@ -1,7 +1,7 @@
|
||||
page.title=Community
|
||||
page.title=Android Community
|
||||
doc.type=community
|
||||
doc.hidenav=true
|
||||
@jd:body
|
||||
<h1>Android Community</h1>
|
||||
<p>Welcome to the Android community!</p>
|
||||
<p>The key to any community is, obviously, communication. Like most projects,
|
||||
Android communicates via mailing lists. Because Android is an extremely large
|
||||
@@ -37,6 +37,14 @@ href="http://developer.android.com/community/index.html">http://developer.androi
|
||||
|
||||
<h2>Open Source Project discussions</h2>
|
||||
<ul>
|
||||
<li><b>android-platform</b><br/>
|
||||
This list is for general discussion about the Android open-source project or
|
||||
the platform technologies.<br/><br/>
|
||||
Subscribe using Google Groups: <a
|
||||
href="http://groups.google.com/group/android-platform">android-platform</a><br/>
|
||||
Subscribe via email: <a href="mailto:android-platform+subscribe@googlegroups.com">android-platform+subscribe@googlegroups.com</a>
|
||||
</li>
|
||||
|
||||
<li><b>android-building</b><br/>
|
||||
Subscribe to this list for discussion and help on building the Android source
|
||||
code, and on the build system. If you've just checked out the source code and
|
||||
@@ -58,14 +66,14 @@ href="http://groups.google.com/group/android-porting">android-porting</a><br/>
|
||||
Subscribe via email: <a href="mailto:android-porting+subscribe@googlegroups.com">android-porting+subscribe@googlegroups.com</a>
|
||||
</li>
|
||||
|
||||
<li><b>android-platform</b><br/>
|
||||
This list is for developers who want to contribute code to the Android
|
||||
user-space projects, such as the core system libraries, the Android
|
||||
services, the public APIs, or the built-in applications. Note: contributors
|
||||
<li><b>android-contrib</b><br/>
|
||||
This list is for developers who want to contribute code to Android. This is a
|
||||
working list, and is not appropriate for general discussion. We ask that
|
||||
general discussion go to android-platform. Note: contributors
|
||||
to the Android kernel should go to the android-kernel list, below.<br/><br/>
|
||||
Subscribe using Google Groups: <a
|
||||
href="http://groups.google.com/group/android-platform">android-platform</a><br/>
|
||||
Subscribe via email: <a href="mailto:android-platform+subscribe@googlegroups.com">android-platform+subscribe@googlegroups.com</a>
|
||||
href="http://groups.google.com/group/android-contrib">android-contrib</a><br/>
|
||||
Subscribe via email: <a href="mailto:android-contrib+subscribe@googlegroups.com">android-contrib+subscribe@googlegroups.com</a>
|
||||
</li>
|
||||
|
||||
<li><b>android-kernel</b><br/>
|
||||
@@ -88,27 +96,35 @@ site, you can use your email client of choice to participate in the mailing list
|
||||
under "subscribe via email" in the lists above.</p>
|
||||
<p>To set up how you receive mailing list postings by email:</p>
|
||||
<ol>
|
||||
<li>Sign into the group via the Google Groups site. For example, for the android-framework group you would
|
||||
visit <a
|
||||
href="http://groups.google.com/group/android-framework">http://groups.google.com/group/android-framework</a>.</li>
|
||||
<li>Sign into the group via the Google Groups site. For example, for the android-platform group you would
|
||||
visit <a href="http://groups.google.com/group/android-platform">http://groups.google.com/group/android-platform</a>.</li>
|
||||
<li>Click "Edit my membership" on the right side.</li>
|
||||
<li>Under "How do you want to read this group?" select one of the email options.</li>
|
||||
</ol>
|
||||
|
||||
<h2>Android on IRC</h2>
|
||||
<p>We also have a presence on IRC via Freenode. We maintain two official IRC
|
||||
channels on irc.freenode.net:</p>
|
||||
<p>We also have a presence on IRC via <a href="http://freenode.net/">freenode</a>.
|
||||
We maintain two official IRC channels on
|
||||
<a href="irc://irc.freenode.net/">irc.freenode.net</a> (access via the web
|
||||
at <a href="http://webchat.freenode.net/">freenode webchat</a>):</p>
|
||||
<ul>
|
||||
<li><b>#android</b> - dedicated to general Android discussion and porting concerns</li>
|
||||
<li><b>#android-dev</b> - dedicated to discussion about writing Android applications</li>
|
||||
<li><b><a href="irc://irc.freenode.net/android">#android</a></b>
|
||||
— dedicated to general Android discussion and porting concerns</li>
|
||||
<li><b><a href="irc://irc.freenode.net/android-dev">#android-dev</a></b>
|
||||
— dedicated to discussion about writing Android applications</li>
|
||||
</ul>
|
||||
<p>The channels above are official. There are a few other channels the
|
||||
community is using, but are not official. These aren't official or officially
|
||||
moderated/managed, so you use the channels below at your own risk. The Open
|
||||
Handset Alliance doesn't endorse these channels, there's no warranty express
|
||||
or implied, and so on. There may be more.</p>
|
||||
or implied, and so on. There may be more channels than just these listed.</p>
|
||||
<ul>
|
||||
<li><b>#android-offtopic</b> - for, well, off-topic discussions</li>
|
||||
<li><b>#android-root</b> - for discussion related to off-label uses of hardware</li>
|
||||
<li><b>#androidfra</b> - pour discuter d'Android en français</li>
|
||||
<li><b><a href="irc://irc.freenode.net/android-firehose">#android-firehose</a></b>
|
||||
— displays in real-time the commits to the Android Open Source Project</li>
|
||||
<li><b><a href="irc://irc.freenode.net/android-fr">#android-fr</a></b>
|
||||
— pour discuter d'Android en français</li>
|
||||
<li><b><a href="irc://irc.freenode.net/android-offtopic">#android-offtopic</a></b>
|
||||
— for, well, off-topic discussions</li>
|
||||
<li><b><a href="irc://irc.freenode.net/android-root">#android-root</a></b>
|
||||
— for discussion related to off-label uses of hardware</li>
|
||||
</ul>
|
||||
|
||||
19
pdk/docs/compatibility/2.1/versions.jd
Normal file
19
pdk/docs/compatibility/2.1/versions.jd
Normal file
@@ -0,0 +1,19 @@
|
||||
page.title=Permitted Version Strings for Android 2.1
|
||||
doc.type=compatibility
|
||||
@jd:body
|
||||
<p>As described in Section 3.2.2 of the <a
|
||||
href="{@docRoot}compatibility/android-2.1-cdd.pdf">Android 2.1 Compatibility
|
||||
Definition</a>, only certain strings are allowable for the system property
|
||||
<code>android.os.Build.VERSION.RELEASE</code>. The reason for this is that
|
||||
applications and web sites may rely on predictable values for this string, and
|
||||
so that end users can easily and reliably identify the version of Android
|
||||
running on their devices.</p>
|
||||
<p>Because subsequent releases of the Android software may revise this string,
|
||||
but not change any API behavior, such releases may not be accompanied by a new
|
||||
Compatibility Definition Document. This page lists the versions that are
|
||||
allowable by an Android 2.1-based system. The only permitted values for
|
||||
<code>android.os.Build.VERSION.RELEASE</code> for Android 2.1 are:</p>
|
||||
<ul>
|
||||
<li>2.1</li>
|
||||
<li>2.1-update1</li>
|
||||
</ul>
|
||||
20
pdk/docs/compatibility/2.2/versions.jd
Normal file
20
pdk/docs/compatibility/2.2/versions.jd
Normal file
@@ -0,0 +1,20 @@
|
||||
page.title=Permitted Version Strings for Android 2.2
|
||||
doc.type=compatibility
|
||||
@jd:body
|
||||
<p>As described in Section 3.2.2 of the <a
|
||||
href="{@docRoot}compatibility/android-2.2-cdd.pdf">Android 2.2 Compatibility
|
||||
Definition</a>, only certain strings are allowable for the system property
|
||||
<code>android.os.Build.VERSION.RELEASE</code>. The reason for this is that
|
||||
applications and web sites may rely on predictable values for this string, and
|
||||
so that end users can easily and reliably identify the version of Android
|
||||
running on their devices.</p>
|
||||
<p>Because subsequent releases of the Android software may revise this string,
|
||||
but not change any API behavior, such releases may not be accompanied by a new
|
||||
Compatibility Definition Document. This page lists the versions that are
|
||||
allowable by an Android 2.2-based system.</p>
|
||||
<p>The value of <code>android.os.Build.VERSION.RELEASE</code> for Android 2.2
|
||||
MUST be one of the following strings:</p>
|
||||
<ul>
|
||||
<li>2.2</li>
|
||||
<li>2.2.1</li>
|
||||
</ul>
|
||||
20
pdk/docs/compatibility/2.3/versions.jd
Normal file
20
pdk/docs/compatibility/2.3/versions.jd
Normal file
@@ -0,0 +1,20 @@
|
||||
page.title=Permitted Version Strings for Android 2.3
|
||||
doc.type=compatibility
|
||||
@jd:body
|
||||
<p>As described in Section 3.2.2 of the <a
|
||||
href="{@docRoot}compatibility/android-2.3-cdd.pdf">Android 2.3 Compatibility
|
||||
Definition</a>, only certain strings are allowable for the system property
|
||||
<code>android.os.Build.VERSION.RELEASE</code>. The reason for this is that
|
||||
applications and web sites may rely on predictable values for this string, and
|
||||
so that end users can easily and reliably identify the version of Android
|
||||
running on their devices.</p>
|
||||
<p>Because subsequent releases of the Android software may revise this string,
|
||||
but not change any API behavior, such releases may not be accompanied by a new
|
||||
Compatibility Definition Document. This page lists the versions that are
|
||||
allowable by an Android 2.2-based system.</p>
|
||||
<p>The value of <code>android.os.Build.VERSION.RELEASE</code> for Android 2.3
|
||||
MUST be one of the following strings:</p>
|
||||
<ul>
|
||||
<li>2.3</li>
|
||||
<li>2.3.1</li>
|
||||
</ul>
|
||||
BIN
pdk/docs/compatibility/android-1.6-cdd.pdf
Normal file
BIN
pdk/docs/compatibility/android-1.6-cdd.pdf
Normal file
Binary file not shown.
BIN
pdk/docs/compatibility/android-2.1-cdd.pdf
Normal file
BIN
pdk/docs/compatibility/android-2.1-cdd.pdf
Normal file
Binary file not shown.
4080
pdk/docs/compatibility/android-2.2-cdd.pdf
Normal file
4080
pdk/docs/compatibility/android-2.2-cdd.pdf
Normal file
File diff suppressed because one or more lines are too long
5223
pdk/docs/compatibility/android-2.3-cdd.pdf
Normal file
5223
pdk/docs/compatibility/android-2.3-cdd.pdf
Normal file
File diff suppressed because one or more lines are too long
BIN
pdk/docs/compatibility/android-cts-manual-r4.pdf
Normal file
BIN
pdk/docs/compatibility/android-cts-manual-r4.pdf
Normal file
Binary file not shown.
@@ -7,12 +7,13 @@ function nothing() {}
|
||||
<ul>
|
||||
<li><h2>Getting Started</h2><ul>
|
||||
<li><a href="<?cs var:toroot ?>compatibility/overview.html">Compatibility Overview</a></li>
|
||||
<li><a href="">Current CDD</a></li>
|
||||
<li><a href="<?cs var:toroot ?>compatibility/android-2.3-cdd.pdf">Current CDD</a></li>
|
||||
<li><a href="<?cs var:toroot ?>compatibility/cts-intro.html">CTS Introduction</a></li>
|
||||
<li><a href="<?cs var:toroot ?>compatibility/cts-development.html">CTS Development</a></li>
|
||||
</ul></li>
|
||||
|
||||
<li><h2>More Information</h2><ul>
|
||||
<li><a href="<?cs var:toroot ?>downloads/index.html">Downloads</a></li>
|
||||
<li><a href="<?cs var:toroot ?>compatibility/downloads.html">Downloads</a></li>
|
||||
<li><a href="<?cs var:toroot ?>faqs.html#compatibility">FAQs</a></li>
|
||||
<li><a href="<?cs var:toroot ?>compatibility/contact-us.html">Contact Us</a></li>
|
||||
</ul></li>
|
||||
|
||||
@@ -7,13 +7,12 @@ this site, you can reach us in one of a few different ways. To get the most
|
||||
out of any of these options, please first read "Getting the Most from Our
|
||||
Lists" on the <a href="{@docRoot}community/index.html">Community page.</a></p>
|
||||
|
||||
<h3>Discussion Group</h3>
|
||||
<h3>For General Discussion</h3>
|
||||
<p>The preferred way to reach us is via the <a
|
||||
href="http://groups.google.com/group/android-compatibility">android-compatibility
|
||||
mailing list</a>. Use this list for all your compatibility-related questions.
|
||||
Please be aware that this is a public forum.</p>
|
||||
href="mailto:compatibility@android.com">compatibility@android.com
|
||||
address</a>.</p>
|
||||
|
||||
<h3>CTS Technical Questions</h3>
|
||||
<h3>For CTS Technical Questions</h3>
|
||||
<p>If you have specific issues with the Compatibility Test Suite that require
|
||||
you to disclose information you'd prefer not to be public, you can contact an
|
||||
email address we've set up specifically this purpose: <a
|
||||
@@ -23,9 +22,9 @@ questions will be directed back to the public android-compatibility
|
||||
list. Note also that this list is for specific technical questions; general
|
||||
inquiries will also be directed back to the android-compatibility list.</p>
|
||||
|
||||
<h3>Private Inquiries</h3>
|
||||
<h3>For Business Inquiries</h3>
|
||||
<p>Finally, business inquiries about the compatibility program, including
|
||||
requests to use branding elements and so on, can be sent to the address <a
|
||||
href="mailto:compatibility@android.com">compatibility@android.com</a>. Like
|
||||
href="mailto:android-partnerships@google.com">android-partnerships@google.com</a>. Like
|
||||
the CTS address, this address is for specific, private inquiries; general
|
||||
questions will be directed back to the android-compatibility list.</p>
|
||||
|
||||
130
pdk/docs/compatibility/cts-development.jd
Normal file
130
pdk/docs/compatibility/cts-development.jd
Normal file
@@ -0,0 +1,130 @@
|
||||
page.title=CTS Development
|
||||
doc.type=compatibility
|
||||
@jd:body
|
||||
|
||||
<h3>Initializing Your Repo Client</h3>
|
||||
|
||||
<p>Follow the
|
||||
<a href="{@docRoot}source/download.html">instructions</a>
|
||||
to get and build the Android source code but specify "-b froyo"
|
||||
when issuing the "repo init" command. This assures that your CTS
|
||||
changes will be included in the next CTS release and beyond.</p>
|
||||
|
||||
<h3>Setting Up Eclipse</h3>
|
||||
|
||||
<p>Follow the
|
||||
<a href="{@docRoot}source/using-eclipse.html">instructions</a>
|
||||
to setup Eclipse but execute the following command to generate the
|
||||
.classpath file rather than copying the one from the development
|
||||
project:</p>
|
||||
|
||||
<pre>
|
||||
cd /path/to/android/root
|
||||
./cts/development/ide/eclipse/genclasspath.sh > .classpath
|
||||
chmod u+w .classpath
|
||||
</pre>
|
||||
|
||||
<p>This .classpath file will contain both the Android framework
|
||||
packages and the CTS packages.</p>
|
||||
|
||||
<h3>Building and Running CTS</h3>
|
||||
|
||||
<p>Execute the following commands to build CTS and start the interactive
|
||||
CTS console:</p>
|
||||
|
||||
<pre>
|
||||
cd /path/to/android/root
|
||||
make cts
|
||||
cts
|
||||
</pre>
|
||||
|
||||
<p>Provide arguments to CTS to immediately start executing a test:</p>
|
||||
|
||||
<pre>
|
||||
cts start --plan CTS -p android.os.cts.BuildVersionTest
|
||||
</pre>
|
||||
|
||||
<h3>Writing CTS Tests</h3>
|
||||
|
||||
<p>CTS tests use JUnit and the Android testing APIs. Review the
|
||||
<a href="http://d.android.com/guide/topics/testing/testing_android.html">Testing
|
||||
and Instrumentation</a> tutorial while perusing the existing tests under the
|
||||
"cts/tests/tests" directory. You will see that CTS tests mostly follow the same
|
||||
conventions used in other Android tests.</p>
|
||||
|
||||
<p>Since CTS runs across many production devices, the tests must follow
|
||||
these rules:</p>
|
||||
|
||||
<ul>
|
||||
<li>Must take into account varying screen sizes, orientations, and
|
||||
keyboard layouts.</li>
|
||||
<li>Only use public API methods. In other words, avoid all classes,
|
||||
methods, and fields that are annotated with the "hide" annotation.</li>
|
||||
<li>Avoid relying upon particular view layouts or depend on the
|
||||
dimensions of assets that may not be on some device.</li>
|
||||
<li>Don't rely upon root privileges.</li>
|
||||
</ul>
|
||||
|
||||
<h4>Test Naming and Location</h4>
|
||||
|
||||
<p>Most CTS test cases target a specific class in the Android API. These tests
|
||||
have Java package names with a "cts" suffix like "android.view.cts" and class
|
||||
names with the "Test" suffix like "ViewTest." Each test case consists of
|
||||
multiple tests, where each test usually exercises a particular API method of
|
||||
the API class being tested. Each test is annotated with a @TestTargetNew
|
||||
annotation to indicate what API method is being exercised. These tests are
|
||||
arranged in a directory structure where tests are grouped into different
|
||||
categories like "widgets" and "views."</p>
|
||||
|
||||
<p>For example, the CTS test for "android.widget.TextView" is
|
||||
"android.widget.cts.TextVietTest" found under the
|
||||
"cts/tests/tests/widget/src/android/widget/cts" directory with its
|
||||
Java package name as "android.widget.cts" and its class name as
|
||||
"TextViewTest." The "TextViewTest" class has a test called "testSetText"
|
||||
that exercises the "setText" method and a test named "testSetSingleLine" that
|
||||
calls the "setSingleLine" method. Each of those tests have @TestTargetNew
|
||||
annotations indicating what they cover.</p>
|
||||
|
||||
<p>Some CTS tests do not directly correspond to an API class but are placed in
|
||||
the most related package possible. For instance, the CTS test,
|
||||
"android.net.cts.ListeningPortsTest," is in the "android.net.cts," because it
|
||||
is network related even though there is no "android.net.ListeningPorts" class.
|
||||
Thus, use your best judgement when adding new tests and refer to other tests
|
||||
as examples.</p>
|
||||
|
||||
<h4>New Test Packages</h4>
|
||||
|
||||
<p>When adding new tests, there may not be an existing directory to place your
|
||||
test. In that case, refer to the example under "cts/tests/tests/example" and
|
||||
create a new directory. Furthermore, make sure to add your new package's
|
||||
module name from its Android.mk to "CTS_COVERAGE_TEST_CASE_LIST" in
|
||||
"cts/CtsTestCaseList.mk." This Makefile is used by "build/core/tasks/cts.mk"
|
||||
to glue all the tests together to create the final CTS package.</p>
|
||||
|
||||
<h4>Test Stubs and Utilities</h4>
|
||||
|
||||
<p>Some tests use additional infrastructure like separate activities
|
||||
and various utilities to perform tests. These are located under the
|
||||
"cts/tests/src" directory. These stubs aren't separated into separate test
|
||||
APKs like the tests, so the "cts/tests/src" directory does not have additional
|
||||
top level directories like "widget" or "view." Follow the same principle of
|
||||
putting new classes into a package with a name that correlates to the purpose
|
||||
of your new class. For instance, a stub activity used for testing OpenGL like
|
||||
"GLSurfaceViewStubActivity" belongs in the "android.opengl.cts" package under
|
||||
the "cts/tests/src/android/opengl" directory.</p>
|
||||
|
||||
<h3>Other Tasks</h3>
|
||||
|
||||
<p>Besides adding new tests there are other ways to contribute to CTS:</p>
|
||||
|
||||
<ul>
|
||||
<li>Fix or remove tests annotated with BrokenTest and KnownFailure.</li>
|
||||
</ul>
|
||||
|
||||
<h3>Submitting Your Changes</h3>
|
||||
|
||||
<p>Follow the
|
||||
<a href="{@docRoot}source/submit-patches.html">Android
|
||||
contributors' workflow</a> to contribute changes to CTS. A reviewer
|
||||
will be assigned to your change, and your change should be reviewed shortly!</p>
|
||||
|
||||
@@ -13,10 +13,14 @@ Android .apk files to run on the actual device target.</li>
|
||||
|
||||
<h3>Workflow</h3>
|
||||
<ol>
|
||||
<li>Obtain the CTS source code. The CTS is included in the Android source code available from the Android
|
||||
Open Source Project. (To get a copy of that source code, <a
|
||||
href="{@docRoot}source/download.html">read this page.</a></li>
|
||||
<li><a href="{@docRoot}compatibility/downloads.html">Download</a> the CTS.
|
||||
<li>Attach at least one device (or emulator) to your machine.</li>
|
||||
<li>For CTS 2.1 R2 and beyond, setup your device (or emulator) to run the accessibility tests:
|
||||
<ol>
|
||||
<li>adb install -r android-cts/repository/testcases/CtsDelegatingAccessibilityService.apk</li>
|
||||
<li>On the device, enable Settings > Accessibility > Accessibility > Delegating Accessibility Service</li>
|
||||
</ol>
|
||||
</li>
|
||||
<li>Launch the CTS. The CTS test harness loads the test plan onto the attached devices. For each test in the test harness:
|
||||
<ul>
|
||||
<li>The test harness pushes a .apk file to each device, executes the test through instrumentation, and records test results.</li>
|
||||
|
||||
60
pdk/docs/compatibility/downloads.jd
Normal file
60
pdk/docs/compatibility/downloads.jd
Normal file
@@ -0,0 +1,60 @@
|
||||
page.title=Android Compatibility Downloads
|
||||
doc.type=compatibility
|
||||
@jd:body
|
||||
<p>Thanks for your interest in Android Compatibility! The links below allow
|
||||
you to access the key documents and information.</p>
|
||||
|
||||
<h2>Android 2.3</h2>
|
||||
<p>Android 2.3 is the release of the development milestone code-named
|
||||
Gingerbread. Android 2.3 is the current version of Android. Source code for
|
||||
Android 2.3 is found in the 'gingerbread' branch in the open-source tree. A
|
||||
CTS release for Android 2.3 has not yet been prepared, but one will be
|
||||
available soon.
|
||||
</p>
|
||||
<ul>
|
||||
<li><a href="{@docRoot}compatibility/android-2.3-cdd.pdf">Android 2.3 Compatibility Definition Document (CDD)</a></li>
|
||||
<li><a href="http://dl.google.com/dl/android/cts/android-cts-2.3_r1-x86.zip">Android 2.3 R1 Compatibility Test Suite (CTS)</a></li>
|
||||
</ul>
|
||||
|
||||
<h2>Android 2.2</h2>
|
||||
<p>Android 2.2 is the release of the development milestone code-named
|
||||
FroYo. Source code for Android 2.2 is found in the 'froyo' branch in the
|
||||
open-source tree.
|
||||
</p>
|
||||
<ul>
|
||||
<li><a href="{@docRoot}compatibility/android-2.2-cdd.pdf">Android 2.2 Compatibility Definition Document (CDD)</a></li>
|
||||
<li><a href="http://dl.google.com/dl/android/cts/android-cts-2.2_r4-x86.zip">Android 2.2 R4 Compatibility Test Suite (CTS)</a></li>
|
||||
</ul>
|
||||
|
||||
<h2>Android 2.1</h2>
|
||||
<p>Android 2.1 is the release of the development milestone code-named
|
||||
Eclair. Source code for Android 2.1 is found in the 'eclair' branch in the
|
||||
open-source tree. Note that for technical reasons, there is no compatibility
|
||||
program for Android 2.0 or 2.0.1, and new devices must use Android 2.1.
|
||||
</p>
|
||||
<ul>
|
||||
<li><a href="{@docRoot}compatibility/android-2.1-cdd.pdf">Android 2.1 Compatibility Definition Document (CDD)</a></li>
|
||||
<li><a href="http://dl.google.com/dl/android/cts/android-cts-2.1_r5-x86.zip">Android 2.1 R5 Compatibility Test Suite (CTS)</a></li>
|
||||
</ul>
|
||||
|
||||
<h2>Android 1.6</h2>
|
||||
<p>Android 1.6 was the release of the development milestone code-named Donut.
|
||||
Android 1.6 was obsoleted by Android 2.1. Source code for Android 1.6 is found
|
||||
in the 'donut' branch in the open-source tree.
|
||||
<ul>
|
||||
<li><a href="{@docRoot}compatibility/android-1.6-cdd.pdf">Android 1.6 Compatibility Definition Document (CDD)</a></li>
|
||||
</ul>
|
||||
|
||||
<h2>Compatibility Test Suite Manual</h2>
|
||||
<p>The CTS user manual is applicable to any CTS version, but CTS 2.1 R2 and
|
||||
beyond require
|
||||
<a href="{@docRoot}compatibility/cts-intro.html">additional steps</a>
|
||||
to run the accessibility tests.
|
||||
<ul>
|
||||
<li><a href="{@docRoot}compatibility/android-cts-manual-r4.pdf">Compatibility Test Suite (CTS) User Manual</a></li>
|
||||
</ul>
|
||||
|
||||
<h2>Older Android Versions</h2>
|
||||
<p>There is no Compatibility Program for older versions of Android, such as Android
|
||||
1.5 (known in development as Cupcake). New devices intended to be Android
|
||||
compatible must ship with Android 1.6 or later.</p>
|
||||
@@ -1,17 +1,21 @@
|
||||
page.title=Android Compatibility
|
||||
doc.type=compatibility
|
||||
@jd:body
|
||||
<p>Android is an open source product, and anyone can use the source code to build
|
||||
devices. The purpose of the Android compatibility program is to help Android
|
||||
device implementations remain compatible with all apps.</p>
|
||||
<p>A device is considered compatible if existing and new third-party
|
||||
applications run correctly on it. Poor device implementations that change APIs
|
||||
or alter behaviors will break these apps and so are not compatible. The
|
||||
Android compatibility program's aim is to ensure that these APIs are
|
||||
consistently implemented across devices.</p>
|
||||
<p>The latest version of the Android source code and compatibility program is
|
||||
1.6, which roughly corresponded to the Donut branch. The compatibility
|
||||
program for Android 2.x (corresponding to Eclair) is coming soon.</p>
|
||||
<p>Android's purpose is to establish an open platform for developers to build
|
||||
innovative mobile apps. Three key components work together to realize this
|
||||
platform.</p>
|
||||
<p>The Android Compatibility Program defines the technical details of Android
|
||||
platform and provides tools used by OEMs to ensure that developers’ apps run
|
||||
on a variety of devices. The Android SDK provides built-in tools that
|
||||
Developers use to clearly state the device features their apps require. And
|
||||
Android Market shows apps only to those devices that can properly run
|
||||
them.</p>
|
||||
<p>These pages describe the Android Compatibility Program and how to get
|
||||
access to compatibility information and tools. The latest version of the
|
||||
Android source code and compatibility program is 2.3, which
|
||||
corresponded to the Gingerbread branch.</p>
|
||||
|
||||
|
||||
<h2>Why build compatible Android devices?</h2>
|
||||
<h3>Users want a customizable device.</h3>
|
||||
<p>A mobile phone is a highly personal, always-on, always-present gateway to
|
||||
@@ -20,7 +24,7 @@ extending its functionality. That's why Android was designed as a robust
|
||||
platform for running after-market applications.</p>
|
||||
|
||||
<h3>Developers outnumber us all.</h3>
|
||||
<p>No device manufacturer can hope to write all the software that anyone could
|
||||
<p>No device manufacturer can hope to write all the software that a person could
|
||||
conceivably need. We need third-party developers to write the apps users want,
|
||||
so the Android Open Source Project aims to make it as easy and open as
|
||||
possible for developers to build apps.</p>
|
||||
@@ -38,30 +42,23 @@ increasing the incentive for developers to build more of those apps.</p>
|
||||
sure your device is compatible with Android. For more details about the
|
||||
Android compatibility program in general, see <a
|
||||
href="{@docRoot}compatibility/overview.html">the program overview</a>.</p>
|
||||
<p>Building a compatible device is a four-step process:</p>
|
||||
<p>Building a compatible device is a three-step process:</p>
|
||||
<ol>
|
||||
<li><b>Obtain the Android software stack source code</b><p>This is the
|
||||
<li><b>Obtain the Android software source code</b><p>This is the
|
||||
<a href="{@docRoot}source/index.html">source code for the Android
|
||||
platform</a>, that you port to your hardware.</p></li>
|
||||
<li><b>Comply with Android Compatibility Definition Document</b><p>
|
||||
This document enumerates the software and the hardware features of
|
||||
<li><b>Comply with Android Compatibility Definition Document (CDD)</b><p>
|
||||
The CDD enumerates the software and hardware requirements of
|
||||
a compatible Android device.</p></li>
|
||||
<li><b>Pass the Compatibility Test Suite (CTS)</b><p>You can use the CTS
|
||||
(included in the Android source code) as an ongoing aid to compatibility
|
||||
during the development process.</p></li>
|
||||
<li><b>Submit CTS report</b><p>[Optional] You can also submit your CTS report,
|
||||
so that it can be validated and recorded.</p><p><i>Note:
|
||||
the submission system is currently under construciton, and is not currently
|
||||
available.</i></p></li>
|
||||
</ol>
|
||||
|
||||
<h2>Benefits of compatibility</h2>
|
||||
<p>By submitting a validated CTS report, you receive public recognition of
|
||||
your device's compatibility. This also opens up additional options you can
|
||||
pursue such as use of the Android branding, access to Android Market, and
|
||||
more.</p>
|
||||
<p>As a consequence of some legal quirks, we aren't able to offer automatic
|
||||
licensing of either the Android Market or branding. To actually obtain access
|
||||
to these programs, you will need to <a
|
||||
href="{@docRoot}compatibility/contact-us.html">contact us</a> to obtain a
|
||||
license.</p>
|
||||
<h2>Joining the Ecosystem</h2>
|
||||
<p>Once you've built a compatible device, you may wish to include Android
|
||||
Market to provide your users access to the third-party app ecosystem.
|
||||
Unfortunately, for a variety of legal and business reasons, we aren't able to
|
||||
automatically license Android Market to all compatible devices. To inquire
|
||||
about access about Android Market, you can <a
|
||||
href="{@docRoot}compatibility/contact-us.html">contact us</a></p>
|
||||
|
||||
@@ -35,11 +35,13 @@ manufacturers the flexibility to create unique devices that are nonetheless
|
||||
compatible.</p></li>
|
||||
<li><b>Minimize costs and overhead associated with
|
||||
compatibility.</b><p>Ensuring compatibility should be easy and inexpensive to
|
||||
device manufacturers. The testing tool (CTS) is free and will soon be available
|
||||
in open source. CTS 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.</p></li>
|
||||
device manufacturers. The testing tool (CTS) is free, open source, and
|
||||
available for <a href="{@docRoot}compatibility/downloads.html">download</a>.
|
||||
CTS 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.</p></li>
|
||||
</ul>
|
||||
<p>The Android compatibility program consists of three key components:</p>
|
||||
<ul>
|
||||
@@ -76,8 +78,9 @@ corresponding CDD and stay within its guidelines. For additional details,
|
||||
simply examine <a href="">the latest CDD</a>.</p>
|
||||
|
||||
<h3>Compatibility Test Suite (CTS)</h3>
|
||||
<p>The CTS is a free, commercial-grade test suite, available along with the
|
||||
Android source code. The CTS represents the "mechanism" of compatibility.</p>
|
||||
<p>The CTS is a free, commercial-grade test suite, available for
|
||||
<a href="{@docRoot}compatibility/downloads.html">download</a>.
|
||||
The CTS represents the "mechanism" of compatibility.</p>
|
||||
<p>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
|
||||
|
||||
@@ -1,21 +0,0 @@
|
||||
<script type="text/javascript" language="JavaScript">
|
||||
<!--
|
||||
function nothing() {}
|
||||
-->
|
||||
</script>
|
||||
|
||||
<ul>
|
||||
<li><h2>PDK</h2><ul>
|
||||
<li><a href="">PDK 1.6</a></li>
|
||||
</ul></li>
|
||||
|
||||
<li><h2>Compatibility</h2><ul>
|
||||
<li><a href="">Android 1.6</a></li>
|
||||
</ul></li>
|
||||
</ul>
|
||||
|
||||
<script type="text/javascript">
|
||||
<!--
|
||||
buildToggleLists();
|
||||
//-->
|
||||
</script>
|
||||
@@ -1,44 +0,0 @@
|
||||
page.title=Downloads
|
||||
doc.type=downloads
|
||||
doc.hidenav=true
|
||||
@jd:body
|
||||
<p>This page provides access to various downloads. Note that if you're looking
|
||||
for the Android SDK (for application developers), you should visit <a
|
||||
href="http://developer.android.com/sdk/index.html">developer.android.com</a>.</p>
|
||||
|
||||
<h2>Compatibility</h2>
|
||||
<p>The Compatibility Definition Document can be downloaded below. The
|
||||
Compatibility Test Suite is available in the open-source tree.</p>
|
||||
<table class="download">
|
||||
<tr>
|
||||
<th>Item</th>
|
||||
<th>File</th>
|
||||
<th>Size</th>
|
||||
</tr>
|
||||
<tr>
|
||||
<td>Android CDD 2.1</td>
|
||||
<td><a href="">android-cdd-2.1.pdf</a></td>
|
||||
<td>23070805 bytes</td>
|
||||
</tr>
|
||||
<tr class="alt-color">
|
||||
<td>Android CTS 2.1 Manual</td>
|
||||
<td><a href="">android-cts-manual-2.1.0.pdf</a></td>
|
||||
<td>23070805 bytes</td>
|
||||
</tr>
|
||||
<tr>
|
||||
<td>Android CDD 1.6</td>
|
||||
<td><a href="">android-cdd-1.6.pdf</a></td>
|
||||
<td>23070805 bytes</td>
|
||||
</tr>
|
||||
<tr class="alt-color">
|
||||
<td>Android CTS 1.6 Manual</td>
|
||||
<td><a href="">android-cts-manual-1.6.4.pdf</a></td>
|
||||
<td>23070805 bytes</td>
|
||||
</tr>
|
||||
</table>
|
||||
<p>For more information on how to build an Android-compatible device, see the
|
||||
<a href="{@docRoot}compatibility/index.html">Compatibility</a> page. Note that
|
||||
there is no compatibility program for Android 1.5 and earlier. Note also that
|
||||
there is no compatibility program for Android 2.0, since it was superceded by
|
||||
Android 2.1 after only a few weeks.
|
||||
</p>
|
||||
@@ -74,8 +74,8 @@ benefit.</p>
|
||||
<p>Finally, Google works on the next version of the Android platform in tandem
|
||||
with developing a flagship device. This branch pulls in changes from the
|
||||
experimental and stable branches as appropriate.</p>
|
||||
<p>You can find more information on this topic at our Branches Releases
|
||||
page.</p>
|
||||
<p>You can find more information on this topic at our <a
|
||||
href="{@docRoot}source/code-lines.html">Branches and Releases</a> page.</p>
|
||||
|
||||
<h3>Why are parts of Android developed in private?</h3>
|
||||
<p>It typically takes over a year to bring a device to market, but of course
|
||||
@@ -86,8 +86,8 @@ benefit.</p>
|
||||
<p>To address this, some parts of the next version of Android including the
|
||||
core platform APIs are developed in a private branch. These APIs constitute
|
||||
the next version of Android. Our aim is to focus attention on the current
|
||||
stable version of the Android source code, while we refine the next version
|
||||
of the platform using the flagship Android devices. This allows developers
|
||||
stable version of the Android source code, while we create the next version
|
||||
of the platform as driven by flagship Android devices. This allows developers
|
||||
and OEMs to focus on a single version without having to track unfinished
|
||||
future work just to keep up. Other parts of the Android system that aren't
|
||||
related to application compatibility are developed in the open, however.
|
||||
@@ -95,7 +95,7 @@ benefit.</p>
|
||||
time.</p>
|
||||
|
||||
<h3>When are source code releases made?</h3>
|
||||
<p>When they are ready. Some parts of Android are developed in the open, and
|
||||
<p>When they are ready. Some parts of Android are developed in the open,
|
||||
so that source code is always available. Other parts are developed first in
|
||||
a private tree, and that source code is released when the next platform
|
||||
version is ready.</p>
|
||||
@@ -143,8 +143,7 @@ benefit.</p>
|
||||
"Android compatible devices" from devices that merely run derivatives of the
|
||||
source code. We welcome all uses of the Android source code, but only
|
||||
Android compatible devices -- as defined and tested by the Android
|
||||
Compatibility Program -- may call themselves "Android" and participate in
|
||||
the Android ecosystem.</p>
|
||||
Compatibility Program -- may participate in the Android ecosystem.</p>
|
||||
|
||||
<h3>How can I contribute to Android?</h3>
|
||||
<p>There are a number of ways you can contribute to Android. You can report
|
||||
@@ -170,7 +169,8 @@ benefit.</p>
|
||||
<p>Once submitted, changes need to be accepted by a designated Approver.
|
||||
Approvers are typically Google employees, but the same approvers are
|
||||
responsible for all submissions, regardless of origin.</p>
|
||||
<p>You can find more information on this topic at the Submitting Patches
|
||||
<p>You can find more information on this topic at the <a
|
||||
href="{@docRoot}source/submit-patches.html">Submitting Patches</a>
|
||||
page.</p>
|
||||
|
||||
<a name="compatibility"></a><h2>Compatibility</h2>
|
||||
@@ -185,7 +185,7 @@ benefit.</p>
|
||||
<p>In other words, compatibility is a prerequisite to participate in the
|
||||
Android apps ecosystem. Anyone is welcome to use the Android source code,
|
||||
but if the device isn't compatible, it's not considered part of the Android
|
||||
ecosystem, and irrelevant to developers.</p>
|
||||
ecosystem.</p>
|
||||
|
||||
<h3>What is the role of Android Market in compatibility?</h3>
|
||||
<p>Devices that are Android compatible may seek to license the Android Market
|
||||
@@ -200,11 +200,11 @@ benefit.</p>
|
||||
Compatibility Definition Document (CDD) spells out the specific device
|
||||
configurations that will be considered compatible.</p>
|
||||
<p>For example, though the Android source code could be ported to run on a
|
||||
device that doesn't have a camera, the CDD requires that in order to be
|
||||
compatible, all devices must have a camera. This allows developers to rely
|
||||
on a consistent set of device capabilities when writing their apps.</p>
|
||||
phone that doesn't have a camera, the CDD requires that in order to be
|
||||
compatible, all phones must have a camera. This allows developers to rely
|
||||
on a consistent set of capabilities when writing their apps.</p>
|
||||
<p>The CDD will evolve over time to reflect market realities. For instance,
|
||||
the 1.6 CDD only allows cell phones, but the 2.x CDD allows devices to omit
|
||||
the 1.6 CDD only allows cell phones, but the 2.1 CDD allows devices to omit
|
||||
telephony hardware, allowing for non-phone devices such as tablet-style
|
||||
music players to be compatible. As we make these changes, we will also
|
||||
augment Android Market to allow developers to retain control over where
|
||||
@@ -214,13 +214,10 @@ benefit.</p>
|
||||
devices.</p>
|
||||
|
||||
<h3>If my device is compatible, does it automatically have access to Android Market and branding?</h3>
|
||||
<p>Android Market is a service operated by Google. For legal and business
|
||||
reasons, Google isn't able to make that service available in all parts of
|
||||
the world. Similarly, Google is unable to license the Android trademark for
|
||||
use in all cases.</p>
|
||||
<p>As a result, achieving compatibility does not automatically entitle a
|
||||
device to include Android Market or use the Android name. Device
|
||||
manufacturers should contact Google to obtain access to those tools.</p>
|
||||
<p>Android Market is a service operated by Google. Achieving compatibility is
|
||||
a prerequisite for obtaining access to the Android Market software and branding.
|
||||
Device manufacturers should contact Google to obtain access to Android
|
||||
Market.</p>
|
||||
|
||||
<h3>If I am not a manufacturer, how can I get Android Market?</h3>
|
||||
<p>Android Market is only licensed to handset manufacturers shipping devices.
|
||||
@@ -229,9 +226,9 @@ benefit.</p>
|
||||
|
||||
<h3>How can I get access to the Google apps for Android, such as Maps?</h3>
|
||||
<p>The Google apps for Android, such as YouTube, Google Maps and Navigation,
|
||||
Gmail, and so on are not part of Android, and are licensed separately.
|
||||
Contact android-partnerships@google.com for inquiries related to those
|
||||
apps.</p>
|
||||
Gmail, and so on are Google properties that are not part of Android, and
|
||||
are licensed separately. Contact android-partnerships@google.com for
|
||||
inquiries related to those apps.</p>
|
||||
|
||||
<h3>Is compatibility mandatory?</h3>
|
||||
<p>No. The Android Compatibility Program is optional. Since the Android source
|
||||
@@ -246,7 +243,7 @@ benefit.</p>
|
||||
test a device.</p>
|
||||
|
||||
<h3>How long does compatibility take?</h3>
|
||||
<p>The process is automatic. The Compatibility Test Suite generates a report
|
||||
<p>The process is automated. The Compatibility Test Suite generates a report
|
||||
that can be provided to Google to verify compatibility. Eventually we intend
|
||||
to provide self-service tools to upload these reports to a public database.</p>
|
||||
|
||||
@@ -271,12 +268,15 @@ benefit.</p>
|
||||
generally have much effect on third-party apps. As such, device builders are
|
||||
free to customize the user interface as much as they like. The Compatibility
|
||||
Definition Document does restrict the degree to which OEMs may alter the
|
||||
system user interface for the few areas that do impact third-party apps.</p>
|
||||
system user interface for areas that do impact third-party apps.</p>
|
||||
|
||||
<h3>When are compatibility definitions released for new Android versions?</h3>
|
||||
<p>Our goal is to release new versions of Android Compatibility Definition
|
||||
Documents (CDDs) once the corresponding Android platform version has
|
||||
converged enough to permit it. Since the CDDs</p>
|
||||
converged enough to permit it. While we can't release a final draft of a CDD
|
||||
for an Android software version before the first flagship device ships with
|
||||
that software, final CDDs will always be released after the first device.
|
||||
However, wherever practical we will make draft versions of CDDs available.</p>
|
||||
|
||||
<h3>How are device manufacturers' compatibility claims validated?</h3>
|
||||
<p>There is no validation process for Android device compatibility. However,
|
||||
|
||||
Binary file not shown.
|
Before Width: | Height: | Size: 233 KiB After Width: | Height: | Size: 339 KiB |
@@ -1,7 +1,27 @@
|
||||
page.title=Welcome to Android
|
||||
home=true
|
||||
@jd:body
|
||||
<div style="float: left; width: 45%; font-size: 1.3em;">
|
||||
<div style="float: right; width: 35%;">
|
||||
<h3 style="padding-top: 0px;">News</h3>
|
||||
<p><b>Compatibility Definition for Android 2.3</b><br/>
|
||||
The Compatibility Definition Document for Android 2.3 has been published.
|
||||
The 2.3 CDD allows device manufacturers to use the Android source code to ship
|
||||
a significantly wider variety of devices, including devices with extra-large
|
||||
screens, such as tablets. A release of the Compatibility Test Suite is not
|
||||
yet available, but will be soon. For more information, <a
|
||||
href="{@docRoot}compatibility/index.html">visit the Compatibility page.</a>
|
||||
</p>
|
||||
<p><b>Source Code Available for Android 2.3</b><br/>
|
||||
The source code for the Android 2.3 platform and software stack has been
|
||||
released! This release allows OEMs to begin preparing Android 2.3 for
|
||||
installation on new and existing devices, and allows hobbyists, enthusiasts,
|
||||
and researchers to develop custom builds. For information on how to obtain the
|
||||
software,
|
||||
<a href="{@docRoot}source/download.html">visit our 'Getting the Source' page.</a>
|
||||
</p>
|
||||
</div>
|
||||
<img style="float: right; padding-right: 1.5em;" src="{@docRoot}images/home-bugdroid.png" alt="Android Mascot"/>
|
||||
<div style="font-size: 1.3em;">
|
||||
<p>Here you can find the information and source code you need to build an
|
||||
Android-compatible device.</p>
|
||||
<p>Android is an open-source software stack for mobile devices, and a
|
||||
@@ -12,51 +32,40 @@ home=true
|
||||
created Android, and made its source code open.</p>
|
||||
<p><a href="{@docRoot}about/index.html">Learn more »</a></p>
|
||||
</div>
|
||||
<div style="float: right; width: 35%;">
|
||||
<h3 style="padding-top: 0px;">News</h3>
|
||||
<p><b>Site redesign</b><br/>
|
||||
You're looking at the new and improved source.android.com! We've updated
|
||||
the layout and site design, and also added new information. We hope you find
|
||||
these improvements helpful.</p>
|
||||
<p><b>Introducing the Compatibility Program</b><br/>
|
||||
We're pleased to introduce the Android Compatibility Program. We've released
|
||||
two tools -- the Compatibility Definition Document and the Compatibility Test
|
||||
Suite -- to help device manufacturers build compatible devices. Full details
|
||||
of the Compatibility Program will be available in the first quarter of 2010.</p>
|
||||
</div>
|
||||
<img style="float: right; padding-right: 1.5em;" src="{@docRoot}images/home-bugdroid.png" alt="Android Mascot"/>
|
||||
|
||||
<div style="clear: both;"/>
|
||||
|
||||
<table border="0" style="border: 0px; margin: 0px; padding: 0px;"><tr><td align="center" style="border: 0px; margin: 0px; padding: 0px;">
|
||||
<div class="rebox lil" style="float: left; width: 30%; margin: 1em;">
|
||||
<h2 style="color: white; background-color: #95C0D0; border: 0px;">Get Involved</h2>
|
||||
<h2 style="color: white; background-color: #95C0D0; border: 0px;">Source</h2>
|
||||
<div class="p">
|
||||
<p><img src="images/lil-wrench.png" alt="" style="margin: 1em;"/>
|
||||
<p><img src="images/lil-wrench.png" alt="" style="margin: 1em; margin-bottom: 5em;"/>
|
||||
If you're interested in contributing to the Android source code or helping
|
||||
out with the project in some other way, click here.</p>
|
||||
<p><a href="{@docRoot}source/index.html">More »</a></p>
|
||||
out with the open-source project, our Source pages have the information
|
||||
you need.</p>
|
||||
<p><a href="{@docRoot}source/index.html">Get Involved »</a></p>
|
||||
</div>
|
||||
</div>
|
||||
|
||||
<div class="rebox lil" style="float: left; width: 30%; margin: 1em;">
|
||||
<h2 style="color: white; background-color: #95C0D0; border: 0px;">Build a Device</h2>
|
||||
<h2 style="color: white; background-color: #95C0D0; border: 0px;">Porting</h2>
|
||||
<div class="p">
|
||||
<p><img src="images/lil-wrench.png" alt="" style="margin: 1em;"/>
|
||||
If you're an engineer building a device intended to run the Android
|
||||
software stack, click here to find porting information and tips.</p>
|
||||
<p><a href="{@docRoot}porting/index.html">More »</a></p>
|
||||
<p><img src="images/lil-wrench.png" alt="" style="margin: 1em; margin-bottom: 5em;"/>
|
||||
If you're an engineer building a device
|
||||
intended to run the Android software stack, look at our Porting pages for
|
||||
information and tips.</p>
|
||||
<p><a href="{@docRoot}porting/index.html">Build a Device »</a></p>
|
||||
</div>
|
||||
</div>
|
||||
|
||||
<div class="rebox lil" style="float: left; width: 30%; margin: 1em;">
|
||||
<h2 style="color: white; background-color: #95C0D0; border: 0px;">Compatibility</h2>
|
||||
<div class="p">
|
||||
<p><img src="images/lil-wrench.png" alt="" style="margin: 1em;"/>
|
||||
If you're an OEM or other organization building an Android device, click
|
||||
here to find out how to ensure that your device is fully compatible, and
|
||||
how to take advantage of the benefits of compatibility.</p>
|
||||
<p><a href="{@docRoot}compatibility/index.html">More »</a></p>
|
||||
<p><img src="images/lil-wrench.png" alt="" style="margin: 1em; margin-bottom: 5em;"/>
|
||||
If you're an organization building an Android device, you'll want to check out our
|
||||
Compatibility pages to find out how to take advantage of the benefits of
|
||||
compatibility.</p>
|
||||
<p><a href="{@docRoot}compatibility/index.html">Get Compatible »</a></p>
|
||||
</div>
|
||||
</div>
|
||||
</td></tr></table>
|
||||
|
||||
@@ -17,7 +17,8 @@ doc.type=porting
|
||||
</div>
|
||||
</div>
|
||||
|
||||
<p>Android's Bluetooth stack uses BlueZ version 3.36 for GAP, SDP, and RFCOMM profiles, and is a SIG-qualified Bluetooth 2.0 + EDR host stack.</p>
|
||||
<p>Android's Bluetooth stack uses BlueZ for GAP, SDP, and RFCOMM profiles, and
|
||||
is a SIG-qualified Bluetooth stack. </p>
|
||||
|
||||
<p>Bluez is GPL licensed, so the Android framework interacts with userspace bluez code through D-BUS IPC to avoid proprietary code.</p>
|
||||
|
||||
@@ -33,7 +34,7 @@ Solid elements represent Android blocks and dashed elements represent partner-sp
|
||||
|
||||
<a name="androidBluetoothPorting"></a><h3>Porting</h3>
|
||||
|
||||
<p>BlueZ is Bluetooth 2.0 compatible and should work with any 2.0 chipset. There are two integration points:</p>
|
||||
<p>BlueZ is Bluetooth 2.1 compatible and should work with any 2.1 chipset and is backward compatibile with older Bluetooth versions. There are two integration points:</p>
|
||||
<p><ul>
|
||||
<li>UART driver</li>
|
||||
<li>Bluetooth Power On / Off</li>
|
||||
@@ -158,14 +159,79 @@ sdptool records ADDRESS # request the SDP records of another BT device.
|
||||
<li>QDID B015261: Host stack (SDP, L2CAP, GAP, RFCOMM, SPP, AVCTP, AVRCP, GAVDP, AVDTP, A2DP)</li>
|
||||
<li>QDID B015262: EPL for HTC Sapphire (HSP, HFP)</li>
|
||||
</ul>
|
||||
<h4>Android 2.0/2.1 release (eclair)</h4>
|
||||
<h4>Platform features</h4>
|
||||
<ul>
|
||||
<li>Based on Bluez 4.47 with Linux Kernel 2.6.29</li>
|
||||
<li>Bluetooth 2.1+EDR host stack</li>
|
||||
<ul>
|
||||
<li>Support for auto-pairing with '0000' devices</li>
|
||||
<li>Support for Simple Secure Pairing</li>
|
||||
</ul>
|
||||
<li>Headset Profile 1.1 in Audio Gateway role</li>
|
||||
<li>Handsfree Profile 1.5 in Audio Gateway role</li>
|
||||
<ul>
|
||||
<li>Three-way calling </li>
|
||||
<li>Phonebook over AT commands </li>
|
||||
<li>Volume synchronization</li>
|
||||
<li>eSCO</li>
|
||||
<li>Extensive bug fixes and compatibility improvements</li>
|
||||
</ul>
|
||||
<li>Stereo Bluetooth (A2DP 1.2) in Source role</li>
|
||||
<ul>
|
||||
<li>AVDTP 1.2 in Acceptor and Initiator roles</li>
|
||||
<li>GAVDTP 1.0 in Acceptor and Initiator roles</li>
|
||||
<li>44.1 khz, stereo, software SBC codec</li>
|
||||
</ul>
|
||||
<li>Remote Control (AVRCP 1.0) in Target role</li>
|
||||
<ul>
|
||||
<li>AVCTP 1.3 in Target role</li>
|
||||
<li>play/pause/stop/prev/next</li>
|
||||
</ul>
|
||||
<li> Object Push Profile version 1.1 </li>
|
||||
<ul>
|
||||
<li>Adds ability to transfer pictures, videos</li>
|
||||
<li>Transfer of contacts using vCard is not supported in this release.</li>
|
||||
</ul>
|
||||
<li>Phone Book Address Profile version 1.0</li>
|
||||
<ul>
|
||||
<li>Phone Book Server Equipment (PSE) role supported</li>
|
||||
</ul>
|
||||
<li>Using Java Bluetooth APIs, an Android application can peform the
|
||||
following:</li>
|
||||
<ul>
|
||||
<li>Scan for other Bluetooth devices </li>
|
||||
<li>Query the local Bluetooth adapter for paired Bluetooth devices </li>
|
||||
<li>Establish RFCOMM channels </li>
|
||||
<li>Connect to other devices through service discovery </li>
|
||||
<li>Transfer data to and from other devices </li>
|
||||
<li>Manage multiple connections </li>
|
||||
</ul>
|
||||
<li>Support for Bluetooth enabled car and desk docks</li>
|
||||
<ul>
|
||||
<li>Framework support for routing Phone Call Audio and A2DP streaming using
|
||||
car and desk docks. </li>
|
||||
</ul>
|
||||
</ul>
|
||||
|
||||
<h4>Android 2.2 release (Froyo)</h4>
|
||||
<h4>Platform features</h4>
|
||||
<ul>
|
||||
<li>Based on Bluez 4.47 with Linux Kernel 2.6.32</li>
|
||||
<li>No new profiles added.</li>
|
||||
<li>Added ability to share contacts using vCard</li>
|
||||
<li>Added ability to export all contacts - useful to transfer contacts to car kits </li>
|
||||
<li>Improved compatibility with headsets and car kits. </li>
|
||||
</ul>
|
||||
|
||||
<h5> </h5>
|
||||
<h4>Future releases</h4>
|
||||
<p>This section offers a rough guide of which features the team is developing for the next release. This feature list may change without notice. It isn't possible to post scheduling advice to the mailing lists.</p>
|
||||
<ul>
|
||||
<li>Java Bluetooth API</li>
|
||||
<li>Bluez 4.x with Linux Kernel 2.6.29</li>
|
||||
<li>More profiles...</li>
|
||||
<li>Bluetooth 2.1+EDR</li>
|
||||
<li>Improved compatibility with headsets and car kits</li>
|
||||
<li>Bluetooth emulator support</li>
|
||||
<li>Bluetooth Low Energy </li>
|
||||
</ul>
|
||||
|
||||
<p><strong>Development Notes</strong></p>
|
||||
@@ -184,10 +250,4 @@ BNEP</code> support is compiled into the kernel with cupcake. <br />
|
||||
While not officially supported, you should be able to run <code>dund</code> or <code>pand</code> daemons and, using <code>pppd</code> or <code>iptables</code>, test tethering support. Next steps include plubming the DBUS APIs to these daemons up into the Android Java framework and adding code to setup the network paths via <code>pppd</code> and / or <code>iptables</code>.<br />
|
||||
<br />
|
||||
</li>
|
||||
<li><strong>Emulator Support</strong><br />
|
||||
The Android emulator does not support Bluetooth at this time and there currently aren't any plans for its support.<br />
|
||||
<br />
|
||||
</li>
|
||||
<li><strong>Bluetooth 2.1 and Simple Pairing Support</strong><br />
|
||||
In order to support these features, Android needs to move to a Bluez 4.x version. This change is not scheduled at this time.</li>
|
||||
</ul>
|
||||
|
||||
@@ -137,13 +137,7 @@ spinlock because no other thread can release it.
|
||||
(gdb) set scheduler-locking on
|
||||
</pre>
|
||||
|
||||
<p>
|
||||
Ignore SIGUSR1 if you're using JamVM. Shouldn't hurt if you're not.
|
||||
</p>
|
||||
|
||||
<pre class="prettify">
|
||||
(gdb) handle SIGUSR1 noprint
|
||||
|
||||
(gdb) where
|
||||
#0 __futex_wait () at system/klibc/android/atomics_arm.S:88
|
||||
#1 0x53010eb8 in pthread_cond_timedwait (cond=0x12081c, mutex=0x120818, abstime=0xffffffff)
|
||||
@@ -239,7 +233,7 @@ Previous frame identical to this frame (corrupt stack?)
|
||||
</pre>
|
||||
|
||||
<a name="Crash_in_C_C_code"></a><h4>Crash in C / C++ code</h4>
|
||||
<p>If it crashes, connect with <code>aproto</code> and run <code>logcat</code> on the device. You should see output like this:</p>
|
||||
<p>If it crashes, connect with <code>adb</code> and run <code>logcat</code> on the device. You should see output like this:</p>
|
||||
|
||||
<pre class="prettify">
|
||||
I/ActivityManager( 188): Starting activity: Intent { component=com.android.calendar.MonthScreen }
|
||||
|
||||
@@ -335,7 +335,7 @@ $ adb shell am instrument -w \
|
||||
<pre class="prettify">
|
||||
public class FrameworkInstrumentationTestRunner extends InstrumentationTestRunner {
|
||||
|
||||
@Override
|
||||
@Override
|
||||
public TestSuite getAllTests() {
|
||||
InstrumentationTestSuite suite = new InstrumentationTestSuite(this);
|
||||
|
||||
@@ -345,7 +345,7 @@ public class FrameworkInstrumentationTestRunner extends InstrumentationTestRunne
|
||||
return suite;
|
||||
}
|
||||
|
||||
@Override
|
||||
@Override
|
||||
public ClassLoader getLoader() {
|
||||
return FrameworkInstrumentationTestRunner.class.getClassLoader();
|
||||
}
|
||||
@@ -373,7 +373,7 @@ public class ButtonPressTest extends ActivityTestCase<MyActivity> {
|
||||
super("com.example", MyActivity.class);
|
||||
}
|
||||
|
||||
@Override
|
||||
@Override
|
||||
public void setUp() throws Exception {
|
||||
super.setUp();
|
||||
mLeftButton = (Button) getActivity().findViewById(R.id.leftButton);
|
||||
|
||||
@@ -3,10 +3,10 @@ doc.type=source
|
||||
@jd:body
|
||||
<p><i>The information on this page is a bit out of date. We'll update this
|
||||
page as soon as we can.</i></p>
|
||||
<div>The basic manifest for cupcake (and above) defines which projects are
|
||||
<div>The basic manifest for 1.6 defines which projects are
|
||||
needed to do a generic build for the emulator or for unlocked Dream devices
|
||||
(e.g. the Android Dev Phone 1). You need to have an appropriate device running
|
||||
a matching official image.<br><br>To build donut or master for dream (your
|
||||
a matching official image.<br><br>To build donut for dream (your
|
||||
device needs to be an ADP1 running an official 1.6 system):<br><ol><li>Follow
|
||||
the <a href="{@docRoot}source/download.html">normal steps</a>
|
||||
to setup repo and check out the sources.
|
||||
@@ -22,17 +22,6 @@ to setup repo and check out the sources.
|
||||
</li>
|
||||
<li>from this point, the fastboot tool (which is put automatically in your path) can be used to flash a device: boot the device into the bootloader by holding the back key while pressing the power key, and run "fastboot -w flashall".<br></li>
|
||||
</ol>
|
||||
To build cupcake for dream (your device needs to be an ADP1 running an official 1.5 system):<br><ol><li>Follow the <a href="{@docRoot}source/download.html">normal steps</a>
|
||||
to setup repo and check out the sources.
|
||||
</li>
|
||||
<li>At the root of your source tree, run ". build/envsetup.sh" like you normally would for an emulator build.
|
||||
</li>
|
||||
<li>Run "make adb" if you don't already have adb in your path.<br></li>
|
||||
<li>in vendor/htc/dream-open/ there is a script called "extract-files.sh" that must be run (from that directory) to extract some proprietary binaries from your device (*). You only need to do this once.<br></li>
|
||||
<li>run "lunch htc_dream-eng" to specifically configure the build system for dream (the default is the equivalent of "lunch generic-eng", which doesn't contain dream-specific files).<br></li>
|
||||
<li>run make from the top of the source tree.
|
||||
</li>
|
||||
<li>from this point, the fastboot tool (which is put automatically in your path) can be used to flash a device: boot the device into the bootloader by holding the back key while pressing the power key, and run "fastboot -w flashall".<br></li>
|
||||
</ol>
|
||||
* The Dream device software contains some proprietary binaries.For contractual reasons, these cannot be redistributed to be used directly with the Android Open-Source Project, but the provided script may be used to extract these binaries from your development device so that they can be correctly included in your build.These libraries include the openGL|ES library, the Qualcomm camera library, the HTC Radio Interface Library, etc.
|
||||
<p>Note: these instructions work for the sapphire (ADP2) build target, as
|
||||
well. Simply replace "dream" with "sapphire" above.</p>
|
||||
</div>
|
||||
|
||||
@@ -15,7 +15,7 @@ moment.</p>
|
||||
<h3>Notes and Explanations</h3>
|
||||
<ul>
|
||||
<li>A <i>release</i> corresponds to a formal version of the Android platform, such
|
||||
as 1.5, 2.0, and so on. Generally speaking, a release of the platform
|
||||
as 1.5, 2.1, and so on. Generally speaking, a release of the platform
|
||||
corresponds to a version of the <code>SdkVersion</code> field used in
|
||||
AndroidManifest.xml files, and defined in <code>frameworks/base/api</code> in
|
||||
the source tree.</li>
|
||||
@@ -23,34 +23,37 @@ the source tree.</li>
|
||||
stack is pulling code. These include obvious projects such as the Linux kernel
|
||||
and WebKit, but over time we are migrating some of the semi-autonomous
|
||||
Android projects (such as Dalvik, the Android SDK tools, Bionic, and so on) to
|
||||
work as "upstream" projects. These will be developed entirely in the public
|
||||
tree, and snapshots will be periodically pulled into releases.</li>
|
||||
<li>The diagram refers to "Eclair" and "Flan"; however, they are simply
|
||||
work as "upstream" projects. Generally, these projects are developed entirely in
|
||||
the public tree. For some upstream projects, development is done by contributing
|
||||
directly to the upstream project itself. See
|
||||
<a href="{@docRoot}source/submit-patches.html#upstream-projects">Upstream Projects</a>
|
||||
for details. In both cases, snapshots will be periodically pulled into releases.</li>
|
||||
<li>The diagram refers to "Eclair" and "FroYo"; however, they are simply
|
||||
placeholders, and the diagram actually reflects the overall release and
|
||||
branching strategy.</li>
|
||||
<li>At all times, the Release code-line (which may actually consist of
|
||||
<li>At all times, a release code-line (which may actually consist of
|
||||
more than one actual branch in git) is considered the sole canonical source
|
||||
code for a given Android platform. OEMs and other groups building devices
|
||||
should pull only from a Release branch.</li>
|
||||
<li>We will be setting up an "Experimental" code-line to capture changes from
|
||||
code for a given Android platform version. OEMs and other groups building devices
|
||||
should pull only from a release branch.</li>
|
||||
<li>We will set up "experimental" code-lines to capture changes from
|
||||
the community, so that they can be iterated on, with an eye toward stability.</li>
|
||||
<li>Changes that prove stable will eventually be pulled into a Release
|
||||
<li>Changes that prove stable will eventually be pulled into a release
|
||||
branch. Note that this will only apply to bug fixes, app improvements, and
|
||||
other things that do not affect the APIs of the platform.</li>
|
||||
<li>Changes will be pulled into Release branches from upstream projects
|
||||
(include the Android "upstream" projects) as necessary.</li>
|
||||
<li>Changes will be pulled into release branches from upstream projects
|
||||
(including the Android "upstream" projects) as necessary.</li>
|
||||
<li>The "n+1"th version (that is, next major version of the framework and
|
||||
platform APIs) will be developed by Google internally. (See below for
|
||||
details.)</li>
|
||||
<li>Changes will be pulled from upstream, Release, and Experimental branches
|
||||
platform APIs) will be developed by Google internally. See below for
|
||||
details.</li>
|
||||
<li>Changes will be pulled from upstream, release, and experimental branches
|
||||
into Google's private branch as necessary.</li>
|
||||
<li>When the platform APIs for the next version have stabilized and been fully
|
||||
tested, Google will cut a release of the next platform version. (This
|
||||
specifically refers to a new <code>SdkVersion</code>.) This will also
|
||||
correspond to the internal code-line being made a public Release branch, and the
|
||||
correspond to the internal code-line being made a public release branch, and the
|
||||
new current platform code-line.</li>
|
||||
<li>When a new platform version is cut, a corresponding Experimental
|
||||
code-line.</li>
|
||||
<li>When a new platform version is cut, a corresponding experimental
|
||||
code-line will be created at the same time.</li>
|
||||
</ul>
|
||||
<h3>About Private Code-Lines</h3>
|
||||
<p>The source management strategy above includes a code-line that Google will
|
||||
@@ -62,9 +65,9 @@ deal with more extant platform versions than strictly necessary. Meanwhile,
|
||||
Google retains responsibility for the strategic direction of Android as a
|
||||
platform and a product. Our approach is based on focusing on a small number of
|
||||
flagship devices to drive features, and secure protections of Android-related
|
||||
intellectual property through patents and the like.</p>
|
||||
intellectual property.</p>
|
||||
<p>As a result, Google frequently has possession of confidential
|
||||
information of third parties, and we must refrain from revealing patentable
|
||||
information of third parties, and we must refrain from revealing sensitive
|
||||
features until we've secured the appropriate protections. Meanwhile, there are
|
||||
real risks to the platform arising from having too many platform versions
|
||||
extant at once. For these reasons, we have structured the open-source project
|
||||
|
||||
File diff suppressed because it is too large
Load Diff
@@ -1,6 +1,7 @@
|
||||
page.title=Using Repo and Git
|
||||
doc.type=source
|
||||
@jd:body
|
||||
<div>
|
||||
<p>To work with the Android code, you will need to use both Git and Repo.<br></p>
|
||||
<ul><li><i>Git</i>
|
||||
is an open-source version-control system designed to handle very large projects that are distributed over multiple repositories. In the context of Android, we use Git for local operations such as local branching, commits, diffs, and edits.<br><br></li>
|
||||
@@ -22,8 +23,8 @@ Already a Git user?
|
||||
In most situations, you can use Git instead of Repo, or mix Repo and Git
|
||||
commands to form complex commands. Using Repo for basic across-network
|
||||
operations will make your work much simpler, however.
|
||||
<br></div>
|
||||
<div><div><h2>
|
||||
<br>
|
||||
<div><h2>
|
||||
Task reference <br></h2>
|
||||
The task list below shows a summary of how to do common Repo and Git tasks.
|
||||
For complete quick-start information and examples, see <a
|
||||
@@ -316,4 +317,3 @@ Documentation on specific tasks:
|
||||
At intervals, you use git commit to save a snapshot of the staged files and a log message that describes the change.<br><br><i>Manifest</i>
|
||||
<br>A manifest file that contains a list of repositories and a mapping of where the files from these repositories will be located within your working directory. When you synchronize your files, the files contained in the repositories that are listed in the manifest will be pulled into your working directory.</div>
|
||||
</div>
|
||||
</div>
|
||||
|
||||
@@ -3,7 +3,7 @@ doc.type=source
|
||||
@jd:body
|
||||
<div>
|
||||
<p>Thanks for your interest in Android! Here are some ways you can get involved
|
||||
and help Google improve Android. For background on the Android project and our
|
||||
and help us improve Android. For background on the Android project and our
|
||||
goals, check out the <a href="{@docRoot}about/philosophy.html">Project
|
||||
Philosophy page</a>.</p>
|
||||
|
||||
@@ -11,7 +11,7 @@ Philosophy page</a>.</p>
|
||||
<p>One of the easiest and most effective ways you can help improve Android is
|
||||
to file bugs. For more information, visit the <a
|
||||
href="{@docRoot}source/report-bugs.html">Reporting Bugs</a> page.</p>
|
||||
<p>Please note that we can't guarantee that any particular bug can be fixed in
|
||||
<p>Please note that we can't guarantee that any particular bug will be fixed in
|
||||
any particular release. To see what happens to your bug once you report it,
|
||||
read <a href="{@docRoot}source/life-of-a-bug.html">Life of a Bug</a>.</p>
|
||||
|
||||
@@ -26,8 +26,10 @@ compatible Android devices, using the SDK.</p>
|
||||
|
||||
<h2>Contribute to the Code</h2>
|
||||
<p>Code is King. We'd love to review any changes you submit, so please check
|
||||
out the source, pick a bug or feature, and get coding.</p>
|
||||
<p>You can get started with by learning about the <a
|
||||
out the source, pick a bug or feature, and get coding. Note that the smaller
|
||||
and more targetted your patch submissions, the easier it will be for us to
|
||||
review them.</p>
|
||||
<p>You can get started with Android by learning about the <a
|
||||
href="{@docRoot}source/life-of-a-patch.html">Life of a Patch</a>, and by
|
||||
learning about <code>git</code>, <code>repo</code>, and other tools using the
|
||||
links to the left. If you need help along the way, you can join our <a
|
||||
|
||||
@@ -4,18 +4,15 @@ doc.type=source
|
||||
<div>
|
||||
<p>The Android Open Source Project uses a few <a
|
||||
href="http://www.opensource.org/">open source initiative</a> approved open
|
||||
source licenses to enable availability of source code and to accept
|
||||
contributions from individuals and corporations.</p>
|
||||
source licenses for our software.</p>
|
||||
<h2>Android Open Source Project license</h2>
|
||||
<p>The preferred license for the Android Open Source Project is <a
|
||||
href="http://www.apache.org/licenses/LICENSE-2.0">Apache 2.0</a>. Apache 2.0
|
||||
is a commercial and open source friendly open source license. The majority of
|
||||
the Android platform is licensed under the <a
|
||||
href="http://www.apache.org/licenses/">Apache 2.0 license</a>. While the
|
||||
project will strive to adhere to the preferred license, there may be
|
||||
exceptions which will be handled on a case-by-case basis. For example, the
|
||||
Linux kernel patches are under the GPLv2 license with system exceptions, which
|
||||
can be found on <a
|
||||
<p>The preferred license for the Android Open Source Project is the <a
|
||||
href="http://www.apache.org/licenses/LICENSE-2.0">Apache Software License,
|
||||
2.0</a> ("Apache 2.0"), and the majority of the Android software is licensed
|
||||
with Apache 2.0. While the project will strive to adhere to the preferred
|
||||
license, there may be exceptions which will be handled on a case-by-case
|
||||
basis. For example, the Linux kernel patches are under the GPLv2 license with
|
||||
system exceptions, which can be found on <a
|
||||
href="http://www.kernel.org/pub/linux/kernel/COPYING">kernel.org</a>.
|
||||
</p>
|
||||
<h2>Contributor License Grants</h2>
|
||||
@@ -25,7 +22,7 @@ Source Project will be required to complete, sign, and submit an <a
|
||||
href="{@docRoot}source/cla-individual.html">Individual
|
||||
Contributor License Grant</a>. The grant can be executed online through the <a
|
||||
href="https://review.source.android.com/#settings,agreements">code review
|
||||
tool</a>. The agreement clearly defines the terms under which intellectual
|
||||
tool</a>. The grant clearly defines the terms under which intellectual
|
||||
property has been contributed to the Android Open Source Project. This license
|
||||
is for your protection as a contributor as well as the protection of the
|
||||
project; it does not change your rights to use your own contributions for any
|
||||
@@ -33,7 +30,7 @@ other purpose.</p>
|
||||
<p>For a <b>corporation</b> (or other entity) that has assigned employees to
|
||||
work on the Android Open Source Project, a <a
|
||||
href="{@docRoot}source/cla-corporate.html">Corporate
|
||||
Contributor License Grant</a> is available. This version of the Grant allows a
|
||||
Contributor License Grant</a> is available. This version of the grant allows a
|
||||
corporation to authorize contributions submitted by its designated employees
|
||||
and to grant copyright and patent licenses. Note that a Corporate Contributor
|
||||
License Grant does not remove the need for any developer to sign their own
|
||||
|
||||
@@ -57,7 +57,7 @@ might have been reported via an internal bug-tracking system,
|
||||
which is considered the "master" copy. (For instance, Google maintains one
|
||||
such private issue tracker, intended primarily for bugs which contain
|
||||
sensitive information which can't be revealed publicly.)</p></li>
|
||||
<li><b>Assigned</b><li>Like <code>Unassigned</code>, but the bug has been
|
||||
<li><b>Assigned</b><p>Like <code>Unassigned</code>, but the bug has been
|
||||
actually assigned to a specific contributor to fix.</p></li>
|
||||
</ul>
|
||||
<p>Typically, a given bug will start in <code>Unassigned</code>, where it
|
||||
@@ -77,8 +77,8 @@ determined to not require any action.</p>
|
||||
<li><b>Spam</b><p>A kind soul sent us some delicious pork products, that we,
|
||||
regrettably, do not want.</p></li>
|
||||
<li><b>Question</b><p>Someone mistook the issue tracker for a help forum.
|
||||
(This is not as uncommon as one might assume: many users whose native language
|
||||
isn't English can make this mistake.)</p></li>
|
||||
(This is not as uncommon as you might think: many users whose native language
|
||||
isn't English misunderstand the site and make this mistake.)</p></li>
|
||||
<li><b>Unreproducible</b><p>An AOSP contributor attempted to reproduce the
|
||||
behavior described, and was unable to do so. This sometimes means that the bug
|
||||
is legitimate but simply rare or difficult to reproduce, and sometimes means
|
||||
|
||||
@@ -1,157 +0,0 @@
|
||||
page.title=Android 1.0 Features
|
||||
doc.type=source
|
||||
@jd:body
|
||||
<div><div><div><div>This page provides a high-level overview of Android 1.0
|
||||
features. To see the code itself, you can either use the <a href="http://android.git.kernel.org/">GitWeb</a>
|
||||
interface to view snapshots of the files, or you can <a
|
||||
href="{@docRoot}source/download.html">download</a>
|
||||
the source code onto your local machine.<br><br><b>Applications</b>
|
||||
<br><br>The Android platform comes with a variety of applications written using the Java programming language:<br><ul><li><i>Home</i>
|
||||
displays applications, widgets, and shortcuts. It also supports customizable wall paper.
|
||||
</li>
|
||||
<li><i>Phone</i>
|
||||
supports regular telephony functions as well as call controls, conference calls, supplementary services, and easy integration with <i>Contacts</i>
|
||||
.<br></li>
|
||||
<li><i>Web Browser</i>
|
||||
is a fully featured WebKit-based browser that supports HTML and XHTML.
|
||||
</li>
|
||||
<li><i>Email</i>
|
||||
provides access to email servers commonly found on the Internet and supports POP3, IMAP4, and SMTP.
|
||||
</li>
|
||||
<li><i>Media Player</i>
|
||||
enables managing, importing, and playing back content that has been encoded in various forms.<br></li>
|
||||
<li><i>Alarm Clock, Calculator, Calendar, Camera, Contacts, IM, MMS, Settings,</i>
|
||||
<i>Voice Dialer</i>
|
||||
, and many other applications are also included in this release.<br></li>
|
||||
</ul>
|
||||
<b>Application framework</b>
|
||||
<br><br></div>
|
||||
<div>The Android Application Framework has been designed to provide a rich set of APIs for third-party application developers. For more information, visit the <a href="http://developer.android.com/guide/index.html">Android SDK developer guide</a>
|
||||
.<b><br></b>
|
||||
</div>
|
||||
<div></div>
|
||||
<div><b>Android runtime</b>
|
||||
<b><br><br></b>
|
||||
Android applications run on Dalvik, a custom virtual machine (VM) designed for embedded use. The Dalvik VM runs dex executable files, which are typically compiled from source code written in Java.<br><br></div>
|
||||
<div>The dex executable format is designed to have these characteristics:<br><ul><li>Efficient on-device storage.
|
||||
</li>
|
||||
<li>Efficient runtime memory usage.
|
||||
</li>
|
||||
<li>Ease of interpretation.<br></li>
|
||||
</ul>
|
||||
Dalvik has the following runtime characteristics:
|
||||
<ul><li>Efficient support for multiple concurrent VM processes, including amortized initialization and heavily shared memory.
|
||||
</li>
|
||||
<li>Optimized interpreter.
|
||||
</li>
|
||||
<li>Efficient linkage to low-level native code.
|
||||
</li>
|
||||
<li>A familiar and rich set of core library functionality. For a complete list of supported libraries, see <a href="http://developer.android.com/reference/packages.html">http://developer.android.com/reference/packages.html</a>
|
||||
.
|
||||
</li>
|
||||
<li>Enhanced JDWP support, enabling easier debugging of multiple processes simultaneously.
|
||||
</li>
|
||||
<li>JNI support.
|
||||
</li>
|
||||
</ul>
|
||||
<b>Native libraries <br></b>
|
||||
<br>The Android platform makes use of many native libraries, including:<br><ul><li><i>Bionic</i>
|
||||
, a custom libc implementation optimized for embedded systems.
|
||||
</li>
|
||||
<li>Graphics libraries for 2D and 3D (OpenGL ES 1.0) graphics support.<br></li>
|
||||
<li>openCore to provide the bulk of Android's multimedia capability. It includes support for network streaming (HTTP and RTSP), as well as most of the codecs and media file parsers used by the system.<br></li>
|
||||
<li>sqlite to support having a lightweight transactional data store.
|
||||
</li>
|
||||
<li>WebKit library to power Android's WebKit based full web browser.<br></li>
|
||||
</ul>
|
||||
<br><b>System software</b>
|
||||
<b><br></b>
|
||||
<br></div>
|
||||
<div>About Android's operating system:
|
||||
<ul><li>Based on Linux 2.6.25 for ARM.<br></li>
|
||||
<li>Platform currently expects ARM V5T or better architecture. Support for earlier architectures could be added, but CPUs without an MMU would be difficult to support.
|
||||
</li>
|
||||
<li>A set of kernel enhancements are provided to support Android. The patches include alarm, ashmem, binder, power management, low memory killer, kernel degugger, and logger <b>.<br></b>
|
||||
</li>
|
||||
<li>While the platform is designed to be chipset agnostic, and will run on virtually any ARM-based Linux kernel environment, version 1.0 of the platform has been tested and verified on the MSM 7K chipsets <b>.</b>
|
||||
Over time we expect to see support for other major chipsets.
|
||||
Kernel patches for MSM based chipsets are also available.
|
||||
</li>
|
||||
<li>FAT32 file system is supported.
|
||||
</li>
|
||||
<li>Support for TCP/IP (TCP, UDP, etc).
|
||||
</li>
|
||||
</ul>
|
||||
</div>
|
||||
<div>A minimal reference bootloader for the supported chipset is provided. It is capable of booting Linux from RAM, debugger, and NAND Flash.<br></div>
|
||||
<div><br>About Android's support for debugging:<br><ul><li>Debugging native code is supported via GDB (GNU Project Debugger) over USB.
|
||||
</li>
|
||||
<li>Debugging managed code is supported via any JDWP-compatible debugger over USB.
|
||||
</li>
|
||||
<li>Logging and crash logs supported for debugging.
|
||||
</li>
|
||||
</ul>
|
||||
<b>Supported hardware <br></b>
|
||||
<ul><li>The platform will run on almost on any ARM based Linux kernel environment.
|
||||
</li>
|
||||
<li>The platform requires a minimum of 128 MB of RAM and 256 MB ofFlash memory. AnOEM may want to support more Flash memory to make it possible to download more third-party applications to user devices.<br></li>
|
||||
<li>The platform will interface with a baseband radio stack provided externally via a Radio Interface Layer (RIL).
|
||||
</li>
|
||||
<li>802.11 b/g Wi-Fi
|
||||
</li>
|
||||
<li>Standard USB interface, including USB 2.0
|
||||
</li>
|
||||
<li>Bluetooth 2.0 EDR (Enhanced Data Rate)
|
||||
</li>
|
||||
<li>Camera for still and video capture
|
||||
</li>
|
||||
<li>Removable storage
|
||||
</li>
|
||||
</ul>
|
||||
<b>Supported display</b>
|
||||
<br><ul><li>HVGA resolution <br></li>
|
||||
<li>16 bit color depth <br></li>
|
||||
<li>Landscape and portrait orientation, including dynamic runtime switching
|
||||
</li>
|
||||
<li>Finger-based touchscreen navigation
|
||||
</li>
|
||||
</ul>
|
||||
<b>Supported keypads and buttons</b>
|
||||
<br><ul><li>QWERTY
|
||||
</li>
|
||||
<li>5-way navigation
|
||||
</li>
|
||||
<li>Hardware buttons: Send, End, Home, Back, Menu</li>
|
||||
<li>Power button
|
||||
</li>
|
||||
<li>Volume keys (up and down)
|
||||
</li>
|
||||
<li>Camera trigger button, including detection for both partial press (to focus) and full press (to actually take a picture)
|
||||
</li>
|
||||
</ul>
|
||||
<b>Supported audio outputs</b>
|
||||
<br><ul><li>Audio output via the headphone jack (mono and stereo)
|
||||
</li>
|
||||
<li>64 kbps Bluetooth audio supported</li>
|
||||
</ul>
|
||||
<b>Supported notifications</b>
|
||||
<br><ul><li>LEDs
|
||||
</li>
|
||||
<li>Vibration
|
||||
</li>
|
||||
</ul>
|
||||
<b>Supported radio and telephony features <br></b>
|
||||
<ul><li>GPRS, EDGE, UMTS, HSDPA
|
||||
</li>
|
||||
<li>International roaming, SMS, MMS <br></li>
|
||||
<li>Emergency call support <br></li>
|
||||
<li>Supplementary Services for Telephony, for example call waiting and conference calling <br></li>
|
||||
<li>Unstructured Supplementary Service Data (USSD)
|
||||
</li>
|
||||
<li>Reference Radio Interface Layer (RIL)
|
||||
</li>
|
||||
</ul>
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
@@ -1,198 +0,0 @@
|
||||
page.title=Android 1.5 Features
|
||||
doc.type=source
|
||||
@jd:body
|
||||
<h3><b>Release features - Android 1.5</b>
|
||||
</h3>
|
||||
<div><div><div><div><b>Previous release highlights</b>
|
||||
:<a href="{@docRoot}source/overview-1.0.html">Android 1.0</a>
|
||||
<br><br>This page provides a high-level overview of the new features added to
|
||||
Android 1.5. To see the code itself, you can either use the<a href="http://android.git.kernel.org/">GitWeb</a>
|
||||
interface to view snapshots of the files, or you can<a
|
||||
href="{@docRoot}source/download.html">download</a>
|
||||
the source code onto your local machine. You can use<i>repo init -u</i>
|
||||
git://android.git.kernel.org/platform/manifest.git<i>-b android-1.5</i>
|
||||
to download the source code for Android 1.5.<br><br><b>User interface refinements:</b>
|
||||
<br><ul><li>System-wide:
|
||||
<ul><li>Refinement of all core UI elements
|
||||
</li>
|
||||
<li>Animated window transitions (off by default)
|
||||
</li>
|
||||
<li>Accelerometer-based application rotations
|
||||
</li>
|
||||
</ul>
|
||||
</li>
|
||||
<li>UI polish for:
|
||||
<ul><li>In-call experience
|
||||
</li>
|
||||
<li>Contacts, Call log, and Favorites
|
||||
</li>
|
||||
<li>SMS MMS
|
||||
</li>
|
||||
<li>Browser
|
||||
</li>
|
||||
<li>Calendar
|
||||
</li>
|
||||
<li>Email
|
||||
</li>
|
||||
<li>Camera Gallery
|
||||
</li>
|
||||
<li>Application management
|
||||
</li>
|
||||
</ul>
|
||||
</li>
|
||||
</ul>
|
||||
<div><b><br>Performance improvements:</b>
|
||||
<br></div>
|
||||
<ul><li>Faster Camera start-up and image capture
|
||||
</li>
|
||||
<li>Much faster acquisition of GPS location (powered by SUPL AGPS)
|
||||
</li>
|
||||
<li>Smoother page scrolling in Browser
|
||||
</li>
|
||||
</ul>
|
||||
<br><b>Applications</b>
|
||||
<br><ul><li>Camera Gallery
|
||||
</li>
|
||||
<ul><li>Video recording
|
||||
</li>
|
||||
<li>Video playback (MPEG-4 3GP formats)
|
||||
</li>
|
||||
</ul>
|
||||
<li>Browser
|
||||
</li>
|
||||
<ul><li>Updated with latest Webkit browser Squirrelfish Javascript engines
|
||||
</li>
|
||||
<li>Copy 'n paste in browser
|
||||
</li>
|
||||
<li>Search within a page
|
||||
</li>
|
||||
<li>User-selectable text-encoding
|
||||
</li>
|
||||
<li>UI changes include:
|
||||
</li>
|
||||
<ul><li>Unified Go and Search box
|
||||
</li>
|
||||
<li>Tabbed bookmarks/history/most-visited screen
|
||||
</li>
|
||||
</ul>
|
||||
</ul>
|
||||
<li>Contacts
|
||||
</li>
|
||||
<ul><li>Shows user picture for Favorites
|
||||
</li>
|
||||
<li>Specific date/time stamp for events in call log
|
||||
</li>
|
||||
<li>One-touch access to a contact card from call log event
|
||||
</li>
|
||||
</ul>
|
||||
</ul>
|
||||
<b><br>Application framework</b>
|
||||
<br><br></div>
|
||||
<div><ul><li>On-screen soft keyboard
|
||||
</li>
|
||||
<ul><li>Works in both portrait and landscape orientation
|
||||
</li>
|
||||
<li>Support for user installation of 3rd party keyboards
|
||||
</li>
|
||||
<li>User dictionary for custom words
|
||||
</li>
|
||||
</ul>
|
||||
<li>Home screen
|
||||
</li>
|
||||
<ul><li>Widgets
|
||||
</li>
|
||||
<ul><li>Bundled home screen widgets include: analog clock, calendar, music player, picture frame, and search
|
||||
</li>
|
||||
</ul>
|
||||
<li>Live folders
|
||||
</li>
|
||||
</ul>
|
||||
<li>UI framework
|
||||
</li>
|
||||
<ul><li>Framework for easier background/UI thread interaction
|
||||
</li>
|
||||
<li>New SlidingDrawer widget
|
||||
</li>
|
||||
<li>Horizontal ScrollView widget
|
||||
</li>
|
||||
</ul>
|
||||
<li>Home Screen framework
|
||||
</li>
|
||||
<ul><li>APIs for creating secure home screen widgets
|
||||
</li>
|
||||
<li>APIs for populating live folders with custom content
|
||||
</li>
|
||||
</ul>
|
||||
<li>Media framework
|
||||
</li>
|
||||
<ul><li>Raw audio recording and playback APIs
|
||||
</li>
|
||||
<li>Interactive MIDI playback engine
|
||||
</li>
|
||||
<li>Video recording APIs for developers (3GP format)
|
||||
</li>
|
||||
<li>Video and photo sharing Intents
|
||||
</li>
|
||||
<li>Media search Intent
|
||||
</li>
|
||||
</ul>
|
||||
<li>Input Method framework
|
||||
</li>
|
||||
<ul><li>Text prediction engine
|
||||
</li>
|
||||
<li>Ability to provide downloadable IMEs to users
|
||||
</li>
|
||||
</ul>
|
||||
<li>Speech recognition framework
|
||||
</li>
|
||||
<ul><li>Support for using speech recognition libraries via Intent
|
||||
</li>
|
||||
</ul>
|
||||
<li>Misc API additions
|
||||
</li>
|
||||
<ul><li>LocationManager - Applications can get location change updates via Intent
|
||||
</li>
|
||||
<li>WebView - Touch start/end/move/cancel DOM event support
|
||||
</li>
|
||||
<li>SensorManager - redesigned sensor APIs
|
||||
</li>
|
||||
<li>GLSurfaceView - convenience framework for creating OpenGL applications
|
||||
</li>
|
||||
<li>Broadcast Intent for app update install succeeded - for smoother app upgrade experience
|
||||
</li>
|
||||
</ul>
|
||||
</ul>
|
||||
</div>
|
||||
<div></div>
|
||||
<div><br><b>System software</b>
|
||||
<br><br></div>
|
||||
<ul><li>New Linux kernel (version 2.6.27)
|
||||
</li>
|
||||
<li>SD card filesystem auto-checking and repair
|
||||
</li>
|
||||
<li>SIM Application Toolkit 1.0
|
||||
</li>
|
||||
</ul>
|
||||
<div><b><br>Supported hardware<br></b>
|
||||
<ul><li>Bluetooth</li>
|
||||
<ul><li>Stereo Bluetooth support (A2DP and AVCRP profiles)
|
||||
</li>
|
||||
<li>Auto-pairing
|
||||
</li>
|
||||
<li>Improved handsfree experience
|
||||
</li>
|
||||
</ul>
|
||||
</ul>
|
||||
<br><b>Developer tools</b>
|
||||
<br></div>
|
||||
<div><ul><li>Support for multiple versions of Android in a single SDK installation
|
||||
</li>
|
||||
<li>Improved JUnit support in ADT
|
||||
</li>
|
||||
<li>Easier application performance profiling
|
||||
</li>
|
||||
</ul>
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
@@ -1,93 +1,36 @@
|
||||
page.title=Android 1.6 Platform Overview
|
||||
page.title=Android 2.1 Platform
|
||||
doc.type=source
|
||||
@jd:body
|
||||
<p>This page provides a high-level overview of the new features added to
|
||||
Android 1.6. To see the code itself, you can either use the <a
|
||||
href="http://android.git.kernel.org/">GitWeb</a>
|
||||
interface to view snapshots of the files, or you can <a
|
||||
href="{@docRoot}source/download.html">download</a>
|
||||
the source code onto your local machine. You can use <code>repo init -u
|
||||
git://android.git.kernel.org/platform/manifest.git -b android-1.6</code>
|
||||
to download the source code for Android 1.6.</p>
|
||||
<p><i>Note: platform overview information for Android 2.x has not yet been
|
||||
published, since the <a
|
||||
href="{@docRoot}compatibility/index.html">Compatibility Program</a> for
|
||||
Android 2.x has not yet launched. When the Compatibilty Definition Document
|
||||
for 2.x is released, this page will be updated to match.</i></p>
|
||||
<p>Information about older Android releases is also available:<ul>
|
||||
<li><a href="{@docRoot}source/overview-1.5.html">Android 1.5 Platform Overview</a></li>
|
||||
<li><a href="{@docRoot}source/overview-1.0.html">Android 1.0 Platform Overview</a></li>
|
||||
</ul></p>
|
||||
<h2>User interface refinements</h2>
|
||||
<h3>Quick Search Box for Android </h3>
|
||||
<p>Android 1.6 includes a redesigned search framework that provides a quick, effective, and consistent way for users to search across multiple sources—such as browser bookmarks history, contacts, and the web—directly from the home screen.
|
||||
</p>
|
||||
<p><br></p>
|
||||
<p>The system constantly learns which search results are more relevant based on what is clicked. So popular contacts or apps that have previously been picked will bubble up to the top when a user types the first few letters of a relevant query.
|
||||
</p>
|
||||
<p><br></p>
|
||||
<p>The search framework also provides developers a way to easily expose relevant content from their applications in Quick Search Box.
|
||||
</p>
|
||||
<h3>Camera, Camcorder, and Gallery </h3>
|
||||
<p>An updated user interface provides an integrated camera, camcorder, and gallery experience. Users can quickly toggle between still and video capture modes. Additionally, the gallery enables users to select multiple photos for deletion.<br></p>
|
||||
<p><br></p>
|
||||
<p>Android 1.6 also provides a much faster camera experience. Compared to the previous release, launching the camera is now 39% faster, and there is a 28% improvement in the time from completing one shot to the next.
|
||||
</p>
|
||||
<h3>VPN, 802.1x </h3>
|
||||
<p>A new Virtual Private Network (VPN) control panel in Settings allows users to configure and connect to the following types of VPNs:
|
||||
</p>
|
||||
<ul><li>L2TP/IPSEC pre-shared key based VPN
|
||||
</li>
|
||||
<li>L2TP/IPsec certificate based VPN
|
||||
</li>
|
||||
<li>L2TP only VPN
|
||||
</li>
|
||||
<li>PPTP only VPN
|
||||
</li>
|
||||
</ul>
|
||||
<h3>Battery usage indicator </h3>
|
||||
<p>A new battery usage screen lets users see which apps and services are consuming battery power. If the user determines that a particular service or application is using too much power, they can take action to save the battery by adjusting settings, stopping the application, or uninstalling the application.
|
||||
</p>
|
||||
<h3>Accessibility </h3>
|
||||
<p>Users will be able to download new accessibility services built on the new accessibility framework and enable them in Settings.
|
||||
</p>
|
||||
<h2>New Platform Technologies </h2>
|
||||
<h3>Expanded Search Framework </h3>
|
||||
<p>The Android search framework has been redesigned and expanded to provide third-party applications the opportunity to surface content from their applications in Quick Search Box, the global search tool. To do this, developers will need to make their app "searchable" and provide suggestions in response to user queries. To enable application search suggestions, users simply select each application from which they'd like to receive suggestions, under Searchable items in the Search settings.
|
||||
</p>
|
||||
<h3>Text-to-speech engine</h3>
|
||||
<p>Android 1.6 features a multi-lingual speech synthesis engine called Pico. It allows any Android application to "speak" a string of text with an accent that matches the language. The engine supports the following languages: English (American and British accents), French, Italian, German and Spanish. If you're using a T-Mobile G1 or Dream device, you'll need to download the SpeechSynthesis Data Installer from Android Market, which includes the "voices" needed by the text-to-speech engine.
|
||||
</p>
|
||||
<h3>Gestures </h3>
|
||||
<p>A new gestures framework provides application developers with a framework for creating, storing, loading, and recognizing gestures and associating them with specific actions.
|
||||
</p>
|
||||
<p>Developers can use the new GestureBuilder tool included in the Android 1.6 SDK to generate libraries of gestures to include with their application.
|
||||
</p>
|
||||
<h3>Accessibility </h3>
|
||||
<p>Android 1.6 provides a new accessibility framework. With this framework, developers can create accessibility plugins that respond to user input, such as making a sound when a new window is shown, vibrating when navigating to the top of a list, and providing spoken feedback.
|
||||
</p>
|
||||
<h3>Expanded support for screen densities and resolutions </h3>
|
||||
<p>Android 1.6 adds screen support that enables applications to be rendered properly on different display resolutions and densities. Developers can also specify the types of screens supported by their application.
|
||||
</p>
|
||||
<h3>Telephony support for CDMA </h3>
|
||||
<p>Android 1.6 includes support for CDMA in the telephony stack.
|
||||
</p>
|
||||
<h3>New version of OpenCore </h3>
|
||||
<p>Android 1.6 includes the updated OpenCore 2 media engine, which has:
|
||||
</p>
|
||||
<ul><li>Support for OpenMAX encoders
|
||||
</li>
|
||||
<li>Support for additional audio codecs in AuthorEngine
|
||||
</li>
|
||||
<li>Improved buffering model supports shared buffers allocated in the decoder
|
||||
</li>
|
||||
</ul>
|
||||
<h3>2.6.29 Linux kernel </h3>
|
||||
<p>Android 1.6 upgrades the Linux kernel from 2.6.27 to 2.6.29.
|
||||
</p>
|
||||
<h2>New Framework APIs</h2>
|
||||
<p>For a detailed overview of new APIs, see the <a
|
||||
href="http://developer.android.com/sdk/android-1.6.html#api-changes">Version
|
||||
Notes</a>. For a complete report of all API changes, see the <a
|
||||
href="http://developer.android.com/sdk/api_diff/4/changes.html">API
|
||||
Differences Report</a>.</p>
|
||||
<p>Our sister site, <a
|
||||
href="http://developer.android.com/">http://developer.android.com/</a>,
|
||||
includes feature overviews of the various Android platform versions.
|
||||
The links below will take you to developer.android.com where you can view this
|
||||
information.</p>
|
||||
<p>The links below will navigate you away from this site.</p>
|
||||
<h3><a href="http://developer.android.com/sdk/android-2.3-highlights.html">Android 2.3</a></h3>
|
||||
<p>Android 2.3 corresponded to the "Gingerbread" milestone branch, and has an API level of 9.</p>
|
||||
<h3><a href="http://developer.android.com/sdk/android-2.2-highlights.html">Android 2.2</a></h3>
|
||||
<p>Android 2.2 corresponded to the "FroYo" milestone branch, and has an API level of 8.</p>
|
||||
<h3><a href="http://developer.android.com/sdk/android-2.0-highlights.html">Android 2.1</a></h3>
|
||||
<p>Android 2.1 corresponded to the "Eclair" milestone branch, and has an API level of
|
||||
7.</p>
|
||||
<p>The Eclair branch was also used for 2.0 and 2.0.1; however, both of those
|
||||
releases were quickly obsoleted by the version 2.1 Eclair release. As Android
|
||||
2.1 includes key bug fixes and improvements not present in 2.0/2.0.1, only
|
||||
Android 2.1 should be used for new devices. As there is no compatibility
|
||||
program for 2.0 or 2.0.1, the officially compatible Eclair-based release is Android
|
||||
2.1. (The linked document refers to Android 2.0, because there were
|
||||
no new platform features added in 2.1.)</p>
|
||||
<h3><a href="http://developer.android.com/sdk/android-1.6-highlights.html">Android 1.6</a></h3>
|
||||
<p>Android 1.6 corresponded to the "Donut" milestone branch, and has an API level of
|
||||
4.</p>
|
||||
<h3><a href="http://developer.android.com/sdk/android-1.5-highlights.html">Android 1.5</a></h3>
|
||||
<p>Android 1.5 corresponded to the "Cupcake" milestone branch, and has an API
|
||||
level of 3.</p>
|
||||
<h3><a href="http://developer.android.com/sdk/android-1.1.html">Android 1.1</a></h3>
|
||||
<p>Android 1.1 has an API level of 2. Android 1.1 was known as
|
||||
"Petit Four" internally, though this name was not used officially.</p>
|
||||
<h3>Android 1.0</h3>
|
||||
<p>was the first release of Android, and has an API
|
||||
level of 1. Since it was the first released version of Android, no platform
|
||||
highlights were prepared for this release.</p>
|
||||
|
||||
@@ -77,7 +77,7 @@ import android.util.Log;
|
||||
|
||||
public class TestObjectNull extends Activity {
|
||||
/** Called when the activity is first created. */
|
||||
@Override
|
||||
@Override
|
||||
public void onCreate(Bundle icicle) {
|
||||
super.onCreate(icicle);
|
||||
setContentView(R.layout.main);
|
||||
|
||||
@@ -15,22 +15,22 @@ href="{@docRoot}source/index.html">Get Involved</a>.</p>
|
||||
|
||||
<h2>Contributor</h2>
|
||||
<p>A "Contributor" is anyone making contributions to the AOSP source code,
|
||||
including both employees of Google or other companies, as well as
|
||||
external developers who are contributing to Android on their own behalf.
|
||||
There is no distinction between Contributors who are employed by
|
||||
Google, and those who are not: all engineers use the same git/gerrit tools,
|
||||
follow the same code review process, and are subject to the same requirements
|
||||
on code style and so on.</p>
|
||||
including both employees of Google or other companies, as well as external
|
||||
developers who are contributing to Android on their own behalf. There is no
|
||||
distinction between Contributors who are employed by Google, and those who are
|
||||
not: all engineers use the same tools (<code>git</code>, <code>repo</code>,
|
||||
and <code>gerrit</code>), follow the same code review process, and are subject
|
||||
to the same requirements on code style and so on.</p>
|
||||
<p/>
|
||||
|
||||
<h2>Developer</h2>
|
||||
<p>A "Developer" is an engineer writing applications that run on Android
|
||||
devices. There is, of course, no difference in skillset between a "Developer"
|
||||
and a "Contributor"; AOSP simply uses "Developer" to help identify our audience.
|
||||
Since the key purpose of Android is to cultivate an open development platform,
|
||||
"Developers" are one of the key customers of the Android platform. As such, we
|
||||
talk about them a lot, though this isn't technically a separate role in the
|
||||
AOSP <i>per se.</i></p>
|
||||
and a "Contributor", but AOSP uses "Developer" to distinguish between
|
||||
engineers using the platform and those contributing to it. Developers are
|
||||
(along with end users) the "customers" of the platform that the Contributors
|
||||
create. As such, we talk about Developers a lot, though this isn't technically
|
||||
a separate role in the AOSP <i>per se.</i></p>
|
||||
<p/>
|
||||
|
||||
<h2>Verifier</h2>
|
||||
@@ -62,12 +62,12 @@ responsible for the following:</p>
|
||||
releases.</li>
|
||||
<li>Designate Verifiers and Approvers for submitted patches.</li>
|
||||
<li>Be fair and unbiased while reviewing changes. Accept or reject patches
|
||||
based on technical merit and alignment with the Android platform.</li>
|
||||
based on technical merit and alignment with the Android strategy.</li>
|
||||
<li>Review changes in a timely manner and make best efforts to communicate
|
||||
when changes are not accepted.</li>
|
||||
<li>Optionally maintain a web site for the project for information and
|
||||
documents specific to the project.</li>
|
||||
<li>Act as a facilitator in resolving technical conflicts.</li>
|
||||
<li>Be the public face for the project and the go-to person for questions
|
||||
<li>Be a public face for the project and the go-to person for questions
|
||||
related to the project.</li>
|
||||
</ul>
|
||||
|
||||
@@ -1,6 +1,7 @@
|
||||
page.title=Android Contributors' Workflow
|
||||
doc.type=source
|
||||
@jd:body
|
||||
<div>
|
||||
<br>This page describes how to record changes to the Android files on your local client, upload those changes to the code-review server, and use Gerrit to track changes.<br><h2>
|
||||
Prerequisites</h2>
|
||||
Before you follow the instructions on this page, you will need to set up your
|
||||
@@ -14,6 +15,9 @@ href="{@docRoot}source/life-of-a-patch.html">Life of a Patch</a>.</li>
|
||||
Open Source community, see <a href="{@docRoot}source/roles.html">Project roles</a>.</li>
|
||||
<li>If you plan to contribute code to the Android platform, be sure to read
|
||||
the <a href="{@docRoot}source/licenses.html">AOSP's licensing information</a>.</li>
|
||||
<li>Note that changes to some of the upstream projects used by Android should be
|
||||
made directly to that project, as described in
|
||||
<a href="#upstream-projects">Upstream Projects</a>.
|
||||
</ul>
|
||||
<h2>
|
||||
Working with the code</h2>
|
||||
@@ -129,8 +133,8 @@ If you are assigned to be the Verifier for a change, you need to do the followin
|
||||
</ul>
|
||||
<h3>
|
||||
Viewing diffs and comments</h3>
|
||||
To open the details of the change within Gerrit, click on the "Id number" or "Subject" of a change. To compare the established code with the updated code, click the file name under "Side-by-side diffs."<br></div>
|
||||
<div><h3>
|
||||
To open the details of the change within Gerrit, click on the "Id number" or "Subject" of a change. To compare the established code with the updated code, click the file name under "Side-by-side diffs."<br>
|
||||
<h3>
|
||||
Adding comments</h3>
|
||||
Anyone in the community can use Gerrit to add inline comments to code submissions. A good comment will be relevant to the line or section of code to which it is attached in Gerrit. It might be a short and constructive suggestion about how a line of code could be improved, or it might be an explanation from the author about why the code makes sense the way it is.<br><br>To add an inline comment, double-click the relevant line of the code and write your comment in the text box that opens. When you click Save, only you can see your comment.<br><br>To publish your comments so that others using Gerrit will be able to see them, click the Publish Comments button. Your comments will be emailed to all relevant parties for this change, including the change owner, the patch set uploader (if different from the owner), and all current reviewers.<br><br><h3>
|
||||
After a submission is approved</h3>
|
||||
@@ -142,6 +146,27 @@ who plays them, see <a href="{@docRoot}source/roles.html">Project roles</a>
|
||||
.<br><br><h2>
|
||||
Using GitWeb to track patch histories</h2>
|
||||
To view snapshots of the files that are in the public Android repositories and view file histories, use the <a href="http://android.git.kernel.org/">Android instance of GitWeb</a>
|
||||
.<br></div>
|
||||
</div>
|
||||
.<br>
|
||||
<h2><a name="upstream-projects"></a>Upstream Projects</h2>
|
||||
Android makes use of a number of other open-source projects, such as the Linux
|
||||
kernel and WebKit, as described in
|
||||
<a href="{@docRoot}source/code-lines.html">Branches & Releases</a>. For the
|
||||
upstream projects detailed below, changes should be made directly upstream. Such
|
||||
changes will be incorporated into the Android tree as part of the usual process
|
||||
of pulling these projects.
|
||||
<h3>WebKit</h3>
|
||||
All changes to the WebKit project at <code>external/webkit</code> should be made
|
||||
upstream at <a href="http://www.webkit.org">http://www.webkit.org</a>. The
|
||||
process begins by filing a WebKit bug. This bug should use <code>Android</code>
|
||||
for the <code>Platform</code> and <code>OS</code> fields only if the bug is
|
||||
specific to Android. Bugs are far more likely to receive the reviewers'
|
||||
attention once a proposed fix is added and tests are included. See
|
||||
<a href="http://webkit.org/coding/contributing.html">Contributing Code to
|
||||
WebKit</a> for details.
|
||||
<h3>V8</h3>
|
||||
All changes to the V8 project at <code>external/v8</code> should be submitted
|
||||
upstream at
|
||||
<a href="http://code.google.com/p/v8">http://code.google.com/p/v8</a>. See
|
||||
<a href="http://code.google.com/p/v8/wiki/Contributing">Contributing to V8</a>
|
||||
for details.
|
||||
</div>
|
||||
|
||||
@@ -95,58 +95,6 @@ Adding apps to the build path
|
||||
<p>When you're done, the "source folder" path in the list should look like android/packages/apps/<i>YourAppName</i>
|
||||
/src. Depending on which app(s) you include, you may also need to include othersrc/main/java directories under android/dalvik/libcore. Do this if you find you cannot build with the default set.
|
||||
</p>
|
||||
<h4>
|
||||
Eclipse setup to work on developer tools
|
||||
</h4>
|
||||
<p>To work on Java developer tools, the principle is the same, except you specify /path/to/tool when using the option "Create project from existing source."
|
||||
</p>
|
||||
<p>Once the project is created, you need to set up the Java Build Path:
|
||||
</p>
|
||||
<ol><li>Select the project you just created.
|
||||
</li>
|
||||
<li>Project Properties
|
||||
</li>
|
||||
<li>Select "Java Build Path" from the left-hand menu.
|
||||
</li>
|
||||
<li>Choose the "Source" tab.
|
||||
</li>
|
||||
<li>Expand the single <i>toolname</i>
|
||||
/src entry.
|
||||
</li>
|
||||
<li>Double click the "Excluded: (none)" item.
|
||||
</li>
|
||||
<li>Add to the excluded (bottom) list: "MakeFile" and "resources/".
|
||||
</li>
|
||||
<li>Close the dialog.
|
||||
</li>
|
||||
<li>Back in the "Source" tab, click "Add Folder...", and add <i>toolname</i>
|
||||
/src/resources.
|
||||
</li>
|
||||
<li>Click OK.
|
||||
</li>
|
||||
</ol>
|
||||
<h4>
|
||||
Eclipse setup to work on DDMS <br></h4>
|
||||
<p>For DDMS, you will need to make a project for
|
||||
</p>
|
||||
<ol><li>development/tools/ddms/libs/ddmlib
|
||||
</li>
|
||||
<li>development/tools/ddms/libs/ddmuilib
|
||||
</li>
|
||||
<li>development/tools/ddms/app
|
||||
</li>
|
||||
</ol>
|
||||
<p>Each project will need to reference the ones before it ("ddmuilib" references "ddmlib", and "app" references both of those). To do this:
|
||||
</p>
|
||||
<ol><li>Make sure you have all 3 projects defined.
|
||||
</li>
|
||||
<li>Right click on a project, "Build Path" "Configure Build Path..."
|
||||
</li>
|
||||
<li>Choose the "Project" tab.
|
||||
</li>
|
||||
<li>Click "Add..." and check the required projects.
|
||||
</li>
|
||||
</ol>
|
||||
<h2><a>Eclipse formatting</a>
|
||||
</h2>
|
||||
<p>You can import files in development/ide/eclipse to make Eclipse
|
||||
@@ -189,15 +137,6 @@ and "Organize Imports › Import" to import android.importorder.
|
||||
|
||||
<pre>Ctrl-Shift-o = Organize imports <br>Ctrl-Shift-t = load class by name <br>Ctrl-Shift-r = load non-class resource by name <br>Ctrl-1 = quick fix <br>Ctrl-e = Recently viewed files <br>Ctrl-space = auto complete <br>Shift-Alt-r = refactor:rename <br>Shift-Alt-v = refactor:move <br></pre>
|
||||
|
||||
<h2><a>Useful Plugins</a>
|
||||
</h2>
|
||||
<p>Eclipse has a plugin architecture that enables third parties to extend the IDE. Here are some plugins that make Eclipse easier to use for writing Android software:
|
||||
</p>
|
||||
|
||||
<ul><li><a href="http://andrei.gmxhome.de/anyedit/">AnyEdit</a>
|
||||
- automatically fix whitespace issues when saving files. Can convert tabs to spaces, strip blanks at end-of-line, and ensure the last line of the file has an end-of-line character.
|
||||
</li>
|
||||
</ul>
|
||||
<h2><a>"Eclipse is not working correctly, what should I do?"</a>
|
||||
</h2>
|
||||
<p>Make sure:
|
||||
|
||||
Reference in New Issue
Block a user