<?xml version="1.0" encoding="utf-8"?>
<!-- Copyright (C) 2007 The Android Open Source Project

     Licensed under the Apache License, Version 2.0 (the "License");
     you may not use this file except in compliance with the License.
     You may obtain a copy of the License at
  
          http://www.apache.org/licenses/LICENSE-2.0
  
     Unless required by applicable law or agreed to in writing, software
     distributed under the License is distributed on an "AS IS" BASIS,
     WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
     See the License for the specific language governing permissions and
     limitations under the License.
-->

<!-- This file describes the code in the SkeletonApp package, which is
     used by the system to determine how to start your application and
     integrate it with the rest of the system.  -->

<!-- Declare the contents of this Android application.  The namespace
     attribute brings in the Android platform namespace, and the package
     supplies a unique name for the application.  When writing your
     own application, the package name must be changed from "com.example.*"
     to come from a domain that you own or have control over. -->
<manifest xmlns:android="http://schemas.android.com/apk/res/android"
    package="com.example.android.skeletonapp">
    
    <uses-sdk android:targetSdkVersion="11"/>
    <!-- This package contains an application...  The 'label' is the name
         to display to the user for the overall application, and provides
         a default label for all following components.  The syntax here is a
         reference to one of our string resources.-->
    <application android:label="@string/skeleton_app">

        <!-- An Activity in the application - this is something the user
             can launch and interact with.  The "name" attribute is the
             name of the class within your package that implements this
             activity. -->
        <activity android:name="SkeletonActivity">

            <!-- An IntentFilter tells the system when it should use your
                 activity.  This allows the user to get to your activity
                 without someone having to explicitly know to launch your
                 class "com.examplel.android.skeletonapp.SkeletonActivity". -->
            <intent-filter>
                <!-- The MAIN action describes a main entry point into an
                     activity, without any associated data. -->
                <action android:name="android.intent.action.MAIN" />

                <!-- This places this activity into the main app list. -->
                <category android:name="android.intent.category.LAUNCHER" />
            </intent-filter>

        </activity>

    </application>

</manifest>
