Device support removed warning coming when updating app on playstore Android
Asked Answered
T

1

4

I have an existing app available on playstore which runs on min sdk 15. I had made some changes and try to update my app and when I uploaded my apk everything goes fine but before the publish on review section , playstore gives me a warning as below

Device support removed Warning

Deactivation of this APK will result in your app being available for new installs on fewer types of devices.

TipIf this is an unintended change, then retain this APK in the new release or ensure that your new APKs support all currently supported devices.

after seeing this warning i have search different forums to know what cause the problem

link 1

link2

most of my search indicate that if i have specify something in manifest like android:required="false" screen support tags etc

but the thing is i have not added any new library or hardware feature only added some new classes, i have no idea what makes the issue. i will show how my manifest and gradle looks for the existing app in playstore and my new update

My existing App gradle and manifest

Gradle

buildscript {
repositories {
    maven { url "http://dl.bintray.com/populov/maven" }
    mavenCentral()
    jcenter()
}
dependencies {
    classpath 'com.android.tools.build:gradle:2.2.3'
    classpath 'com.google.gms:google-services:3.0.0'
    classpath 'com.neenbedankt.gradle.plugins:android-apt:1.8'
    // NOTE: Do not place your application dependencies here; they belong
    // in the individual module build.gradle files
}
}
allprojects {
repositories {

    maven { url "http://dl.bintray.com/populov/maven" }
    mavenCentral()
    jcenter()
}
}

 //app gradle
apply plugin: 'com.android.application'
apply plugin: 'com.neenbedankt.android-apt'
android {
compileSdkVersion 25
buildToolsVersion "25.0.2"

defaultConfig {
    applicationId "com.my.app"
    minSdkVersion 15
    targetSdkVersion 25
    versionCode 10
    versionName "2.0.0.3"
}
lintOptions {
    checkReleaseBuilds false
}
buildTypes {
    release {
        minifyEnabled false
        proguardFiles getDefaultProguardFile('proguard-android.txt'), 'proguard-rules.pro'
    }
}
}


dependencies {
compile fileTree(dir: 'libs', include: ['*.jar'])
compile project(":volley")

compile group: 'com.google.code.gson', name: 'gson', version: '2.3.1'
compile 'com.android.support:appcompat-v7:25.3.1'
compile 'com.android.support:design:25.3.1'
compile 'com.viewpagerindicator:library:2.4.1@aar'
compile 'com.android.support:cardview-v7:25.3.1'
compile 'com.android.support:recyclerview-v7:25.3.1'
compile 'de.hdodenhof:circleimageview:2.0.0'
compile 'com.facebook.android:facebook-android-sdk:4.7.0'
compile 'com.google.android.gms:play-services-gcm:10.2.1'
compile 'com.android.support:support-v4:25.3.1'
compile 'uk.co.chrisjenx:calligraphy:2.2.0'
compile 'com.github.bumptech.glide:glide:3.7.0'
compile 'com.jakewharton:butterknife:8.4.0'
compile files('libs/YouTubeAndroidPlayerApi.jar')
apt 'com.jakewharton:butterknife-compiler:8.4.0'

}
 apply plugin: 'com.google.gms.google-services'

Manifest.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.my.app">

<uses-permission android:name="android.permission.INTERNET" />
<uses-permission android:name="android.permission.ACCESS_NETWORK_STATE" />
<!-- <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"/>

<!-- GCM Permissions -->

<uses-permission android:name="android.permission.WAKE_LOCK" />
<uses-permission android:name="com.google.android.c2dm.permission.RECEIVE" />

<permission
    android:name="com.my.app.permission.C2D_MESSAGE"
    android:protectionLevel="signature" />

<uses-permission android:name="com.my.app.permission.C2D_MESSAGE" />

