【问题标题】:how to ensure backward-compatibilty in a xamarin forms application?如何确保 xamarin 表单应用程序的向后兼容性?
【发布时间】:2017-10-16 09:23:02
【问题描述】:

我如何确保我的应用程序可以在 Lollipop(版本 4.03 到 4.42)以下的 android 设备上运行。我看了一个 xamarin 大学视频,上面说 xamarin forms 支持 android 版本 4.03(冰淇淋三明治)及更高版本。我还阅读了有关运行时检查的信息,觉得这可能是我的问题的答案,但是当我的所有 ui 和逻辑基本上都包含在 PCL 项目中时,我该如何为 android 编写运行时检查呢?

【问题讨论】:

    标签: xamarin xamarin.forms xamarin.android


    【解决方案1】:

    首先要做的是确保您使用的是 Android AppCompat 库。我认为新项目现在默认使用它。如果您有一个不遵循these instructions 更新的旧项目。这将允许您的应用(包括任何 Material Design 外观和感觉)在旧版 Android 上运行。

    如果你根据Android版本做不同的事情,把代码放在Android项目中,use dependency service调用它。

    像这样:

        if (Android.OS.Build.VERSION.SdkInt >= Android.OS.BuildVersionCodes.Lollipop)
        {
            // level specific code here
        }
    

    【讨论】:

    • 但是我怎么知道在运行时检查中放置哪些 api?
    • 不确定你的意思。您无需检查 Xamarin Forms 的任何 api 即可在旧版本的 Android 上运行。
    • 如果您想检查您是否在特定版本的 Android 上运行,您可以在 Android 项目中执行此操作 if (android.os.Build.VERSION.SDK_INT
    • 所以运行时检查应该是空的?我以为您在检查中调用特定于 api 级别的 api。像这样:
    • if (Android.OS.Build.VERSION.SdkInt >= Android.OS.BuildVersionCodes.Lollipop) { builder.SetCategory(Notification.CategoryEmail); }
    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2019-06-28
    • 2016-12-29
    • 2013-08-11
    • 1970-01-01
    相关资源
    最近更新 更多