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

Jul*_*oro 36 android google-play

我的应用程序安装在我的单元格中,版本为1.0.5(版本代码9)

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

这是我必须包含在我的应用程序中的东西???

这是Play商店中的一个错误吗???

这是一个配置问题???

我加入了我的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>
Run Code Online (Sandbox Code Playgroud)

Ami*_*kur 36

老兄确保您在移动设备上安装的应用程序不是使用调试密钥库构建的apk ...如果Play商店应用程序证书与已安装的应用程序证书不匹配,则Play商店将始终显示为"打开"按钮而不是"更新" .当我通过调试和签名apk进行试验和错误时,我意识到了这一点.只有签名的apk工作.并使用versionCode比较版本而不是版本名称.

  • 你是什​​么意思"调试密钥库"?在发布模式下构建并归档项目后生成密钥库.没有"Debug"密钥库..只有一个Keystore .... (3认同)
  • @RoyDoron它是由android studio默认生成的,用于每次都将项目构建到apk中.每次使用此默认密钥库文件进行签名.您可以在Windows PC上的此位置找到它C:\ Users\XXXXX\.android\debug.keystore (3认同)
  • 我总是使用签名版! (2认同)
  • 签名包也不会显示更新。我认为这是因为 google play 在进入应用商店之前从 apk 中删除了一些信息,这构成了包中的一些细微差别,这就是它不显示更新的原因。 (2认同)
  • 即使在签名 APK 后,某些用户也会遇到此问题。当他们第一次在 Play 商店中搜索并打开应用程序时。再次,当他们按后退按钮并单击应用程序时,会显示“更新”按钮。开发人员可以采取什么措施来解决这个问题吗? (2认同)

sch*_*ker 10

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

如果您上次安装的版本来自Android studio,则不会在Play商店中看到"更新"按钮.您将看到"打开"按钮.我用我的开发手机对其进行了测试,其中应用程序是直接使用Android工作室和我的一些实际用户安装的.我的用户从Play商店安装了最新版本.当我推送新的更新时,他们会看到Play商店中的"更新"按钮.


Tom*_*sen 8

它还有助于在设置中清除Play商店APP的缓存.这不应该是必要的.问题是这会阻止以后更新到正确的版本.仅更新版本号,但不更新二进制文件.谷歌播放然后认为一切正常,但它仍然使用旧的APK.

  • 但如果我们有一个正在生产的应用程序并且有一定数量的用户群,我们无法告诉最终用户清除 Playstore 应用程序缓存/数据 (3认同)

kis*_*rma 7

一旦我的应用程序更新按钮没有显示,我就解决了这个问题,因为我没有直接从play store安装它。现在,解决方案是从Play商店下载应用的旧版本,然后在显示应用更新按钮发布后上传新版本的应用。


小智 5

在您进入更混乱的解决方案之前,请尝试清除 Play 商店的缓存并查看您应用的 Play 商店列表。就我而言,它起作用了。