<application
    android:name=".app.AppController"
    android:allowBackup="true"
    android:icon="@mipmap/ic_launcher"
    android:label="@string/app_name"
    android:supportsRtl="true"
    android:theme="@style/AppTheme">

    <!-- LAUNCHER ACTIVITY -->

    <activity
        android:name=".LaunchActivity"
        android:theme="@style/SplashTheme"
        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=".SliderActivity"
        android:screenOrientation="portrait">

    </activity>


    <activity
        android:name=".LoginActivity"
        android:label="Sign In"
        android:screenOrientation="portrait"
        android:theme="@style/Login_Accent_Theme"
        ></activity>
    <activity
        android:name=".ForgotPasswordActivity"
        android:label="Change Password?"
        android:parentActivityName=".LoginActivity"
        android:screenOrientation="portrait"
        android:theme="@style/App_Accent_Theme"
        android:windowSoftInputMode="stateHidden"></activity>
    <activity
        android:name=".VideoActivity"
        android:configChanges="orientation|keyboardHidden|screenSize"
        android:hardwareAccelerated="true"
        android:theme="@style/App_Accent_Theme" />
    <activity
        android:name=".SignUpActivity"
        android:label="Sign Up"
        android:screenOrientation="portrait"
        android:theme="@style/Login_Accent_Theme"></activity>


    <activity
        android:name=".HomeActivity"
        android:launchMode="singleTop"
        android:configChanges="orientation"
        android:screenOrientation="portrait"></activity>

    <activity android:name=".YoutubePlayerActivity"
        android:screenOrientation="landscape"
        android:configChanges="keyboardHidden|orientation|screenSize"></activity>

    <activity
        android:name=".VideoLessonActivity"
        android:parentActivityName=".HomeActivity"
        android:screenOrientation="portrait">
        <meta-data
            android:name="android.support.PARENT_ACTIVITY"
            android:value=".HomeActivity" />
    </activity>



    <activity
        android:name=".NotificationActivity"
        android:screenOrientation="portrait"
        >
        <meta-data
            android:name="android.support.PARENT_ACTIVITY"
            android:value=".HomeActivity" />
    </activity>


    <activity
        android:name=".MTestActivity"
        android:parentActivityName=".HomeActivity"
        android:screenOrientation="portrait">
        <meta-data
            android:name="android.support.PARENT_ACTIVITY"
            android:value=".HomeActivity" />
    </activity>
    <activity
        android:name=".MSummaryActivity"
        android:screenOrientation="portrait">

    </activity>

        <meta-data
            android:name="android.support.PARENT_ACTIVITY"
            android:value=".HomeActivity" />
    </activity>


    <activity
        android:name=".PdfActivity"
        android:launchMode="singleTop"
        android:parentActivityName=".HomeActivity"
        android:screenOrientation="portrait"
        >
        <meta-data
            android:name="android.support.PARENT_ACTIVITY"
            android:value=".HomeActivity" />
    </activity>




    <activity
        android:name=".WebActivity"
        android:hardwareAccelerated="true"
        android:screenOrientation="portrait"></activity>
    <activity
        android:name=".FeedWebview"
        android:hardwareAccelerated="true"
        android:label="News Feed"
        android:screenOrientation="portrait"></activity>

    <meta-data
        android:name="com.google.android.gms.version"
        android:value="@integer/google_play_services_version" />
    <meta-data
        android:name="com.facebook.sdk.ApplicationId"
        android:value="@string/facebook_app_id" />

    <activity
        android:name="com.facebook.FacebookActivity"
        android:configChanges="keyboard|keyboardHidden|screenLayout|screenSize|orientation"
        android:label="@string/app_name"
        android:theme="@android:style/Theme.Translucent.NoTitleBar" />

    <!-- GCM CLASSES -->

    <receiver
        android:name="com.google.android.gms.gcm.GcmReceiver"
        android:exported="true"
        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.my.app" />
        </intent-filter>
    </receiver>
    <service android:name=".gcm.RegistrationIntentService"
        android:exported="false"/>
    <service
        android:name=".gcm.MyGcmListenerService"
        android:exported="false">
        <intent-filter>
            <action android:name="com.google.android.c2dm.intent.RECEIVE" />
        </intent-filter>
    </service>
    <service
        android:name=".gcm.MyInstanceIDListenerService"
        android:exported="false">
        <intent-filter>
            <action android:name="com.google.android.gms.iid.InstanceID" />
        </intent-filter>
    </service>

