2015-06-23 2 views
0

Я пытаюсь повысить совместимость своих приложений, поскольку в настоящее время он поддерживает только 21 устройство. Я прочитал, что разрешения и функции в файле манифеста определяют, насколько совместимо ваше приложение. Есть ли способ проверить совместимость каждой функции или разрешения?Проблемы с совместимостью с устройствами Android

Что заставляет мое приложение иметь больше поддерживаемых устройств?

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"/> 

+0

FWIW, нет 'android.permission.MAPS_RECEIVE'. – CommonsWare

+0

Удалено, и оно, похоже, ничего не повлияло –

ответ

0
<uses-feature android:name="com.google.android.maps" android:required="true" /> 

Эта строка должна быть удалена, после того как я ее удалил, я увеличил поддерживаемое устройство s примерно на 8050

0

Я никогда не использовал его, только слышал о нем: https://source.android.com/compatibility/cts/index.html

Я знаю, что есть некоторые особенности в Google Play, а также (не используется, только слышал об этом): https://support.google.com/googleplay/android-developer/answer/1286017?hl=en

+0

Спасибо, я рассмотрю его. –

+0

эй, почему у вас есть maxSdkVersion? android: name = "android.permission.READ_EXTERNAL_STORAGE" android: maxSdkVersion = "22" – Karoly

+0

Не слишком уверен, чтобы быть честным, был максимальный уровень sdk для этого в учебнике, который я нашел. Я удалил maxSDKVersion и остался таким же с точки зрения поддерживаемых устройств –

Смежные вопросы