blob: 2160f69cf2c91b091d04e8a76ddda50146bdc9e3 [file] [log] [blame]
#
# Syntax:
# - Lines starting with # are ignored (anywhere, as long as # is the first char).
# - Lines before the first @delimiter are ignored.
# - Empty lines just after the @delimiter and before the first < XML line are ignored.
# - Valid delimiters are @main for the XML of the main app manifest.
# - Following delimiters are @libXYZ, read in the order of definition. The name can be
# anything as long as it starts with "@lib".
# - Last delimiter should be @result.
#
@main
<!--
This is a canonical manifest that has some uses-permissions,
the usual uses-sdk and supports-screens, an app with an activity,
customer receiver & service and a widget.
-->
<manifest
xmlns:android="http://schemas.android.com/apk/res/android"
package="com.example.app1"
android:versionCode="100"
android:versionName="1.0.0">
<uses-sdk android:minSdkVersion="3" android:targetSdkVersion="11"/>
<supports-screens
android:largeScreens="true"
android:smallScreens="true"
android:normalScreens="true"
android:resizeable="true"
android:xlargeScreens="true"
/>
<!-- Typical analytics permissions. -->
<uses-permission android:name="android.permission.INTERNET" />
<uses-permission android:name="android.permission.ACCESS_COARSE_LOCATION" />
<!-- Touchscreen feature, optional to make sure we can run on devices with no touch screen. -->
<uses-feature
android:name="android.hardware.touchscreen"
android:required="false" />
<application
android:label="@string/app_name"
android:icon="@drawable/app_icon"
android:backupAgent="com.example.app.BackupAgentClass"
android:restoreAnyVersion="true"
android:allowBackup="true"
android:killAfterRestore="true"
android:name="com.example.TheApp" >
<activity
android:name="com.example.MainActivity"
android:label="@string/activity_name"
android:icon="@drawable/activity_icon"
android:theme="@style/Some.Theme">
<intent-filter>
<action android:name="android.intent.action.MAIN" />
<category android:name="android.intent.category.LAUNCHER" />
</intent-filter>
</activity>
<!-- Receiver -->
<receiver
android:name="com.example.AppReceiver"
android:icon="@drawable/app_icon">
<intent-filter>
<action android:name="com.example.action.ACTION_CUSTOM" />
</intent-filter>
</receiver>
<!-- Broadcast Receiver for a widget. -->
<receiver
android:label="@string/widget_name"
android:icon="@drawable/widget_icon"
android:name="com.example.WidgetReceiver" >
<intent-filter>
<action android:name="android.appwidget.action.APPWIDGET_UPDATE" />
</intent-filter>
<meta-data
android:name="android.appwidget.provider"
android:resource="@xml/widget_provider"
/>
</receiver>
<service
android:icon="@drawable/app_icon"
android:name="com.example.AppService" />
<!-- Activity to configure widget -->
<activity
android:icon="@drawable/widget_icon"
android:label="Configure Widget"
android:name="com.example.WidgetConfigurationUI"
android:theme="@style/Theme.WidgetConfigurationUI" >
<intent-filter >
<action android:name="android.appwidget.action.APPWIDGET_CONFIGURE" />
</intent-filter>
</activity>
<!-- Provider extracted from ApiDemos -->
<provider android:name=".app.LoaderThrottle$SimpleProvider"
android:authorities="com.example.android.apis.app.LoaderThrottle"
android:enabled="@bool/atLeastHoneycomb" />
</application>
</manifest>
@lib1
<manifest
xmlns:android="http://schemas.android.com/apk/res/android"
package="com.example.lib1">
</manifest>
@lib2
# An empty library is not supported. It must be a valid XML file.
<manifest/>
@result
<!--
This is a canonical manifest that has some uses-permissions,
the usual uses-sdk and supports-screens, an app with an activity,
customer receiver & service and a widget.
-->
<manifest
xmlns:android="http://schemas.android.com/apk/res/android"
package="com.example.app1"
android:versionCode="100"
android:versionName="1.0.0">
<uses-sdk android:minSdkVersion="3" android:targetSdkVersion="11"/>
<supports-screens
android:largeScreens="true"
android:smallScreens="true"
android:normalScreens="true"
android:resizeable="true"
android:xlargeScreens="true"
/>
<!-- Typical analytics permissions. -->
<uses-permission android:name="android.permission.INTERNET" />
<uses-permission android:name="android.permission.ACCESS_COARSE_LOCATION" />
<!-- Touchscreen feature, optional to make sure we can run on devices with no touch screen. -->
<uses-feature
android:name="android.hardware.touchscreen"
android:required="false" />
<application
android:label="@string/app_name"
android:icon="@drawable/app_icon"
android:backupAgent="com.example.app.BackupAgentClass"
android:restoreAnyVersion="true"
android:allowBackup="true"
android:killAfterRestore="true"
android:name="com.example.TheApp" >
<activity
android:name="com.example.MainActivity"
android:label="@string/activity_name"
android:icon="@drawable/activity_icon"
android:theme="@style/Some.Theme">
<intent-filter>
<action android:name="android.intent.action.MAIN" />
<category android:name="android.intent.category.LAUNCHER" />
</intent-filter>
</activity>
<!-- Receiver -->
<receiver
android:name="com.example.AppReceiver"
android:icon="@drawable/app_icon">
<intent-filter>
<action android:name="com.example.action.ACTION_CUSTOM" />
</intent-filter>
</receiver>
<!-- Broadcast Receiver for a widget. -->
<receiver
android:label="@string/widget_name"
android:icon="@drawable/widget_icon"
android:name="com.example.WidgetReceiver" >
<intent-filter>
<action android:name="android.appwidget.action.APPWIDGET_UPDATE" />
</intent-filter>
<meta-data
android:name="android.appwidget.provider"
android:resource="@xml/widget_provider"
/>
</receiver>
<service
android:icon="@drawable/app_icon"
android:name="com.example.AppService" />
<!-- Activity to configure widget -->
<activity
android:icon="@drawable/widget_icon"
android:label="Configure Widget"
android:name="com.example.WidgetConfigurationUI"
android:theme="@style/Theme.WidgetConfigurationUI" >
<intent-filter >
<action android:name="android.appwidget.action.APPWIDGET_CONFIGURE" />
</intent-filter>
</activity>
<!-- Provider extracted from ApiDemos -->
<provider
android:name="com.example.app1.app.LoaderThrottle$SimpleProvider"
android:authorities="com.example.android.apis.app.LoaderThrottle"
android:enabled="@bool/atLeastHoneycomb" />
</application>
</manifest>
@errors
W [ManifestMergerTest2_lib2.xml:1] Missing 'package' attribute in manifest.