簡體   English   中英

Xamarin Forms, Android - Java.Lang.ClassNotFoundException

[英]Xamarin Forms, Android - Java.Lang.ClassNotFoundException

我目前正在更新 Xamarin Forms 應用程序,突然在 Android 上遇到此錯誤:

Exception   {Java.Lang.ClassNotFoundException: Didn't find class "com.google.android.gms.common.GooglePlayServicesUtil" on path: DexPathList[[zip file "/data/app/com.alphacoreconsulting.tflmetrosound-Ek3U1cNyzLe9Jayp9enzXQ==/base.apk"],nativeLibraryDirectories=[/data/app/c…} Java.Lang.ClassNotFoundException

它在這一行觸發:

Xamarin.FormsMaps.Init(this, bundle);

我已經研究並確保所有軟件包都是相同的版本:

在此處輸入圖像描述

請問有人可以提供一些幫助嗎?

更新:

我已經更新了 proguard.cfg 文件並添加了這一行:

-keep public class com.google.android.gms.common.GooglePlayServicesUtil

添加后,我現在遇到此錯誤:

no static method "Lcom/google/android/gms/common/GooglePlayServicesUtil;.isGooglePlayServicesAvailable(Landroid/content/Context;)I"

當代碼通常被 linker 或 R8/Proguard 從可執行文件中剝離時,您將在運行時看到此異常。 您可以為這兩種工具提供一個配置文件,使您可以保留 linker 或 R8/Proguard 認為您沒有使用的代碼。 例如,這些工具無法通過反射正確檢測您在運行時使用的代碼。

這是 linker 配置文件的文檔 另一種方法是使用“LinkerPleaseInclude.cs”文件手動引用您不想鏈接出去的代碼。

這是 R8/Proguard 配置文件的文檔

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM