<!-- content for http://king370.blogspot.com/2013/02/implementing-android-push-notifications.html --> <?xml version="1.0" encoding="utf-8"?> <manifest xmlns:android="http://schemas.android.com/apk/res/android" android:versionCode="1" android:versionName="1.0" package="com.urbanairship.push.sample"> <!-- minSdkVersion sets runtime compatibility ("will run on API level 4") --> <!-- targetSdkVersion should be set to the latest version tested, to disable compatibility modes ("was tested with API level 9 features") --> <uses-sdk android:minSdkVersion="4" android:targetSdkVersion="9"/> <!-- REQUIRED PERMISSIONS (for Urban Airship GCM) --> <uses-permission android:name="android.permission.INTERNET"/> <uses-permission android:name="android.permission.ACCESS_NETWORK_STATE"/> <uses-permission android:name="android.permission.VIBRATE"/> <!-- GCM requires a Google account. --> <uses-permission android:name="android.permission.GET_ACCOUNTS" /> <!-- Keeps the processor from sleeping when a message is received. --> <uses-permission android:name="android.permission.WAKE_LOCK" /> <!-- This app has permission to register with GCM and receive message --> <uses-permission android:name="com.google.android.c2dm.permission.RECEIVE" /> <!-- MODIFICATION REQUIRED - Replace "com.urbanairship.push.sample" with your package name --> <permission android:name="com.urbanairship.push.sample.permission.C2D_MESSAGE" android:protectionLevel="signature" /> <uses-permission android:name="com.urbanairship.push.sample.permission.C2D_MESSAGE" /> <!-- The two elements above ensure that only this application can receive the messages and registration result --> <!-- END Urban Airship Required Permissions --> <!-- OPTIONAL Urban Airship Settings --> <!-- REQUIRED FOR LOCATION --> <!-- Use ACCESS_COARSE_LOCATION if GPS access is not necessary --> <!-- uses-permission android:name="android.permission.ACCESS_COARSE_LOCATION" /--> <uses-permission android:name="android.permission.ACCESS_FINE_LOCATION" /> <!-- OPTIONAL - This permission is only necessary if your app has multiple processes --> <!-- <uses-permission android:name="android.permission.BROADCAST_STICKY" /> --> <!-- END OPTIONAL Urban Airship Settings --> <application android:label="@string/app_name" android:icon="@drawable/icon" android:name="com.urbanairship.push.sample.MyApplication" android:debuggable="true" android:allowClearUserData="true" android:enabled="true"> <activity android:name="com.urbanairship.push.sample.MainActivity" android:label="@string/app_name"> <intent-filter> <action android:name="android.intent.action.MAIN" /> <category android:name="android.intent.category.LAUNCHER" /> </intent-filter> </activity> <activity android:name="com.urbanairship.push.sample.PushPreferencesActivity" /> <activity android:name="com.urbanairship.push.sample.LocationActivity" /> <!-- REQUIRED for Urban Airship GCM--> <receiver android:name="com.urbanairship.CoreReceiver" /> <receiver android:name="com.urbanairship.push.GCMPushReceiver" android:permission="com.google.android.c2dm.permission.SEND"> <intent-filter> <action android:name="com.google.android.c2dm.intent.RECEIVE" /> <action android:name="com.google.android.c2dm.intent.REGISTRATION" /> <!-- MODIFICATION REQUIRED - Use your package name as the category --> <category android:name="com.urbanairship.push.sample" /> </intent-filter> </receiver> <service android:name="com.urbanairship.push.PushService" android:label="Push Notification Service" /> <service android:name="com.urbanairship.push.PushWorkerService" android:label="Push Notification Worker Service" /> <service android:name="com.urbanairship.analytics.EventService" android:label="Event Service" /> <!-- This is required for persisting preferences related to push and location --> <!-- MODIFICATION REQUIRED - Use your package name + ".urbanairship.provider" in the android:authorities --> <provider android:name="com.urbanairship.UrbanAirshipProvider" android:authorities="YOUR_PACKAGE_NAME.urbanairship.provider" android:exported="false" android:multiprocess="true" /> <!-- END OF REQUIRED ITEMS --> <!-- OPTIONAL (for segments support) --> <service android:name="com.urbanairship.location.LocationService" android:label="Segments Service"/> <!-- OPTIONAL, if you want to receive push, push opened and registration completed intents --> <!-- Replace the receiver below with your package and class name --> <receiver android:name="com.urbanairship.push.sample.IntentReceiver" /> </application> </manifest>