【问题标题】:Xamarin Forms App crashing on Huawei P20 ProXamarin Forms App 在华为 P20 Pro 上崩溃
【发布时间】:2020-05-15 09:29:45
【问题描述】:

我已经构建了一个可以在各种 Android 设备上成功运行的应用。它是为 Android 8 编译的,但运行它的设备是 Android 9。

每次我在这个华为 P20 Pro 上打开它,我都会崩溃。我能看到的唯一明智的错误是:

No implementation found for android.content.Context md5c497ac42f3138c67aed930c79af470d4.MainApplication.n_getApplicationContext() (tried Java_md5c497ac42f3138c67aed930c79af470d4_MainApplication_n_1getApplicationContext and Java_md5c497ac42f3138c67aed930c79af470d4_MainApplication_n_1getApplicationContext__)

我从来没有在任何时候调用get Application Context,所以我真的不确定这里发生了什么。

关于调试此类问题的任何有用提示?

【问题讨论】:

    标签: android xamarin xamarin.forms xamarin.android huawei-mobile-services


    【解决方案1】:

    如果您使用 SDK 27 作为最大 API(版本 8)编译它,为什么要在 SDK 28 上运行它,使用最大可用版本 28 或 29 进行编译,然后尝试运行

    在清单中将其设为android:targetSdkVersion="28" 并使用最新版本进行编译

    【讨论】:

    • 这是个好问题!在 SDK 28 广泛可用之前,它是使用 SDK 27 编译的。我从我的日志中知道这确实适用于其他设备。反正我也在升级中,看看能不能解决问题。但是,我宁愿具体知道为什么会发生这种故障。
    【解决方案2】:

    首先,我认为这个问题缺乏足够的细节来对可能的原因做出任何假设。可能的原因之一是目标 SDK 版本设置不正确。您可以尝试按照 Ross Vernal 的建议为应用设置正确的设置。它可能可以解决您的问题。

    根据我从 Android 官方文档中读到的有关 targetSdkVersion 属性的内容,将版本设置为低于移动设备的 API 级别意味着在应用运行时可能需要一些额外的兼容性行为。 但这并不意味着应用程序无法在 API 级别更高的设备上运行。是否需要兼容性行为取决于应用程序本身。 因此,您决定在应用程序中使用的功能或其他内容可能会导致设备出现问题。

    此外,我在运行 Android 9 (SDK 28) 的华为设备上测试了这些条件,并在目标 SDK 27 下使用示例 Xamarin.Forms 应用程序。 该应用程序成功启动。这支持了上面提到的可能性。

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2021-09-28
      • 1970-01-01
      • 1970-01-01
      • 2018-07-01
      • 2018-12-02
      相关资源
      最近更新 更多