</application>

The above is my current app deatils on playstore

The following is the warning signed build from playstore

gradle

// Top-level build file where you can add configuration options common to all sub-projects/modules.

buildscript {
repositories {
    jcenter()
}
dependencies {
    classpath 'com.android.tools.build:gradle:2.3.3'
    classpath 'com.google.gms:google-services:3.0.0'
    // NOTE: Do not place your application dependencies here; they belong
    // in the individual module build.gradle files
}
}
allprojects {
repositories {

    maven { url "http://dl.bintray.com/populov/maven" }
    mavenCentral()
    jcenter()
}
}

task clean(type: Delete) {
delete rootProject.buildDir
}

     //app gradle
apply plugin: 'com.android.application'

android {
compileSdkVersion 25
buildToolsVersion "25.0.2"

defaultConfig {
    applicationId "com.my.app"
    minSdkVersion 15
    targetSdkVersion 25
    versionCode 11
    versionName "2.0.0.4"
}
buildTypes {
    release {
        minifyEnabled false
        proguardFiles getDefaultProguardFile('proguard-android.txt'), 'proguard-rules.pro'
    }
}
}

dependencies {
compile fileTree(include: ['*.jar'], dir: 'libs')
compile project(":volley")


compile 'com.android.support:appcompat-v7:25.3.1'
compile 'com.android.support:design:25.3.1'
compile 'com.viewpagerindicator:library:2.4.1@aar'
compile 'com.android.support:cardview-v7:25.3.1'
compile 'com.android.support:recyclerview-v7:25.3.1'
compile 'de.hdodenhof:circleimageview:2.0.0'
compile 'com.facebook.android:facebook-android-sdk:4.7.0'
compile 'com.google.android.gms:play-services-gcm:10.2.1'
compile 'com.android.support:support-v4:25.3.1'
compile 'uk.co.chrisjenx:calligraphy:2.2.0'
compile 'com.github.bumptech.glide:glide:3.7.0'
compile 'com.jakewharton:butterknife:8.4.0'
compile files('libs/YouTubeAndroidPlayerApi.jar')

/*@new change gradle compile*/
compile 'com.jakewharton:butterknife:8.7.0'
annotationProcessor 'com.jakewharton:butterknife-compiler:8.7.0'
compile 'com.google.code.gson:gson:2.3.1'
}
apply plugin: 'com.google.gms.google-services'

Manifest.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.my.app">

<uses-permission android:name="android.permission.INTERNET" />
<uses-permission android:name="android.permission.ACCESS_NETWORK_STATE" />
<!-- <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"/>

<!-- GCM Permissions -->

<uses-permission android:name="android.permission.WAKE_LOCK" />
<uses-permission android:name="com.google.android.c2dm.permission.RECEIVE" />

<permission
    android:name="com.my.app.permission.C2D_MESSAGE"
    android:protectionLevel="signature" />

<uses-permission android:name="com.my.app.permission.C2D_MESSAGE" />

