Android 电视和 Phone 的多个 apk 支持

Multiple apk support for Android TV and Phone

我在市场上有一个应用程序有 minSDK 版本 9,我还开发了这个应用程序的 Android TV 版本 相同的包名 ,但 API 级别重叠。

所以,我的问题是; 我如何上传 2 个具有相同包名的不同 apk(TV 和 Phone/Tablet)? Android TV 的 APK 应该只能在 TV 和 Nexus Player 等中看到. 其他Apk必须同时只看手机和平板

我确实阅读了所有关于多 APK 支持的文档,但是 当我通过我当前可用的应用程序为 Android TV 上传 APK 时,旧版本无法用于手机和平板电脑(不兼容) .

在我的情况下,两个不同的 APK 和不同的包名是不可接受的。

我必须有一个包名,两个不同的 APK,两者都必须适用于他们的兼容设备。

在我的电视应用清单中,使用了这些功能;

<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>

我的 Phone/Tablet 应用没有使用功能,只有正常的启动器,如下所示

<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>

我该怎么办?此时我错过了什么?我需要一个明确的解释或解决方案。

您需要确保您的两个 apk(TV 和 mobile/tablet)的版本代码不同。还让我们知道什么对您有用(如果您已经弄清楚了)。

解决方法是切换高级模式,并正确使用minSDK版本。

您最新的 APK 应具有最高的 minSDK 版本。

例如,如果您有2个不同平台的apk,它们的minSDK版本不同,请先上传minSDK版本较低的APK。然后,上传高一。

现在我有 3 个 APK 正在制作中。一切正常。