I'm trying to increase my apps compatibility as it currently only supports 21 devices. I've read that permissions and features in the manifest file determine how compatible your app is. Is there a way I can check how compatible each feature or permission is?
What is stopping my app from having more supported devices?
Heres my manifest file.
<uses-sdk android:minSdkVersion="10" android:targetSdkVersion="22" />
<application
android:allowBackup="true"
android:icon="@mipmap/ic_launcher"
android:label="@string/app_name"
android:theme="@style/Theme.AppCompat.Light" >
<meta-data android:name="com.google.android.gms.version" android:value="@integer/google_play_services_version" />
<receiver
android:name=".GcmBroadcastReceiver"
android:permission="com.google.android.c2dm.permission.SEND" >
<intent-filter>
<action android:name="com.google.android.c2dm.intent.RECEIVE" />
<category android:name="com.example.example.example" />
</intent-filter>
</receiver>
<service android:name=".GcmIntentService" />
<activity
android:name=".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=".SplashScreen"
android:label="@string/app_name" android:theme="@style/Theme.AppCompat.Light.NoActionBar">
</activity>
<activity
android:name=".PostDetailActivity"
android:label="@string/app_name"
android:theme="@style/Theme.AppCompat.Light"
android:windowSoftInputMode="stateHidden">
</activity>
<activity
android:name=".NotificationsActivity"
android:label="@string/app_name"
android:theme="@style/Theme.AppCompat.Light"
android:windowSoftInputMode="adjustPan">
</activity>
<meta-data
android:name="com.google.android.maps.v2.API_KEY"
android:value="example"/>
<meta-data
android:name="com.google.android.gms.version"
android:value="@integer/google_play_services_version" />
</application>
<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="android.permission.WRITE_EXTERNAL_STORAGE" />
<uses-permission android:name="android.permission.READ_PHONE_STATE" />
<uses-permission android:name="android.permission.MAPS_RECEIVE" />
<uses-permission android:name="com.google.android.providers.gsf.permission.READ_GSERVICES"/>
<uses-permission android:name="android.permission.ACCESS_NETWORK_STATE"/>
<uses-permission android:name="android.permission.GET_ACCOUNTS" />
<uses-permission android:name="android.permission.WAKE_LOCK" />
<uses-permission android:name="com.google.android.c2dm.permission.RECEIVE" />
<permission android:name="com.example.example.importedapplication.permission.C2D_MESSAGE"
android:protectionLevel="signature" />
<uses-permission android:name="com.example.example.importedapplication.permission.C2D_MESSAGE" />
<uses-feature android:name="com.google.android.maps" android:required="true" />
<permission
android:name="com.arshad.map.permission.MAPS_RECEIVE"
android:protectionLevel="signature" />
<uses-permission
android:name="android.permission.READ_EXTERNAL_STORAGE"
android:maxSdkVersion="22" />
<uses-feature android:name="android.hardware.camera"
android:required="false" />
<uses-feature
android:glEsVersion="0x00020000"
android:required="true"/>
This line needed to be deleted, after I removed it, I increased my supported devices by about 8050