我在市场上有一个具有 minSDK 版本 9 的应用程序,我还开发了该应用程序的 Android TV 版本具有相同的程序包名称,但 API 级别是重叠的。
所以,我的问题是; 我如何上传 2 个具有相同包名的不同 apk(电视和手机/平板电脑)?Android TV 的 APK 只能在电视和 Nexus Player 等上看到。其他 Apk 只能在手机上看到和平板电脑。
我确实阅读了所有关于多个 APK 支持的文档,但是当我通过我当前可用的应用程序上传适用于 Android TV 的 APK 时,手机和平板电脑无法使用(不兼容)旧版本。
在我的情况下,两个不同的 APK 和不同的包名称是 Not Acceptable 。
我必须有一个包名,两个不同的 APK,两者都必须适用于他们的兼容设备。
在我的电视应用 list 中,使用了这些功能;
<uses-feature
android:name="android.hardware.microphone"
android:required="false" />
<uses-feature
android:name="android.hardware.touchscreen"
android:required="false" />
<uses-feature
android:name="android.software.leanback"
android:required="true" />
<activity
android:name="com.mydomain.android.ui.ActivityYYY"
android:icon="@drawable/my_banner"
android:label="@string/app_name"
android:logo="@drawable/my_tv_banner"
android:screenOrientation="landscape">
<intent-filter>
<action android:name="android.intent.action.MAIN" />
<category android:name="android.intent.category.LEANBACK_LAUNCHER" />
</intent-filter>
</activity>
我的手机/平板电脑应用没有使用功能,有正常的启动器,如下所示
<activity
android:name="com.mydomain.android.ActivityXXX"
android:screenOrientation="portrait">
<intent-filter>
<action android:name="android.intent.action.MAIN" />
<category android:name="android.intent.category.LAUNCHER" />
</intent-filter>
</activity>
我该怎么办?此时我错过了什么?我需要一个明确的解释或解决方案。
最佳答案
解决方案是切换高级模式,并正确使用minSDK版本。
您最新的 APK 应具有最高的 minSDK 版本。
例如,如果您有2个不同平台的apk,它们的minSDK版本不同,请先上传minSDK版本较低的APK。然后,上传更高的。
现在我有 3 个 APK 正在生产中。一切正常。
关于java - Android TV 和手机的多个 apk 支持,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/34392781/