2

我有一个 Android 手机/平板电脑 apk,目前在 Play 商店中,并且在其清单文件中有这些设置:

package="com.company.xyz"
android:versionCode="0803010008"
android:versionName="01.00.08" >

<uses-sdk
    android:minSdkVersion="8"
    android:targetSdkVersion="8" />

<uses-permission android:name="android.permission.INTERNET" />
<uses-permission android:name="android.permission.ACCESS_NETWORK_STATE" />
<uses-permission android:name="android.permission.RECEIVE_BOOT_COMPLETED" />
<uses-permission android:name="android.permission.WAKE_LOCK" />

<uses-library
    android:name="com.adobe.flashplayer"
    android:required="true" />

<supports-screens
    android:anyDensity="true"
    android:largeScreens="true"
    android:normalScreens="true"
    android:smallScreens="false"
    android:xlargeScreens="true" />

<uses-feature
    android:name="android.hardware.touchscreen"
    android:required="true" />

我已经为 GoogleTV 上传了另一个 apk,它与之前的 apk 具有相同的包名称 com.company.xyz,并且在其清单文件中具有以下设置:

package="com.company.xyz"
android:versionCode="1203010001"
android:versionName="01.00.01" >

<uses-sdk
    android:minSdkVersion="12"
    android:targetSdkVersion="12" />

<uses-permission android:name="android.permission.INTERNET" />
<uses-permission android:name="android.permission.ACCESS_NETWORK_STATE" />
<uses-permission android:name="android.permission.WAKE_LOCK" />

<uses-feature
    android:name="android.hardware.touchscreen"
    android:required="false" />

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

<supports-screens
    android:largeScreens="true"/>

<uses-configuration android:reqFiveWayNav="true" />

Google TV apk 从未出现在 GTV 盒子上的 Play 商店中,因此我使用以下设置更新了它的清单,其他一切都保持不变

package="com.company.xyz"
android:versionCode="1203010002"
android:versionName="01.00.02" >

<supports-screens
    android:largeScreens="true"
    android:normalScreens="false"
    android:smallScreens="false"
    android:xlargeScreens="false" /> 

此时,由于 Play 商店错误“错误:新 APK 版本低于以前的 APK 版本”,我无法保存应用程序,即使 GoogleTV APK 的版本代码高于手机/平板电脑版本。有人对此有解决方案吗?

谢谢!

4

1 回答 1

1

这些解决方案是由 Google TV DevRel 团队提出的。

我不小心在 libs 下添加了 armeabi 文件夹。这让 Google TV Play 商店认为该应用使用了 NDK 并且该应用被过滤掉了。

我必须做出的另一个改变是更换

<supports-screens
   android:largeScreens="true"
   android:normalScreens="false"
   android:smallScreens="false"
   android:xlargeScreens="false" /> 

<supports-screens android:largeScreens="true"/>

并创建更新版本的 apk。设置所有支持屏幕属性会使大型设备选择错误的 apk。

在此之后,我上传并激活了 1203010003,然后停用了旧版本 1203010001 和 1203010002。然后我能够成功保存 apk,而不会遇到“错误:新 APK 版本低于以前的 APK 版本”

希望这对其他人有帮助!

于 2012-09-18T12:51:43.573 回答