I'm developing a Watchface (for AndroidWear), which works perfectly on round emulators and real devices, but I can't select the Watchface-Service on a square emulator.
Following a snippet of my AndroidManifest.xml:
<uses-feature android:name="android.hardware.type.watch" />
<uses-permission android:name="com.google.android.permission.PROVIDE_BACKGROUND" />
<uses-permission android:name="android.permission.WAKE_LOCK" />
<application
android:allowBackup="true"
android:icon="#drawable/ic_launcher"
android:label="#string/app_name"
android:theme="#android:style/Theme.DeviceDefault" >
<service
android:name=".WatchFaceService"
android:label="#string/app_label"
android:allowEmbedded="true"
android:taskAffinity=""
android:permission="android.permission.BIND_WALLPAPER" >
<meta-data
android:name="android.service.wallpaper"
android:resource="#xml/watch_face" />
<meta-data
android:name="com.google.android.wearable.watchface.preview"
android:resource="#drawable/preview_square" />
<meta-data
android:name="com.google.android.wearable.watchface.preview_circular"
android:resource="#drawable/preview_circular"/>
<meta-data
android:name="com.google.android.wearable.watchface.companionConfigurationAction"
android:value="com.example.android.wearable.watchface.CONFIG_ANALOG" />
<intent-filter>
<action android:name="android.service.wallpaper.WallpaperService" />
<category android:name="com.google.android.wearable.watchface.category.WATCH_FACE" />
</intent-filter>
</service>
</application>
I searched for misspellings, but I couldn't find any.
Ok, so as i figured out: I have to use at least Lollipop.
Related
I've built and Android App Bundle via Unity using target API level as 32. When I try to upload the .aab file to Google Play, I'm getting this error message:
"You uploaded an APK or Android App Bundle which has an activity, activity alias, service or broadcast receiver with intent filter, but without 'android:exported' property set. This file can't be installed on Android 12 or higher."
I can successfully upload .aab files I've created with API level 30, but I want to fully support Android 12 devices. When I try to build with API level 31 or 32, I get this error. I've already added android-exported tag to all activities, and I'm not sure why I keep getting this error. Minimum API Level is set to 21 (setting it to 23 also didn't work).
I'm using Unity 2020.3.30 (also was getting same error when building with Unity 2019.4.12). Also tried to export project and build .aab via Android Studio 4.4.1, but still no luck.
My Android.Manifest file is set as follows:
<?xml version="1.0" encoding="utf-8"?>
<manifest xmlns:android="http://schemas.android.com/apk/res/android" xmlns:tools="http://schemas.android.com/tools" package="com.unity3d.player" android:versionCode="1" android:versionName="1.0">
<application android:label="#string/app_name" android:icon="#mipmap/app_icon">
<!-- The MessagingUnityPlayerActivity is a class that extends
UnityPlayerActivity to work around a known issue when receiving
notification data payloads in the background. -->
<activity android:name="com.unity3d.player.UnityPlayerActivity" android:exported="true" android:screenOrientation="landscape" android:launchMode="singleTask" android:configChanges="mcc|mnc|locale|touchscreen|keyboard|keyboardHidden|navigation|orientation|screenLayout|uiMode|screenSize|smallestScreenSize|fontScale|layoutDirection|density" android:resizeableActivity="false" android:hardwareAccelerated="false">
<intent-filter>
<action android:name="android.intent.action.MAIN" />
<category android:name="android.intent.category.LAUNCHER" />
</intent-filter>
<meta-data android:name="unityplayer.UnityActivity" android:value="true" />
</activity>
<activity android:name="com.facebook.unity.FBUnityLoginActivity" android:exported="false" android:configChanges="fontScale|keyboard|keyboardHidden|locale|mnc|mcc|navigation|orientation|screenLayout|screenSize|smallestScreenSize|uiMode|touchscreen" android:theme="#android:style/Theme.Translucent.NoTitleBar.Fullscreen" />
<activity android:name="com.facebook.unity.FBUnityDialogsActivity" android:exported="false" android:configChanges="fontScale|keyboard|keyboardHidden|locale|mnc|mcc|navigation|orientation|screenLayout|screenSize|smallestScreenSize|uiMode|touchscreen" android:theme="#android:style/Theme.Translucent.NoTitleBar.Fullscreen" />
<activity android:name="com.facebook.unity.FBUnityGamingServicesFriendFinderActivity" android:exported="false" android:configChanges="fontScale|keyboard|keyboardHidden|locale|mnc|mcc|navigation|orientation|screenLayout|screenSize|smallestScreenSize|uiMode|touchscreen" android:theme="#android:style/Theme.Translucent.NoTitleBar.Fullscreen" />
<activity android:name="com.facebook.unity.FBUnityAppLinkActivity" android:exported="true" />
<activity android:name="com.facebook.unity.FBUnityDeepLinkingActivity" android:exported="true" />
<activity android:name="com.facebook.unity.FBUnityGameRequestActivity" android:exported="false"/>
<activity android:name="com.facebook.unity.FBUnityCreateGameGroupActivity" android:exported="false"/>
<activity android:name="com.facebook.unity.FBUnityJoinGameGroupActivity" android:exported="false"/>
<meta-data android:name="com.facebook.sdk.ApplicationId" android:value="xxxx" />
<meta-data android:name="com.facebook.sdk.AutoLogAppEventsEnabled" android:value="false" />
<meta-data android:name="com.facebook.sdk.AdvertiserIDCollectionEnabled" android:value="true" />
<provider android:name="com.facebook.FacebookContentProvider" android:authorities="com.facebook.app.FacebookContentProviderxxxx" android:exported="true" />
<meta-data android:name="unity.splash-mode" android:value="0" />
<meta-data android:name="unity.splash-enable" android:value="True" />
<meta-data android:name="unity.allow-resizable-window" android:value="False" />
<meta-data android:name="unity.build-id" android:value="xxxx" />
<receiver android:name="com.unity.androidnotifications.UnityNotificationManager" android:exported="true" />
<receiver android:name="com.unity.androidnotifications.UnityNotificationRestartOnBootReceiver" android:enabled="false">
<intent-filter>
<action android:name="android.intent.action.BOOT_COMPLETED" />
</intent-filter>
</receiver>
</application>
<uses-permission android:name="android.permission.INTERNET" />
<uses-permission android:name="android.permission.ACCESS_WIFI_STATE" />
<uses-permission android:name="android.permission.ACCESS_NETWORK_STATE" />
<uses-permission android:name="com.google.android.finsky.permission.BIND_GET_INSTALL_REFERRER_SERVICE" />
<uses-feature android:glEsVersion="0x00030000" />
<uses-feature android:name="android.hardware.vulkan.version" android:required="false" />
<uses-permission android:name="android.permission.CHANGE_WIFI_MULTICAST_STATE" />
<uses-permission android:name="android.permission.VIBRATE" />
<uses-feature android:name="android.hardware.touchscreen" android:required="false" />
<uses-feature android:name="android.hardware.touchscreen.multitouch" android:required="false" />
<uses-feature android:name="android.hardware.touchscreen.multitouch.distinct" android:required="false" />
</manifest>
I've tried methods from answers and comments at other similar questions in StackOverflow, but none of them worked.
I made my android app but when I install it on Anroid 6 my app has default robot icon instead my original app icon. But when I install the same app on device with android 4.4.2, my app icon is ok.
Any idea please what could be wrong? (I have already tried to remove app icon from android 6 desktop and make new shortcut but installed app in app list has the same robot icon)
UPDATE, added AndroidManifest.xml:
<?xml version="1.0" encoding="utf-8"?>
<manifest xmlns:android="http://schemas.android.com/apk/res/android"
xmlns:tools="http://schemas.android.com/tools"
package="com.example.myapp" >
<uses-permission android:name="sk.baris.b_admin.permission.C2D_MESSAGE" />
<uses-permission android:name="com.google.android.c2dm.permission.RECEIVE" />
<uses-permission android:name="android.permission.WAKE_LOCK" />
<uses-permission android:name="android.permission.INTERNET" />
<uses-permission android:name="android.permission.GET_ACCOUNTS" />
<uses-permission android:name="android.permission.USE_CREDENTIALS" />
<uses-permission android:name="android.permission.READ_PHONE_STATE" />
<uses-permission android:name="android.permission.READ_LOGS" />
<uses-permission android:name="android.permission.WRITE_EXTERNAL_STORAGE" />
<uses-permission android:name="android.permission.ACCESS_WIFI_STATE" />
<uses-permission android:name="android.permission.ACCESS_NETWORK_STATE" />
<uses-permission android:name="android.permission.VIBRATE" />
<uses-permission android:name="android.permission.RECEIVE_BOOT_COMPLETED" />
<uses-permission android:name="com.android.launcher.permission.INSTALL_SHORTCUT" />
<!-- SYNC -->
<uses-permission android:name="android.permission.READ_SYNC_SETTINGS" />
<uses-permission android:name="android.permission.WRITE_SYNC_SETTINGS" />
<uses-permission android:name="android.permission.AUTHENTICATE_ACCOUNTS" />
<uses-permission android:name="android.permission.MANAGE_ACCOUNTS" />
<application
android:name="com.example.myapp.MainApplication"
tools:replace="android:name"
android:allowBackup="true"
android:icon="#drawable/ic_launcher"
android:label="#string/app_name"
android:theme="#style/BASE_ACTION_BAR" >
<activity
android:name="com.example.myapp.menu.MenuActivity"
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="org.acra.CrashReportDialog"
android:excludeFromRecents="true"
android:finishOnTaskLaunch="true"
android:launchMode="singleInstance"
android:theme="#style/Theme.AppCompat.Base.CompactMenu.Dialog" />
<receiver
android:name=".InternetConnectionReciever"
android:exported="true" >
<intent-filter>
<action android:name="android.net.conn.CONNECTIVITY_CHANGE" />
</intent-filter>
</receiver>
<service
android:name=".service.VolleyService"
android:exported="false" />
<provider
android:name=".provider.Provider"
android:authorities="com.example.myapp.provider"
android:exported="false"
android:syncable="true" />
<provider
android:name="android.support.v4.content.FileProvider"
android:authorities="com.example.myapp.fileprovider"
android:exported="false"
android:grantUriPermissions="true">
<meta-data
android:name="android.support.FILE_PROVIDER_PATHS"
android:resource="#xml/file_paths"></meta-data>
</provider>
<!-- SyncAdapter -->
<service
android:name="com.example.myapp.syncadapter.SyncService"
android:exported="true"
android:process=":sync" >
<intent-filter>
<action android:name="android.content.SyncAdapter" />
</intent-filter>
<meta-data
android:name="android.content.SyncAdapter"
android:resource="#xml/syncadapter" />
</service>
<service
android:name="com.example.myapp.syncadapter.AuthenticatorService"
android:exported="true" >
<intent-filter>
<action android:name="android.accounts.AccountAuthenticator" />
</intent-filter>
<meta-data
android:name="android.accounts.AccountAuthenticator"
android:resource="#xml/authenticator" />
</service>
<service android:name="com.example.myapp.service.handler.HandlerSync" />
</application>
</manifest>
You need to set the activity icon
<activity
android:icon="#drawable/ic_launcher"
android:name="com.example.myapp.menu.MenuActivity"
android:label="#string/app_name" >
<intent-filter>
<action android:name="android.intent.action.MAIN" />
<category android:name="android.intent.category.LAUNCHER" />
</intent-filter>
</activity>
Did you place your custom icon in the drawable-xxhdpi folder too?
if no then place it ,clean and reinstall ur app
set icon to #mipmap/ic_launcher, not to #drawable/ic_launcher
Had similar issue.
Solution was to
Remove background from ic_launcher.xml
In my case it was empty anyway but caused this error
The reason given by a play support agent is :
"I've also found your app is not compatible with the Micromax Yurenka S due to a conflict in your app's manifest with the following:
No supported native platform:arm64-v8a, armeabi, armeabi-v7a"
I am pasting my manifest file below:
Can someone just point me what I am doing wrong.
<!-- Permissions for the app start -->
<uses-permission android:name="android.permission.ACCESS_NETWORK_STATE" />
<uses-permission android:name="android.permission.INTERNET" />
<uses-permission android:name="android.permission.BLUETOOTH" />
<uses-permission android:name="android.permission.READ_EXTERNAL_STORAGE" />
<uses-permission android:name="android.permission.WRITE_EXTERNAL_STORAGE" />
<permission android:name="com.mypackage.permission.C2D_MESSAGE" android:protectionLevel="signature" />
<uses-permission android:name="com.mypackage.permission.C2D_MESSAGE" />
<uses-permission android:name="android.permission.GET_ACCOUNTS" />
<uses-permission android:name="com.google.android.c2dm.permission.RECEIVE" />
<uses-permission android:name="android.permission.WAKE_LOCK" />
<!-- Permissions for the app end -->
<application
android:allowBackup="true"
android:icon="#drawable/ic_launcher"
android:label="#string/app_name"
android:supportsRtl="true"
android:theme="#style/NoActionBarTheme">
<receiver android:name="com.mixpanel.android.mpmetrics.GCMReceiver"
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" />
<category android:name="com.mypackage" />
</intent-filter>
</receiver>
<!-- Bugsnag api key start -->
<meta-data
android:name="com.bugsnag.android.API_KEY"
android:value="5b9b5215b476a9a2c83c22f7bd62beb6" />
<!-- Bugsnag api key end -->
<activity android:name=".Controllers.MainActivity">
<intent-filter>
<action android:name="android.intent.action.MAIN" />
</intent-filter>
</activity>
<activity
android:name=".Controllers.SplashActivity"
android:theme="#style/NoActionBarTheme">
<intent-filter>
<action android:name="android.intent.action.MAIN" />
<category android:name="android.intent.category.LAUNCHER" />
</intent-filter>
</activity>
<activity
android:name=".Controllers.SelectionActivity"
android:theme="#style/NoActionBarTheme" />
<activity android:name=".Controllers.LoginActivity" />
<activity android:name=".Controllers.SignUpStep1Activity" />
<activity android:name=".Controllers.ForgotPasswordActivity" />
<activity android:name=".Controllers.ForgotMembershipNumberActivity" />
<activity android:name=".Controllers.VerifyOtpActivity" />
<activity android:name=".Controllers.MobNoChangedActivity" />
<activity android:name=".Controllers.GetStartedActivity" />
<activity android:name=".Controllers.ForgotPasswordStep2Activity" />
<activity android:name=".Controllers.ForgotPasswordStep3Activity" />
<activity android:name=".Controllers.EventsListActivity" />
<activity android:name=".Controllers.EventsDetailActivity" />
<activity android:name=".Controllers.ProfileDetailActivity" />
<activity android:name=".Controllers.AnnouncementListActivity" />
<activity android:name=".Controllers.AnnouncementDetailActivity" />
<activity android:name=".Controllers.WebviewActivity" />
<activity
android:name=".Controllers.MemberDirectoryListActivity"
android:theme="#style/AppTheme" />
<activity android:name=".Controllers.MemberDirectoryDetailActivity" />
<activity android:name=".Controllers.IdCardActivity" />
<activity android:name=".Controllers.EditProfileActivity" />
<activity android:name=".Controllers.ChangePasswordActivity"></activity>
<activity android:name="com.theartofdev.edmodo.cropper.CropImageActivity"
android:theme="#style/Base.Theme.AppCompat"/>
</application>
Atlast found the issue after spending 2 days. Check the post for more details. I am posting the answer for someone who might come in future. Android app is supported by 0 devices
Check your build.gradle file - if you see something like:
compile 'org.apache.directory.studio:org.apache.commons.codec:1.+'
change it to:
compile 'commons-codec:commons-codec:1.+'
I am using Android Studio to develop an app which used Camera2 API. I can run the app in Google Nexus 9, however the app is not installed in the device and I cannot access it once I close the app. What am I doing wrong ?
Here is the manifest
<?xml version="1.0" encoding="utf-8"?>
<uses-permission android:name="android.permission.CAMERA" />
<uses-feature android:name="android.hardware.camera2.full" />
<uses-permission android:name="com.example.mapdemo.permission.MAPS_RECEIVE" />
<uses-permission android:name="android.permission.WRITE_EXTERNAL_STORAGE" />
<uses-permission android:name="android.permission.ACCESS_NETWORK_STATE" />
<uses-permission android:name="android.permission.INTERNET" />
<uses-permission android:name="android.permission.ACCESS_COARSE_LOCATION" />
<uses-permission android:name="android.permission.ACCESS_FINE_LOCATION" />
<uses-permission android:name="com.google.android.providers.gsf.permission.READ_GSERVICES" />
<application
android:allowBackup="true"
android:icon="#drawable/ic_launcher"
android:label="#string/app_name"
android:theme="#style/AppTheme" >
<activity
android:name=".MapActivity"
android:label="#string/app_name" >
<intent-filter>
<action android:name="android.intent.action.map" />
<category android:name="android.intent.category.LAUNCHER" />
</intent-filter>
</activity>
<activity
android:name=".MainActivity"
android:label="#string/app_name" >
<intent-filter>
<action android:name="test.camera.main" />
<category android:name="android.intent.category.DEFAULT" />
</intent-filter>
</activity>
<meta-data
android:name="com.google.android.maps.v2.API_KEY"
android:value="key"/>
<meta-data
android:name="com.google.android.gms.version"
android:value="#integer/google_play_services_version" />
</application>
add the following to your < activity > in your AndroidManifest.xml
<intent-filter>
<action android:name="android.intent.action.MAIN" />
<category android:name="android.intent.category.LAUNCHER" />
</intent-filter>
EDIT: added sample
<manifest xmlns:android="http://schemas.android.com/apk/res/android"
package="com.mycompany.android.myapp"
android:versionCode="1"
android:versionName="1.0" >
<uses-sdk
android:minSdkVersion="9"
android:targetSdkVersion="21" />
<uses-permission android:name="android.permission.INTERNET" />
<application
android:icon="#drawable/ic_launcher"
android:label="#string/app_name"
android:theme="#style/Theme.AppCompat" >
<activity
android:name=".ActFirst"
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=".ActSecond" >
</activity>
</application>
</manifest>
While running my app, I thought I had the same problem.
The problem in my app was the app_name in the strings file was different that what I thought it is. So Basically I was looking for app "X" while the name i gave is "Y".
Maybe you have the same problem.
I have hosted my app on the Google Play Store. Most phones can go to the store and download it successfully. Certain phones can not see the listing, these phones are running Android 2.3.6.
I've a feeling that the target api in the manifest may have something to do with it?
This is what i have in my manifest.
<uses-sdk
android:minSdkVersion="8"
android:targetSdkVersion="11" />
.
All the phones on 4.x are fine.
Why can't lower Android phones see the listing?
Thanks.
[edit]
<?xml version="1.0" encoding="utf-8"?>
<manifest xmlns:android="http://schemas.android.com/apk/res/android"
package="com.carefreegroup.rr3"
android:versionCode="24"
android:versionName="3.0.2"
android:installLocation="internalOnly"
>
<uses-sdk
android:minSdkVersion="8"
android:targetSdkVersion="11"
/>
<uses-permission android:name="android.permission.INTERNET" />
<uses-permission android:name="android.permission.READ_PHONE_STATE" />
<!-- <uses-permission android:name="android.permission.NFC" /> -->
<permission
android:name="com.carefreegroup.rr3.permission.C2D_MESSAGE"
android:protectionLevel="signature" />
<uses-permission android:name="com.carefreegroup.rr3.permission.C2D_MESSAGE" />
<uses-feature
android:name="android.hardware.nfc"
android:required="true" />
<!-- App receives GCM messages. -->
<uses-permission android:name="com.google.android.c2dm.permission.RECEIVE" />
<!-- 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" />
<uses-permission android:name="android.permission.PREVENT_POWER_KEY" />
<uses-permission android:name="android.permission.DISABLE_KEYGUARD"></uses-permission>
<uses-permission android:name="android.permission.SEND_SMS"/>
<uses-permission android:name="android.permission.ACCESS_FINE_LOCATION" />
<uses-permission android:name="android.permission.ACCESS_COARSE_LOCATION" />
<uses-permission android:name="android.permission.RECEIVE_BOOT_COMPLETED" />
<uses-permission android:name="android.permission.CAMERA" />
<uses-permission android:name="android.permission.INTERNET" />
<uses-permission android:name="android.permission.VIBRATE" />
<uses-permission android:name="android.permission.FLASHLIGHT" />
<uses-permission android:name="android.permission.READ_CONTACTS" />
<uses-permission android:name="com.android.browser.permission.READ_HISTORY_BOOKMARKS" />
<uses-permission android:name="android.permission.WRITE_EXTERNAL_STORAGE" />
<uses-permission android:name="android.permission.CHANGE_WIFI_STATE" />
<uses-permission android:name="android.permission.ACCESS_WIFI_STATE" />
<uses-permission android:name="android.permission.ACCESS_NETWORK_STATE" />
<uses-feature android:name="android.hardware.camera" />
<uses-feature
android:name="android.hardware.camera.autofocus"
android:required="false" />
<uses-feature
android:name="android.hardware.camera.flash"
android:required="false" />
<uses-feature android:name="android.hardware.screen.landscape" />
<uses-feature
android:name="android.hardware.wifi"
android:required="false" />
<uses-feature
android:name="android.hardware.touchscreen"
android:required="false" />
<!-- Donut-specific flags which allow us to run on any dpi screens. -->
<supports-screens
android:anyDensity="true"
android:largeScreens="true"
android:normalScreens="true"
android:smallScreens="true"
android:xlargeScreens="true" />
<application
android:name=".NfcScannerApplication"
android:icon="#drawable/ic_launcher"
android:label="#string/app_name"
android:theme="#android:style/Theme.Light"
android:debuggable = "false" >
<uses-library android:name="com.google.android.maps" />
<activity
android:name=".NfcscannerActivity"
android:screenOrientation="portrait"
>
<intent-filter>
<action android:name="android.nfc.action.NDEF_DISCOVERED" />
<category android:name="android.intent.category.DEFAULT" />
<data android:mimeType="text/plain" />
</intent-filter>
<intent-filter>
<action android:name="com.carefreegroup.rr3.QRCODE_ACTION" />
<category android:name="android.intent.category.DEFAULT" />
<data android:mimeType="text/plain" />
</intent-filter>
<intent-filter>
<action android:name="android.nfc.action.TECH_DISCOVERED" />
<category android:name="android.intent.category.DEFAULT" />
</intent-filter>
<meta-data
android:name="android.nfc.action.TECH_DISCOVERED"
android:resource="#xml/nfc_tech_filter" />
</activity>
<activity
android:name=".EntryActivity"
android:label="#string/app_name"
android:screenOrientation="portrait"
android:launchMode="singleTask" >
<intent-filter>
<action android:name="android.intent.action.MAIN" />
<category android:name="android.intent.category.LAUNCHER" />
</intent-filter>
</activity>
<activity android:name=".LoadTransactionsMap" />
<activity
android:name=".ViewTransactions"
android:screenOrientation="portrait" />
<activity
android:name=".LoginValidate"
android:screenOrientation="portrait" />
<activity
android:name=".ViewTransactionsTest"
android:screenOrientation="landscape" />
<activity
android:name=".NfcBaseActivity"
android:screenOrientation="portrait" />
<activity android:name=".CaptureActivity" >
<intent-filter>
<action android:name="com.carefreegroup.rr3.SCAN" />
<category android:name="android.intent.category.DEFAULT" />
</intent-filter>
</activity>
<activity
android:name=".ViewQrCodes"
android:screenOrientation="portrait" >
</activity>
<activity
android:name=".ValidateUser"
android:screenOrientation="portrait" >
</activity>
<activity
android:name=".ReportSomething"
android:screenOrientation="portrait"
android:windowSoftInputMode="stateHidden" >
</activity>
<activity
android:name=".GetClientDirections"
android:screenOrientation="portrait" >
</activity>
<activity
android:name=".ViewPhoneNumbers"
android:launchMode="singleTop"
android:screenOrientation="portrait" >
</activity>
<activity
android:name=".GetRota"
android:launchMode="singleTask"
android:screenOrientation="portrait" >
</activity>
<activity
android:name=".GetRotaDetails"
android:screenOrientation="portrait" >
</activity>
<activity
android:name=".ShowMoreDetails"
android:screenOrientation="portrait" >
</activity>
<activity
android:name=".ReplyToMessageActivity"
android:screenOrientation="portrait" >
</activity>
<activity
android:name=".ViewMessagesActivity"
android:screenOrientation="portrait" >
</activity>
<activity
android:name=".SendStandaloneMessageActivity"
android:screenOrientation="portrait" >
</activity>
<activity
android:name=".RecordActivity"
android:screenOrientation="portrait" >
</activity>
<activity
android:name=".DisplayMessageActivity"
android:screenOrientation="portrait"
android:theme="#android:style/Theme.Dialog" >
</activity>
<activity
android:name=".MessageRecipientActivity"
android:screenOrientation="portrait" >
</activity>
<activity
android:name=".CachedRotaActivity"
android:screenOrientation="portrait" >
</activity>
<activity
android:name=".EmailLog"
android:screenOrientation="portrait" >
</activity>
<service android:name=".SendOutstandingTransactionsIntentService" />
<service android:name=".QueryService" />
<service android:name=".LocationService" />
<service android:name=".SignalService" />
<service
android:name=".SendOutstandingTransactions"
android:screenOrientation="portrait" >
<intent-filter>
<action android:name="com.carefreegroup.rr3.startatboot.MyService" />
</intent-filter>
</service>
<receiver
android:name="AlarmReceiver"
android:process=":remote" >
</receiver>
<service
android:name=".DeleteDuplicateTXTableService"
android:screenOrientation="portrait" >
<intent-filter>
<action android:name="com.carefreegroup.rr3.startatboot.DupTXService" />
</intent-filter>
</service>
<receiver
android:name="DuplicateTXReceiver"
android:process=":remote" >
</receiver>
<service android:name=".EmailLog" />
<service android:name=".GCMIntentService" />
<receiver android:name="com.google.android.gcm.GCMBroadcastReceiver" 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" />
<category android:name="com.carefreegroup.rr3" />
</intent-filter>
</receiver>
</application>
NFC was added in API Level 10. More importantly, few API Level 10 and below devices have NFC hardware. You are requiring that devices have NFC hardware; ergo, you will not have very many API Level 10 and below devices that support your app.
If you do not absolutely need NFC to function, use android:required="false", and check for NFC availability at runtime, either via PackageManager and hasSystemFeature(), or just whether you can get your NfcAdapter.
In addition:
You will only be available for devices that have Maps V1, and I would imagine that some newer devices will start dropping support for that, since Maps V1 has been deprecated for a year.
You are wasting CPU and memory with those :remote receivers
There is no PREVENT_POWER_KEY permission in Android