Donate to e Foundation | Murena handsets with /e/OS | Own a part of Murena! Learn more

Commit 74577f7c authored by Scott Main's avatar Scott Main Committed by The Android Open Source Project
Browse files

AI 146557: am: CL 146255 am: CL 146254 clarification for the minSdkVersion attribute;

  added more information to the <uses-sdk> reference,
  added a link to it from the <manifes> reference, and
  revised some misleading information in the android 1.1 version notes
  Original author: smain
  Merged from: //branches/cupcake/...
  Original author: android-build

Automated import of CL 146557
parent d74e8fc3
Loading
Loading
Loading
Loading
+2 −1
Original line number Diff line number Diff line
@@ -25,7 +25,8 @@ page.title=&lt;manifest&gt;
<br/><code><a href="{@docRoot}guide/topics/manifest/permission-element.html">&lt;permission&gt;</a></code>
<br/><code><a href="{@docRoot}guide/topics/manifest/permission-group-element.html">&lt;permission-group&gt;</a></code>
<br/><code><a href="{@docRoot}guide/topics/manifest/permission-tree-element.html">&lt;permission-tree&gt;</a></code>
<br/><code><a href="{@docRoot}guide/topics/manifest/uses-permission-element.html">&lt;uses-permission&gt;</a></code></dd>
<br/><code><a href="{@docRoot}guide/topics/manifest/uses-permission-element.html">&lt;uses-permission&gt;</a></code>
<br/><code><a href="{@docRoot}guide/topics/manifest/uses-sdk-element.html">&lt;uses-sdk&gt;</a></code></dd>

<p>
<dt>description:</dt>
+23 −11
Original line number Diff line number Diff line
@@ -9,10 +9,10 @@ page.title=&lt;uses-sdk&gt;
<dd><code><a href="{@docRoot}guide/topics/manifest/manifest-element.html">&lt;manifest&gt;</a></code></dd>

<dt>description:</dt>
<dd>Declares which levels of the Android API the application can run against.  
The level is incremented when there are additions to the API and resource tree, 
so an application developed using level 3 of the API may not run against level 
1 or 2, but should run against level 3, 4, 5, and above.
<dd>Lets you express an application's compatibility with one or more versions of the Android platform,
by means of an API Level integer. The API Level expressed by an application will be compared to the
API Level of a given Android system, which may vary among different Android devices. To declare your
application's minimum API Level compatibility, use the <a href="#min">minSdkVersion</a> attribute.
</p>

<p>
@@ -35,14 +35,26 @@ Applications</a>.
for the application to run.

<p>
Despite its name, this attribute is set to the API level, <em>not</em> to the 
version number of the SDK (software development kit).  The API level is always 
Despite its name, this attribute specifies the API Level, <em>not</em> the 
version number of the SDK (software development kit).  The API Level is always 
a single integer; the SDK version may be split into major and minor components 
(such as 1.2).  You cannot derive the API level from the SDK version number 
(such as 1.5).  You cannot derive the API Level from the SDK version number 
(for example, it is not the same as the major version or the sum of the major 
and minor versions).  To learn what the API level is, check the notes that 
came with the SDK you're using.
</p></dd>
and minor versions).  To learn what the API Level is, check the notes that 
came with the SDK you're using.</p>

<p>Prior to installing an application, the Android system checks the value of this
attribute and allows the installation only if the
API Level is less than or equal to the API Level used by the system itself.</p>

<p>If you do not declare this attribute, then a value of "1" is assumed, which
indicates that your application is compatible with all versions of Android. If your
application is <em>not</em> universally compatible (for instance if it uses APIs
introduced in Android 1.5) and you have not declared the proper <code>minSdkVersion</code>, 
then when installed on a system with a lower API Level, the application 
will crash during runtime. For this reason, be certain to declare the appropriate API Level
in the <code>minSdkVersion</code> attribute.</p>
</dd>

</dl></dd>

+8 −11
Original line number Diff line number Diff line
@@ -34,22 +34,19 @@ stored in the system itself. This identifier, called the "API Level", allows the
system to correctly determine whether an application is compatible with
the system, prior to installing the application. </p>

<p>Applications can reference a specific API Level value in their
manifest files, to indicate the minimum version of the Android system
required to run the app. To reference a minimum API Level, applications 
can add a <code>minSdkVersion</code> attribute in their manifest files.
<p>Applications indicate the lowest system API Level that they are compatible with by adding
a value to the <code>minSdkVersion</code> attribute.
The value of the attribute is an integer corresponding to an API Level 
identifier. Prior to installing an application, the system then checks the value of 
identifier. Prior to installing an application, the system checks the value of 
<code>minSdkVersion</code> and allows the install only
if the referenced integer is less than or equal to the API Level integer stored
in the system itself. </p>

<p>If you use the Android 1.1 system image to build an application
compatible with Android-powered devices running the Android 1.1
platform, please note that you <strong><span
style="color:red;">must</span></strong> set the the
<code>android:minSdkVersion</code> attribute in the application's
manifest to "2", which is the API strictly associated with Android 1.1.
platform, you <strong style="color:red">must</strong> set the
<code>minSdkVersion</code> attribute to "2" in order to specify that your application
is compatible only with devices using the Android 1.1 (or greater) system image.
</p>

<p>Specifically, you specify the <code>android:minSdkVersion</code>
@@ -59,7 +56,7 @@ attribute looks like this: </p>

<pre><code>&lt;manifest&gt;
  ...
  &lt;uses-sdk minSdkVersion="2" /&gt;
  &lt;uses-sdk android:minSdkVersion="2" /&gt;
  ...
&lt;/manifest&gt;</code>
</pre>