Play商店有新版本的应用程序,但没有显示更新

我有我的应用程序安装在我的单元版本1.0.5(版本代码9)

在Google Play商店中,我可以看到版本1.0.7(版本代码为11)的应用程序,但没有显示button更新(它显示button“打开”)

这是我必须包括在我的应用程序?

这是在Play商店的错误吗?

这是一个configuration问题?

我join我的AndroidManifest.xml

<uses-sdk android:minSdkVersion="16" android:targetSdkVersion="20" /> <uses-permission android:name="android.permission.INTERNET" /> <uses-permission android:name="android.permission.ACCESS_FINE_LOCATION" /> <uses-permission android:name="android.permission.ACCESS_COARSE_LOCATION" /> <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.WRITE_EXTERNAL_STORAGE" /> <uses-permission android:name="com.spg.googlemaps.permission.MAPS_RECEIVE" /> <uses-permission android:name="android.permission.CAMERA" /> <uses-permission android:name="android.permission.WRITE_SETTINGS" /> <!-- <uses-permission android:name="android.permission.RECEIVE_BOOT_COMPLETED" /> <uses-permission android:name="android.permission.WAKE_LOCK" /> <uses-permission android:name="android.permission.BATTERY_STATS" /> --> <uses-feature android:name="android.hardware.camera" android:required="true" /> <uses-feature android:name="android.hardware.camera.front" android:required="false" /> <permission android:name="com.spg.googlemaps.permission.MAPS_RECEIVE" android:protectionLevel="signature" /> <uses-feature android:glEsVersion="0x00020000" android:required="true" /> <application android:name="com.myapp.MyApplication" android:allowBackup="true" android:icon="@drawable/ic_launcher" android:label="@string/app_name" android:logo="@drawable/ic_logo" android:theme="@style/Theme.AppCompat" > <uses-library android:name="com.google.android.maps" /> <meta-data android:name="com.google.android.gms.version" android:value="@integer/google_play_services_version" /> <activity android:name="com.myapp.SplashScreen" android:label="@string/app_name" android:noHistory="true" android:screenOrientation="portrait" android:theme="@android:style/Theme.Black.NoTitleBar" > <intent-filter> <action android:name="android.intent.action.MAIN" /> <category android:name="android.intent.category.LAUNCHER" /> </intent-filter> </activity> <activity android:name="com.myapp.LoginActivity" android:label="@string/title_activity_login" android:noHistory="true" android:screenOrientation="portrait" android:windowSoftInputMode="adjustResize|stateVisible" > </activity> <activity android:name="com.myapp.DashBoard" android:label="@string/app_name" android:screenOrientation="portrait" > </activity> <activity android:name="com.myapp.FragmentTabsPdv" android:label="@string/app_name" android:screenOrientation="portrait" > <meta-data android:name="android.support.PARENT_ACTIVITY" android:value="com.myapp.DashBoard" /> </activity> <meta-data android:name="com.google.android.maps.v2.API_KEY" android:value="@string/maps_key" /> <activity android:name="com.myapp.RutaActivity" android:label="@string/title_activity_ruta" android:screenOrientation="portrait" > <meta-data android:name="android.support.PARENT_ACTIVITY" android:value="com.myapp.FragmentTabsPdv" /> </activity> <activity android:name="com.myapp.BaseActivity" android:label="@string/title_activity_base" android:screenOrientation="portrait" > </activity> <activity android:name="com.myapp.SettingsActivity" android:label="@string/title_activity_settings" android:screenOrientation="portrait" > <meta-data android:name="android.support.PARENT_ACTIVITY" android:value="com.myapp.DashBoard" /> </activity> <activity android:name="com.myapp.InformacionPdvActivity" android:label="@string/infoPdv" android:screenOrientation="portrait" > <meta-data android:name="android.support.PARENT_ACTIVITY" android:value="com.myapp.RutaActivity" /> </activity> <receiver android:name="com.myapp.BaseActivity$NetworkChangeReceiver" > <intent-filter> <action android:name="android.net.conn.CONNECTIVITY_CHANGE" /> </intent-filter> </receiver> <activity android:name="com.myapp.MetricaTabs" android:label="@string/title_activity_metrica_tabs" android:screenOrientation="portrait" android:windowSoftInputMode="adjustPan" > <meta-data android:name="android.support.PARENT_ACTIVITY" android:value="com.myapp.RutaActivity" /> </activity> <meta-data android:name="com.crashlytics.ApiKey" android:value="7d80161d908dd5424f232598dba254c7d2a43307" /> <activity android:name="com.myapp.SendMessageActivity" android:label="@string/title_activity_send_message" > </activity> </application> 

Solutions Collecting From Web of "Play商店有新版本的应用程序,但没有显示更新"

伙计确保应用程序你已经安装在我们的手机是不是build立与debugging密钥库的apk ..如果Play商店应用程序证书不符合已安装的应用程序证书,Play商店将始终显示为“打开”button而不是“更新” 。 我意识到这一点,当我做了试验和错误debugging和签署apk的。 只有签名的apk工作。 并使用versionCode来比较版本,而不是版本名称。

这也有助于在设置中清除Play商店APP的caching。 这不应该是必要的。 问题是,这会阻止稍后更新到正确的版本。 只有版本号更新,但不是二进制。 Google Play认为一切正常,但仍然使用旧的APK。

希望这有助于某人,因为我已经从这个社区中受益匪浅。

如果您上次安装的版本来自Android Studio,您将无法在Play商店中看到“更新”button。 您将看到“打开”button。 我已经使用我的开发手机testing了这个应用程序,该应用程序是直接使用Android Studio安装的,还有一些我的实际用户。 我的用户从Play商店安装了最新版本。 当我推送新的更新时,他们看到了Play商店中的“更新”button。

  try { PackageInfo pInfo = getPackageManager().getPackageInfo(getPackageName(), 0); } catch (NameNotFoundException e) { // TODO Auto-generated catch block e.printStackTrace(); } pversioncode = pInfo.versionName; Log.e("version", "code" + pversioncode); new updateversion().execute(); 

推送更新总是有延迟,可供用户下载。

你必须确定android:versionCode (不是应用程序版本),比前一个更大。
谷歌不会警告你,如果它较低,并会让你发布一个较低的版本号。

例:
如果你以前的versionCode132你必须确保你发布的版本大于132。