I have published a new update of my App. After publishing it got a warning like "Warning: Your active APK supports less devices then the previous APK. Some users won't get the update."
So i've compared the details of the current and the prior APK. There is only one difference: The new one has the additional entry "Native Platform: simple-xml.2.6.9.jar".
Do you think that there is a problem with it? Acutally i've intergrated the .jar into my android project.
Additionally, the developer console shows me that the app is now compatible with 0 devices... if i search for a certain device i get a notice that it's because of my manifest settings.
<?xml version="1.0" encoding="utf-8"?>
<manifest xmlns:android="http://schemas.android.com/apk/res/android"
package="edu.kit.aifb.nukit"
android:versionCode="8"
android:versionName="#string/app_versionName" >
<uses-permission android:name="android.permission.INTERNET" />
<uses-permission android:name="android.permission.ACCESS_NETWORK_STATE" />
<uses-permission android:name="android.permission.VIBRATE"/>
<uses-sdk
android:minSdkVersion="7"
android:targetSdkVersion="17" />
<application
android:icon="#drawable/ic_launcher"
android:label="#string/app_name"
android:theme="#style/Theme.KIT.Styled"
android:allowBackup="true" >
<activity
android:name="edu.kit.aifb.nukit.gui.SplashScreenActivity"
android:label="#string/app_name"
android:screenOrientation="portrait"
android:theme="#style/Theme.Sherlock.Light.NoActionBar"
android:clearTaskOnLaunch="true" >
<intent-filter>
<action android:name="android.intent.action.MAIN" />
<category android:name="android.intent.category.LAUNCHER" />
</intent-filter>
</activity>
<activity
android:name="edu.kit.aifb.nukit.gui.ChooseCourseActivity"
android:screenOrientation="portrait"></activity>
<activity
android:name="edu.kit.aifb.nukit.gui.QuestioningAndVotingActivity"
android:screenOrientation="portrait"
android:windowSoftInputMode="stateHidden"></activity>
<activity
android:name="edu.kit.aifb.nukit.gui.AnswerQuestionActivity"
android:screenOrientation="portrait"></activity>
<activity
android:name="edu.kit.aifb.nukit.gui.ShowResultsActivity"
android:screenOrientation="portrait"></activity>
<activity
android:name="edu.kit.aifb.nukit.gui.ImpressumActivity"
android:screenOrientation="portrait"></activity>
<activity
android:name="edu.kit.aifb.nukit.gui.LicensesActivity"
android:screenOrientation="portrait"
android:hardwareAccelerated="false"></activity>
<activity
android:name="edu.kit.aifb.nukit.gui.survey.SurveyListActivity"
android:screenOrientation="portrait"></activity>
<activity
android:name="edu.kit.aifb.nukit.gui.survey.QuestionActivity"
android:screenOrientation="portrait"
android:parentActivityName=".SurveyListActivity" >
<meta-data
android:name="android.support.PARENT_ACTIVITY"
android:value=".SurveyListActivity" />
</activity>
<activity
android:name="edu.kit.aifb.nukit.gui.survey.SurveyResultsActivity"
android:label="SurveyResultsActivity"
android:parentActivityName=".SurveyListActivity">
<meta-data
android:name="android.support.PARENT_ACTIVITY"
android:value=".SurveyListActivity" />
</activity>
</application>
if i install the apk directly on my device, it works fine.
This should probably be due to changes done in your Android Manifest relating to max and min sdk versions
<uses-sdk android:minSdkVersion="integer"
android:targetSdkVersion="integer"
android:maxSdkVersion="integer" />
If this SDK version range has been altered, your new updated app might support lesser number of devices.
Alright, i fixed it.
The problem was that actualy only the SurveyLib.jar is using simple-xml-2.6.9.jar and the simplexml.jar was included within the SurveyLib.jar. So i think there was a problem dexing the simplexml.jar within surveylib.jar.
i've created the surveylib.jar again without simplexml.jar but included the simplexml.jar to the libs folder of my app.
now it works fine. thanks to you all for your help.
Related
I have built & sign my apk by Eclipse ADT as it is describes (export and sign by creating a new key). But it can't be install on real device while an errors occurs, such as "installer package error". I have no Android device & sent my apk to friends by email. I'm using AVD and everyth is fine with it. Any suggestions? Thanx guys.
<manifest xmlns:android="http://schemas.android.com/apk/res/android"
package="com.XXXX.YYYY"
android:versionCode="0"
android:versionName="0.9.2" android:installLocation="internalOnly">
<uses-sdk
android:minSdkVersion="13"
android:targetSdkVersion="17" />
<uses-permission android:name="android.permission.INTERNET" />
<uses-permission android:name="android.permission.ACCESS_NETWORK_STATE" />
<application
android:icon="#drawable/ic_launcher"
android:label="#string/app_name"
android:theme="#style/AppTheme"
android:hardwareAccelerated="true"
android:permission="android.permission.INTERNET"
android:allowBackup="true">
<activity
android:name="com.XXXX.YYYY.ActivityMain"
android:label="#string/main_activity_title"
android:launchMode="singleTop" >
<intent-filter>
<action android:name="android.intent.action.MAIN" />
<category android:name="android.intent.category.LAUNCHER" />
</intent-filter>
</activity>
<activity android:name="com.XXXX.YYYY.ActivityDetails"
android:parentActivityName="com.XXXX.YYYY.ActivityMain"
android:excludeFromRecents="true"
android:configChanges="orientation|screenSize">
</activity>
</application></manifest>
UPD: apk installs good, but the error occurs if choose Open (see screenshot). After that app works fine. But on tablet if try open app it says "App deleted".
UPD2: add supporting API 4+ meta tag for the 2nd activity, but it takes no effect
<meta-data
android:name="android.support.PARENT_ACTIVITY"
android:value="com.XXXX.YYYY.ActivityMain" />
You probably need to make sure your device and your friend's devices can install apps that are not from the play store.
This is a feature you have to specifically set, or else apps that are outside the play store will not install.
Here is how to set it:
Open settings
Find the Security settings (Pre 4.0 it is under Applications)
Look for a setting that says Unknown sources, or non-market apps
Enable that setting
Everything should work after that!
Here is an article with pictures if you are still confused :)
Your example was missing the closing </manifest> and android:enabled. I'm not sure if the latter would prevent a device from fully installing it but the first one would.
I've also had issues using the full activity names in the past, so you may want to try using simplifying them to see if it helps.
<manifest xmlns:android="http://schemas.android.com/apk/res/android"
package="com.XXXX.YYYY"
android:versionCode="0"
android:versionName="0.9.2" android:installLocation="internalOnly">
<uses-sdk
android:minSdkVersion="13"
android:targetSdkVersion="17" />
<uses-permission android:name="android.permission.INTERNET" />
<uses-permission android:name="android.permission.ACCESS_NETWORK_STATE" />
<application
android:icon="#drawable/ic_launcher"
android:label="#string/app_name"
android:theme="#style/AppTheme"
android:hardwareAccelerated="true"
android:allowBackup="true">
<activity
android:name=".ActivityMain"
android:label="#string/main_activity_title"
android:enabled="true"
android:permission="android.permission.INTERNET"
android:launchMode="singleTop" >
<intent-filter>
<action android:name="android.intent.action.MAIN" />
<category android:name="android.intent.category.LAUNCHER" />
</intent-filter>
</activity>
<activity android:name=".ActivityDetails"
android:parentActivityName=".ActivityMain"
android:excludeFromRecents="true"
android:configChanges="orientation|screenSize">
</activity>
</application>
</manifest>
Is "Unknown sources" option under "security" allowed on device?
My problem was a duplicate internet permission request on Manifest! When I remove that from activity app was run normally.
I have used a Web view. which loads webpage. When i orientation is changed it reloads. I want to stop reloading. I did following change in manifest XML File.
It works in android 2.2 but not in android 4.0. I am a beginner can any one provide solution.
My Manifest.xml is;
<manifest xmlns:android="http://schemas.android.com/apk/res/android"
package="application.eag"
android:versionCode="1"
android:versionName="1.0" >
<uses-sdk
android:minSdkVersion="8"
android:targetSdkVersion="17" />
<uses-permission android:name="android.permission.INTERNET" />
<application
android:icon="#drawable/ic_launcher"
android:label="#string/app_name"
android:theme="#style/AppTheme" >
<activity
android:name=".MainActivity"
android:label="#string/title_activity_main"
android:configChanges="orientation|screenSize|keyboardHidden">
<intent-filter>
<action android:name="android.intent.action.MAIN" />
<category android:name="android.intent.category.LAUNCHER" />
</intent-filter>
</activity>
</application>
</manifest>
<activity
android:name=".ActivityName"
android:configChanges="orientation|screenSize|keyboardHidden"/>
Use screenSize for newly version. orientation might not be supported in some version, need to use screenSize for configChanges
This one worked for me:
<activity android:name=".YourActivity"
android:configChanges="orientation|screenSize|keyboardHidden">
<intent-filter>
<action android:name="android.intent.action.MAIN" />
<category android:name="android.intent.category.LAUNCHER" />
</intent-filter>
</activity>
I am using like the following and it works for me.
<activity
android:name="com.myapp.MainActivity"
android:configChanges="orientation|keyboardHidden"/>
Made changes as answered by Avadhani Y
1) Added following in manifest
<activity
android:name=".ActivityName"
android:configChanges="orientation|screenSize|keyboardHidden"/>
2) changed manifest as
<uses-sdk android:minSdkVersion="8" android:targetSdkVersion="17"/>
3) in project.properties set the following value
# Project target.
target=android-13
Use your activity like this ...
<activity
android:name=".UserLoginActivity"
android:configChanges="keyboardHidden|orientation|screenSize"
android:screenOrientation="unspecified" >
</activity>
I couldn't get any of these to work, but then I got it (not sure what was going on but thought I'd elaborate on other answers to save people time). I found the below to work for my app (1 line in your manifest INSIDE the tag, for the activity you want this behavior for. I also discovered it completely depends on your app on what you need here. For a complete list see http://developer.android.com/guide/topics/manifest/activity-element.html#config
And by 'doesn't work', I mean the onDestroy() method got called every time I rotated my device. See Why not use always android:configChanges="keyboardHidden|orientation"? for reasons you likely shouldn't use this.
Manifest.xml:
<activity
android:name="com.example.MainActivity"
android:label="#string/app_name"
android:launchMode="singleTop"
android:configChanges="orientation|screenSize"
>
I have an Android app that has been in the Google Play store for about two years now (https://play.google.com/store/apps/details?id=dkh.idex) with API level 7+ and support for all screen sizes. It uses a few permissions (ACCESS_NETWORK_STATE, INTERNET, READ_EXTERNAL_STORAGE, WRITE_EXTERNAL_STORAGE).
On April 22 2013 I uploaded a version (version code 44) that worked fine on all my users devices. A month later, on May 22 2013 I uploaded a new version with some minor changes (version code 45), but the last few days (starting May 27) a lot of users has complained to me that their devices no longer are compatible with the newest version of my app. These users have been using the app with no such problems for up to two years. Some devices are still able to upgrade to the newest version, but others get the message that their device is not compatible when trying to upgrade (mind you, they already have an older version of the app). I was able to install the application directly through ADB (USB) on a device that said it was not compatible in the Google Play store (a Samsung Galaxy Tab 10.1, old version).
I looked through my changesets of my files, and the only change I have made in the AndroidManifest.xml between the two releases are updating the version code and version number. I have not changed any use permissions, supported screen sizes, supported API levels or even added any activities or changed debug settings.
Here is my AndroidManifest.xml:
<?xml version="1.0" encoding="utf-8"?>
<manifest xmlns:android="http://schemas.android.com/apk/res/android"
package="dkh.idex"
android:versionName="3.2.11" android:versionCode="45">
<supports-screens
android:smallScreens="true"
android:normalScreens="true"
android:largeScreens="true"
android:anyDensity="true" />
<uses-sdk android:minSdkVersion="7"/>
<uses-permission android:name="android.permission.INTERNET"></uses-permission>
<uses-permission android:name="android.permission.WRITE_EXTERNAL_STORAGE"></uses-permission>
<uses-permission android:name="android.permission.ACCESS_NETWORK_STATE"/>
<application android:name="dkh.classes.MyApp" android:label="#string/app_name" android:debuggable="false" android:icon="#drawable/ic_launcher_idex_v3">
<activity android:name=".idex"
android:label="#string/app_name"
android:screenOrientation="portrait">
<intent-filter>
<action android:name="android.intent.action.MAIN" />
<category android:name="android.intent.category.LAUNCHER" />
</intent-filter>
</activity>
<activity android:name=".Form2"
android:label="#string/app_name"
android:screenOrientation="portrait"
android:configChanges="orientation">
</activity>
<activity android:name=".InfoForm"
android:label="#string/app_name"
android:screenOrientation="portrait">
</activity>
<activity android:name=".INSTAForm"
android:label="#string/app_name"
android:launchMode="standard"
android:screenOrientation="portrait">
</activity>
<activity android:name=".HygieneForm"
android:label="#string/app_name"
android:screenOrientation="portrait">
</activity>
<activity android:name=".CommentForm"
android:label="#string/app_name"
android:screenOrientation="portrait">
</activity>
<activity android:name=".AddReqChooseForm"
android:label="#string/app_name"
android:screenOrientation="portrait">
</activity>
<activity android:name=".AddReqForm"
android:label="#string/app_name"
android:screenOrientation="portrait">
</activity>
<activity android:name=".FTPForm" android:label="#string/app_name" android:screenOrientation="portrait"></activity>
<activity android:name=".SyncForm" android:label="#string/app_name" android:screenOrientation="portrait"></activity>
<activity android:name=".DrawTestForm" android:label="#string/app_name" android:configChanges="keyboardHidden|orientation"></activity>
<activity android:name="StatisticsForm" android:screenOrientation="portrait" android:label="#string/app_name"></activity>
<activity android:name="PhotoGallery" android:screenOrientation="portrait" android:label="#string/app_name"></activity>
<activity android:name="PhotoView" android:label="#string/app_name"></activity>
<activity android:name="ParametersForm" android:label="#string/app_name" android:screenOrientation="portrait" android:windowSoftInputMode="adjustPan"></activity>
<activity android:name="PropertiesForm" android:label="#string/app_name" android:screenOrientation="portrait" android:windowSoftInputMode="adjustPan"></activity>
<activity android:screenOrientation="portrait" android:name="InspectionChangeForm" android:label="#string/app_name"></activity>
<activity android:name="AdvancedSyncWindow" android:label="#string/app_name" android:screenOrientation="portrait"></activity>
<service android:process=":image_process" android:name=".ImageUploadService"></service>
<activity android:name=".HelpWindow" android:label="#string/app_name"></activity>
<activity android:name="RecoverView"></activity>
<activity android:name="InspectionCommentForm" ></activity>
</application>
</manifest> `
In the rest of my code I have added some texts to my resource files and made some standard minor changes, but nothing that weren't in the app already in some form.
I am really puzzled by this problem. Does anyone know what could be the cause of this or know if Google has changed anything that could have an effect on this? Please ask if you need more information.
I solved it.
The problem was that Google Play will filter applications based on the device screen size, and because xlargeScreens are not supported in API 7 (version 2.1) the filter will be set to false on these devices. This has not been enforced until end of May. My app had worked on the exact same specification for two years, but I suspect that Google Play has made an update to enforce this constraint.
The solution: If you have an app that is developed for API 7 but you want it to be available on xlargeScreens devices, you have to set in your manifest
<uses-sdk
android:minSdkVersion="7"
android:targetSdkVersion="9" />
If either minSdkVersion or targetSdkVersion is 9 or larger, Google Play will allow xlargeScreen devices to see your app.
I installed BB tools for Eclipse, just added and removed BB Nature to one of my projects.
And now, I can't compile it (for Android).
Eclipse told me about some troubles in AndroidManifest.xml:
native-code: armeabi AndroidManifest.xml /VitocarsAndroidApp AndroidManifest.xml BlackBerry Verifying Problem
But the manifest is OK, no one line is highlighted:
<?xml version="1.0" encoding="utf-8"?>
<manifest xmlns:android="http://schemas.android.com/apk/res/android"
package="com.asap.vitocarsandroidapp"
android:versionCode="5"
android:versionName="1.04" >
<uses-sdk
android:minSdkVersion="8"
android:targetSdkVersion="17" />
<uses-permission android:name="android.permission.INTERNET" />
<uses-permission android:name="android.permission.CALL_PHONE" />
<uses-permission android:name="android.permission.READ_PHONE_STATE" />
<application
android:name="com.asap.vitocarsandroidapp.system.VitocarsApplication"
android:allowBackup="true"
android:icon="#drawable/ic_launcher"
android:label="#string/app_name"
android:theme="#style/AppTheme" >
<activity
android:name="com.asap.vitocarsandroidapp.LoginActivity"
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.asap.vitocarsandroidapp.TableViewActivity"
android:label="#string/title_activity_table_view" >
</activity>
<activity
android:name="com.asap.vitocarsandroidapp.PartActivity"
android:label="#string/title_activity_part" >
</activity>
<activity
android:name="com.asap.vitocarsandroidapp.PhotoViewActivity"
android:label="#string/title_activity_photo_view" >
</activity>
<activity
android:name="com.asap.vitocarsandroidapp.UserRegisterActivity"
android:label="#string/title_activity_user_register" >
</activity>
<activity
android:name="com.asap.vitocarsandroidapp.ConfirmPhoneActivity"
android:label="#string/title_activity_confirm_phone" >
</activity>
<activity
android:name="com.asap.vitocarsandroidapp.OfficeActivity"
android:label="#string/title_activity_office" >
</activity>
<activity
android:name="com.asap.vitocarsandroidapp.PriceOfferActivity"
android:label="#string/title_activity_price_offer" >
</activity>
<activity
android:name="com.asap.vitocarsandroidapp.RegionOrderActivity"
android:label="#string/title_activity_region_order" >
</activity>
<activity
android:name="com.asap.vitocarsandroidapp.MapView"
android:label="#string/title_activity_map_view" >
</activity>
</application>
</manifest>
I already spent a lot of time, trying to solve it.
Maybe, somebody can help me?
Had the exact same issue.
Only uninstalling the Blackberry plugin solved it for me.
I guess that the Blcackberry plugin still left some remainders in the validation process of Eclipse, even though I removed the Blackberry nature from the project.
Check the .project file and remove all the * rim * stuff.
A build command and nature was leftover when i ran into this problem.
I put an app in the play store and my friend, who is running 4.1(Nexus 7), got the following message when trying to install my app : "your device isn't compatible with this version". Why this came? Please can any one help me.
Manifeast file
< ?xml version="1.0" encoding="utf-8"?>
< manifest xmlns:android="http://schemas.android.com/apk/res/android"
package="com.ibkr.pcg"
android:versionCode="3"
android:versionName="1.1">
< uses-sdk android:minSdkVersion="7"
android:targetSdkVersion="8"/>
<uses-permission android:name="android.permission.INTERNET"></uses-permission>
<uses-permission android:name="android.permission.CAMERA" />
<uses-permission android:name="android.permission.ACCESS_NETWORK_STATE" ></uses-permission>
<!-- C2DM Permissions Start -->
<!-- Only this application can receive the messages and registration result -->
<permission android:name="com.ibkr.pcg.permission.C2D_MESSAGE" android:protectionLevel="signature" />
<uses-permission android:name="com.ibkr.pcg.permission.C2D_MESSAGE" />
<!-- This app has permission to register and receive message -->
<uses-permission android:name="com.google.android.c2dm.permission.RECEIVE" />
<!-- End of the C2DM Permissions -->
<application android:icon="#drawable/pcgicon"
android:label="#string/app_name"
android:theme="#android:style/Theme.NoTitleBar.Fullscreen"
android:name="MyApplication"
android:debuggable="true">
<activity android:name=".PriceCheckGuruSplash"
android:label="#string/app_name">
<intent-filter>
<action android:name="android.intent.action.MAIN" />
<category android:name="android.intent.category.LAUNCHER" />
</intent-filter>
</activity>
<!-- Only C2DM servers can send messages for the app. If permission is not set - any other app can generate it -->
<receiver
android:name=".C2DMMessageReciever" android:permission="com.google.android.c2dm.permission.SEND" >
<!-- Receive the actual message -->
<intent-filter >
<action android:name="com.google.android.c2dm.intent.RECEIVE" >
</action>
<category android:name="com.ibkr.pcg" />
</intent-filter>
</receiver>
<receiver
android:name=".C2DMRegistrationReceiver"
android:permission="com.google.android.c2dm.permission.SEND" >
<intent-filter >
<action android:name="com.google.android.c2dm.intent.REGISTRATION" >
</action>
<category android:name="com.ibkr.pcg" />
</intent-filter>
</receiver>
<activity android:name="MessageReceivedActivty" android:screenOrientation="portrait"/>
<activity android:name="LoginScreen" android:screenOrientation="portrait"> </activity>
<activity android:name="RegistrationScreen" android:screenOrientation="portrait"> </activity>
<activity android:name="ForgotPasswordScreen" android:screenOrientation="portrait"> </activity>
<activity android:name="UserPreferences" android:screenOrientation="portrait"> </activity>
<activity android:name="TrackedItems" android:screenOrientation="portrait"> </activity>
<activity android:name="WebPage" android:screenOrientation="portrait"> </activity>
<activity android:name="CustomTabActivity" android:screenOrientation="portrait"> </activity>
<activity android:name="TabGroup1Activity" android:screenOrientation="portrait"> </activity>
<activity android:name="TabGroup2Activity" android:screenOrientation="portrait"> </activity>
<activity android:name="TabGroup3Activity" android:screenOrientation="portrait"> </activity>
<activity android:name="TabGroup4Activity" android:screenOrientation="portrait"> </activity>
<activity android:name="SearchScreen" android:screenOrientation="portrait"> </activity>
<activity android:name="SearchResultsScreen" android:screenOrientation="portrait"></activity>
<activity android:name="ProductDisplay" android:screenOrientation="portrait"></activity>
<activity android:name="VendorsDisplay" android:screenOrientation="portrait"></activity>
<activity android:name="Filter" android:screenOrientation="portrait"></activity>
<activity android:name="barcodeScanner" android:screenOrientation="portrait"></activity>
<activity android:name="ScannerPage" android:screenOrientation="portrait"></activity>
<activity android:name="Linegraphpage" android:screenOrientation="landscape"></activity>
<activity android:name="org.achartengine.GraphicalActivity" android:screenOrientation="landscape"/>
<activity android:name="org.acra.CrashReportDialog"
android:theme="#android:style/Theme.Dialog"
android:launchMode="singleInstance"
android:excludeFromRecents="true"
android:finishOnTaskLaunch="true" />
</application>
< /manifest>
//remove this android:targetSdkVersion="8"
and Nexus 7 doesn't have back camera features.
<uses-permission android:name="android.permission.CAMERA" />
Note: If you are using the camera via an intent, your application does not need to request this permission.
Camera Features - Your application must also declare use of camera features, for example:
<uses-feature android:name="android.hardware.camera" />
For a list of camera features, see the manifest Features Reference.
Adding camera features to your manifest causes Google Play to prevent your application from being installed to devices that do not include a camera or do not support the camera features you specify. For more information
If your application can use a camera or camera feature for proper operation, but does not require it, you should specify this in the manifest by including the android:required attribute, and setting it to false:
Note: you need to mention supports-screens
It's because of your 'android.permission.ACCESS_NETWORK_STATE' permission- the device doesn't have a cell phone modem, you need to put android:required="false" in the permission to allow it to be installed on devices that don't support it
To control filtering, always explicitly declare hardware features in
elements, rather than relying on Google Play to
"discover" the requirements in elements. Then, if
you want to disable filtering for a particular feature, you can add a
android:required="false" attribute to the declaration.
http://developer.android.com/guide/topics/manifest/uses-permission-element.html
Like others already suggested - the camera could be an issue here. There's a good post on the android developers blog about nexus 7. Basically it only has a single front facing camera, so your app asking for the default camera requirement will fail....
basically you need to extend the request to say it's not critical, and then handle the details in your app...
<uses-feature android:name="android.hardware.camera"
android:required="false"/>
For lots more info, follow the link
http://android-developers.blogspot.com.au/2012/07/getting-your-app-ready-for-jelly-bean.html
android:targetSdkVersion should be the highest SDK available when you are building the app, unless you have very specific reasons not to. Maybe you want to guarantee newer methods and APIs will not be called because you must work right on a specific device, even if it means sacrificing behavior on newer ones.
Most of the time, download the latest SDK and set android:targetSdkVersion to the latest version.
Just use this
<uses-sdk android:minSdkVersion="7" />
Use the following :
<supports-screens
android:largeScreens="true"
android:normalScreens="true"
android:smallScreens="true"
android:xlargeScreens="true" />
<uses-sdk
android:minSdkVersion="7"
android:targetSdkVersion="16" /> //or just remove the targetSdkVersion, altough it is not recommended
Always attributes defined in Manifest Filters out Your app By Google Playstore to some devices.
For example:
Declared specific Target Sdk Version.
Defined Camera permission(Will filter devices without Camera)
Uses Feature Camera.
SIM enabled device.
Device with Wifi.
So, Before releasing your app you have to keep in mind that you have to reach maximum devices for your target than you have to Opt out some of the features and Permissions and most of the time Sdk version target.
Hope this gives you idea about releasing App.