<application
    android:name=".app.AppController"
    android:allowBackup="true"
    android:icon="@mipmap/ic_launcher"
    android:label="@string/app_name"
    android:supportsRtl="true"
    android:theme="@style/AppTheme">

    <!-- LAUNCHER ACTIVITY -->

    <activity
        android:name=".LaunchActivity"
        android:theme="@style/SplashTheme"
        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=".SliderActivity"
        android:screenOrientation="portrait">

    </activity>


    <activity
        android:name=".LoginActivity"
        android:label="Sign In"
        android:screenOrientation="portrait"
        android:theme="@style/Login_Accent_Theme"
        ></activity>
    <activity
        android:name=".ForgotPasswordActivity"
        android:label="Change Password?"
        android:parentActivityName=".LoginActivity"
        android:screenOrientation="portrait"
        android:theme="@style/App_Accent_Theme"
        android:windowSoftInputMode="stateHidden"></activity>
    <activity
        android:name=".VideoActivity"
        android:configChanges="orientation|keyboardHidden|screenSize"
        android:hardwareAccelerated="true"
        android:theme="@style/App_Accent_Theme" />
    <activity
        android:name=".SignUpActivity"
        android:label="Sign Up"
        android:screenOrientation="portrait"
        android:theme="@style/Login_Accent_Theme"></activity>


    <activity
        android:name=".HomeActivity"
        android:launchMode="singleTop"
        android:configChanges="orientation"
        android:screenOrientation="portrait"></activity>

    <activity android:name=".YoutubePlayerActivity"
        android:screenOrientation="landscape"
        android:configChanges="keyboardHidden|orientation|screenSize"></activity>

    <activity
        android:name=".VideoLessonActivity"
        android:parentActivityName=".HomeActivity"
        android:screenOrientation="portrait">
        <meta-data
            android:name="android.support.PARENT_ACTIVITY"
            android:value=".HomeActivity" />
    </activity>



    <activity
        android:name=".NotificationActivity"
        android:screenOrientation="portrait"
        >
        <meta-data
            android:name="android.support.PARENT_ACTIVITY"
            android:value=".HomeActivity" />
    </activity>


    <activity
        android:name=".MTestActivity"
        android:parentActivityName=".HomeActivity"
        android:screenOrientation="portrait">
        <meta-data
            android:name="android.support.PARENT_ACTIVITY"
            android:value=".HomeActivity" />
    </activity>
    <activity
        android:name=".MSummaryActivity"
        android:screenOrientation="portrait">

    </activity>

        <meta-data
            android:name="android.support.PARENT_ACTIVITY"
            android:value=".HomeActivity" />
    </activity>


    <activity
        android:name=".PdfActivity"
        android:launchMode="singleTop"
        android:parentActivityName=".HomeActivity"
        android:screenOrientation="portrait"
        >
        <meta-data
            android:name="android.support.PARENT_ACTIVITY"
            android:value=".HomeActivity" />
    </activity>




    <activity
        android:name=".WebActivity"
        android:hardwareAccelerated="true"
        android:screenOrientation="portrait"></activity>
    <activity
        android:name=".FeedWebview"
        android:hardwareAccelerated="true"
        android:label="News Feed"
        android:screenOrientation="portrait"></activity>

    <meta-data
        android:name="com.google.android.gms.version"
        android:value="@integer/google_play_services_version" />
    <meta-data
        android:name="com.facebook.sdk.ApplicationId"
        android:value="@string/facebook_app_id" />

    <activity
        android:name="com.facebook.FacebookActivity"
        android:configChanges="keyboard|keyboardHidden|screenLayout|screenSize|orientation"
        android:label="@string/app_name"
        android:theme="@android:style/Theme.Translucent.NoTitleBar" />

    <!-- GCM CLASSES -->

    <receiver
        android:name="com.google.android.gms.gcm.GcmReceiver"
        android:exported="true"
        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.my.app" />
        </intent-filter>
    </receiver>
    <service android:name=".gcm.RegistrationIntentService"
        android:exported="false"/>
    <service
        android:name=".gcm.MyGcmListenerService"
        android:exported="false">
        <intent-filter>
            <action android:name="com.google.android.c2dm.intent.RECEIVE" />
        </intent-filter>
    </service>
    <service
        android:name=".gcm.MyInstanceIDListenerService"
        android:exported="false">
        <intent-filter>
            <action android:name="com.google.android.gms.iid.InstanceID" />
        </intent-filter>
    </service>
   <activity android:name=".ui.FiltrActivity"
        android:theme="@style/AppThemeNoAction"
        android:screenOrientation="portrait"/>
    <activity android:name=".ui.SolitActivity"
        android:theme="@style/AppThemeNoAction"
        android:screenOrientation="portrait"/>

</application>

</manifest>

I have only added 2 more activity on manifest and change the new butternife in gradle. can any one help me what cause the warning in playstore because I haven't made any major change in my app.

Turmoil answered 25/9, 2017 at 7:15 Comment(0)
S
0

Please check this answer and the comments. Most of the times it would be because of some manifest changes and some screen support or new permissions added and hence would be a good to go thing.

Stoat answered 20/2, 2019 at 12:35 Comment(0)

© 2022 - 2024 — McMap. All rights reserved.