使用不同的移动和电视过滤器发布多个apks

时间:2016-09-26 06:06:30

标签: android google-play android-tv multiple-apk

我想发布多个apks:一个用于移动设备,另一个用于同一应用程序中的其他androidtv。根据{{​​3}},同一应用程序中只有四个区别过滤器:

  

目前,Google Play允许您发布多个APK   仅当每个APK提供不同的过滤器时才使用相同的应用   在以下配置上:

  •   

    OpenGL纹理压缩格式

  •   

    屏幕尺寸(以及可选的屏幕密度)

  •   

    API级别

  •   

    CPU架构(ABI)

  

所有其他过滤器仍然像往常一样工作,但这四个是   只有可以区分一个APK与另一个APK的过滤器   Google Play上的应用程序列表。例如,您无法发布   如果APK仅基于不同,则为同一应用程序提供多个APK   关于设备是否有相机。

我想通过API级别和屏幕大小来区分,但似乎有重叠:

  1. androidtv app的API级别(MinSDK)保持在21,移动应用程序的级别保持在16级。因此API级别(21级及以上)重叠。

  2. Android tv的屏幕尺寸可能与平板电脑的屏幕尺寸重叠: 例如。 Publishing Multiple APKs with Different Filters是720p,1080i和1080p。 common high-definition TV display resolutions分辨率为720x1280。

  3. 我担心如果我发布更高版本的androidtv apk,它可能会取代平板电脑上的移动应用程序,API级别> = 21,屏幕尺寸为720x1280,也符合电视应用程序布局大小。

    那么如何在app的清单中使用不同的过滤器清楚地区分这两个apks?

    更新

    我已经在androidtv应用程序的清单

    中添加了leanback功能
    <manifest>
        <uses-feature android:name="android.software.leanback"
            android:required="true" />
        ...
    </manifest>
    

    我看到42个支持的androidtv apk设备(无法查看哪些设备)和10791 for mobile apk设备以及整个应用程序支持的总共10832个设备。

    10791 + 42 = 10833

    因此,仍有可能出现1(10833 - 10832 = 1)重叠设备,因为它会显示警告。

    重叠警告

    Samsung nexus

    androidtv apk

    enter image description here

    mobile apk

    enter image description here

    总设备

    enter image description here

    我不认为重叠消息是因为androidtv apk是一个超级集的移动apk,正如其中一篇评论中提到的那样,看看androidtv支持的设备数量要少得多。

    由于只有一个可能的重叠设备,我将发布它,但我希望我知道哪些设备重叠以接收两个apks。

1 个答案:

答案 0 :(得分:5)

实际上有一个“功能”用于专门针对Android TV。您可以查看docs中的说明。但基本上你只需要指定它使用leanback功能,如下所示。

<manifest>
    <uses-feature android:name="android.software.leanback"
        android:required="true" />
    ...
</manifest>

这将确保任何运行leanback的电视设备都能获得您的APK(如果您使用的是APK,则可以设置required = false)。我相信所有官方Android电视都在使用此功能。有可能leanback可以在非电视设备上播放,但在这种情况下,他们的所有应用都将显示为电视应用。

您可以停用/启用其他几项功能来定位Android TV,您可以查看release checklist了解更多信息(具体为this section)。

有一点需要注意的是,您的手机和电视APK可能会满足一些重叠的设备。与Play Console团队的代表交谈后,他们建议了解决方法:

  

关于您有重叠设备的多apk版本 - 是的,您的Android TV APK总是需要更高版本的代码。有几个选项可以帮助解决这个问题:

     
      
  1. 您可以手动将2个重叠设备列入黑名单。这将立即解决重叠APK的问题,但如果将来发布的新设备符合这两个APK的条件,您将再次遇到此问题。

  2.   
  3. 为您的Android TV APK使用明显高于移动设备APK的版本代码方案。例如,您的电视APK可以是现有版本代码+ 100000或100808,而您的移动设备APK仍然是838.在这种情况下,您可以将移动设备APK发布到版本代码100808,而无需更新您的Android TV APK每一次推动。这也可以解决Alpha / Beta测试Android TV APK的任何问题。

  4.   

他的回复也在this doc的“分配版本代码”部分中介绍。