【问题标题】:Added Android TV to existing app, now can only support back to Android SDK 17将 Android TV 添加到现有应用程序,现在只能支持回 Android SDK 17
【发布时间】:2016-04-13 01:36:42
【问题描述】:

我为现有应用添加了 Android TV 支持。然后我不得不将最低 SDK 版本从 14 增加到 17。指示是leanback 库无法支持低于 SDK 21,但是,我似乎能够使用 17 作为最低版本。我确实必须将以下内容添加到我的 Android 清单中:

<uses-sdk
    xmlns:tools="http://schemas.android.com/tools"
    tools:overrideLibrary="android.support.v14.preference" />

这一定是清单中的配置问题。是否需要进一步配置?该应用程序可以在手机、平板电脑和 Nexus Player 上运行。它只是不支持回到 Android SDK 14,这是一些用户要求的。

代码在这里: https://github.com/MythTV-Clients/MythtvPlayerForAndroid

【问题讨论】:

    标签: android android-manifest android-tv


    【解决方案1】:

    Leanback 库的 SDK 版本最低为 17。如果要添加 Android TV 支持,则需要添加另一个模块。

    查看您的项目,“域”和“演示文稿”似乎是项目的独立模块。您可以为“电视”添加一个并将电视特定代码放在那里。当用户安装 APK 时,将下载正确的版本。

    您可以将特定于电话的代码放入“电话”模块中。共享代码可以是可以为两个平台编译的“共享”模块。

    如果您对使用模块有任何疑问,请告诉我。

    【讨论】:

    • 好的,这就是我认为需要发生的事情。我认为手机版和电视版都有自己的清单。我看到需要 3 个子项目。 1 用于电话,1 用于电视,1 用于常见的 MVP 材料。那么我现有的域仍将是通过数据子项目中的实现与后端交互的api。
    • 这行得通。我有一个分支,该应用程序从电视分成单独的模块。我的演示子项目现在是一个 Android 库。它主要负责两种类型的客户端通用的 MVP 代码。 github.com/MythTV-Clients/MythtvPlayerForAndroid/tree/feature/…
    • 嗨,我有同样的问题,我不明白的是,当我为电视制作另一个模块时,我是否应该重复所有相同的 java 文件,如 api repo 和一些不会的架构t 在电视模块中再次在电视视图中使用?或者我可以在我的移动模块和电视模块之间进行交互?
    • 您可以创建一个共享库模块,该模块托管所有其他模块使用的代码。然后您就有了使用共享代码和自定义代码的电视/移动应用程序模块。
    猜你喜欢
    • 2015-03-08
    • 2017-09-02
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2019-04-18
    • 1970-01-01
    • 2011-12-24
    相关资源
    最近更新 更多