我在playstore上有一个可用的应用程序,它运行在min sdk 15上。我做了一些更改并尝试更新我的应用程序,当我上传我的apk时一切都很好,但在发布评论部分之前,playstore给了我一个警告,如下所示
设备支持删除警告
停用此APK将导致您的应用程序可在较少类型的设备上进行新安装。
TipIf如果这是意外更改,请在新版本中保留此APK,或确保您的新APK支持当前支持的所有设备。
看到这个警告后,我已经搜索了不同的论坛,知道是什么导致了这个问题
链接1
链接2
我的大部分搜索表明,如果我在清单中指定一些东西,如Android:必需="假"屏幕支持标签等
但问题是我没有添加任何新的库或硬件功能,只是添加了一些新的类,我不知道是什么造成了这个问题。我将展示我的清单和gradle如何查找playstore中的现有应用程序和我的新更新
我现有的应用程序gradle和manifest
格拉德尔
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'
显示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>
以上是我当前的应用程序deatils on playstore
以下是playstore的警告签名版本
格拉德尔
// 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'
显示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>
我只在清单上增加了2个活动,并在等级中改变了新的蝴蝶。有人能帮我什么原因导致Playstore中的警告,因为我没有在我的应用程序中做任何重大改变。
请检查此答案和评论。大多数情况下,这将是因为一些清单更改和一些屏幕支持或添加了新的权限,因此这将是一件很好的事情。
在Google Play上更新现有应用程序时遇到问题。在Google Play开发者控制台上上传更新后的APK后,我在“APK详细信息”窗口中看到0个受支持的Android设备。 “AndroidManifest”中唯一的区别。“xml”文件表示“versionCode”和“versionName”变量已递增。 “建造”。“gradle”文件自上次生成以来根本没有更改。 我开始认为这是谷歌方面的问
我将Visual Studio2013与多设备混合应用程序CTP2.0一起使用。在项目模板中,有几个用于Android的占位符弹幕和图标:ldpi、mdpi、hdpi和xhdpi密度。如何获得对xxhdpi和xxxhdpi密度的支持?我试着如下: 将文件添加到(icon-144-xxhdpi.png)和(screen-xxhdpi.png) 根据Cordova文档为config.xml添加了图标规
每次在创建新项目和运行项目时都出现此异常。我没有添加任何新的遗迹插件,仍然这个例外不断出现。请帮帮我
问题内容: 我在UI Bootstrap中使用Angular 。我创建了自定义指令,该指令将广播的最差消息推送到绑定到视图的警报数组中(呈现为Bootstrap警报)。在一定的超时后,警报将从阵列(因此也从视图)中删除。这是代码: 我想知道是否可以在删除警报之前向警报添加淡出(或其他动画)?任何帮助和提示,将不胜感激! 问题答案: 在Angular中> 1.1.5 您可以使用angular的内置动
有没有人知道通过Google Play发布的设备拥有者应用程序在发生更新时的生产行为? 正如我们所知,安装一个设备拥有者应用程序需要一些动机,而且并不容易:重置为出厂默认,然后为设备提供NFC--第二个设备等等……所以,即使我们认为这一步已经完成,任何进一步的更新是否每次都需要如此多的痛苦? 出现此问题是因为在我的开发设备上,如果之前安装了设备所有者应用程序,我无法重新启动该应用程序的更改…除非我
我只是尝试在google play核心库API提供的应用程序更新服务中实现。 在发布了较新版本的应用程序后进行了内部测试。我在play store中获得了更新版本的应用程序,如图1所示。但是,我无法看到“更新”按钮在同一页上,正如屏幕上的-2。另外,应用程序是禁用的,以更新根据代码的实现。请帮我处理这件事。谢谢。屏幕肖像1屏幕肖像2 ` }`