我在使用 Xamarin.Android 中的最新 DeliveryClient 时遇到问题。以下代码片段在 Debug 构建中运行良好。
但是,通过取消选中Android 项目属性中的两个 Packaging 属性项Use Shared Runtime和Use Fast deployment ,我得到了运行时错误。当您归档要安装在设备上的 APK 时,您必须取消选中这些。一旦我这样做了,我会得到下面的堆栈跟踪,这不是很有帮助,但似乎 http 请求只是在某个地方发生并且没有被执行。
这让我想知道是否有人在 Android 发布版本中成功使用了这个最新版本的DeliveryClient 。这在DeliveryClientBuilder之前的早期版本中没有发生。
DeliveryClient client = DeliveryClientBuilder
.WithOptions(builder => builder
.WithProjectId("myProjectId")
.UseProductionApi
.WithMaxRetryAttempts(5)
.Build())
.Build();
Task<string> content = Task.Run(async () =>
{
var res = client.GetItemAsync("hello").Result;
var helloFromKC = res.Item.GetString("message_from_kc");
return helloFromKC;
});
04-18 18:24:16.408 I/mono-stdout(17908):发生一个或多个错误。发生一个或多个错误。
在 System.Threading.Tasks.Task.ThrowIfExceptional (System.Boolean includeTaskCanceledExceptions) [0x00011] 在 /Users/builder/jenkins/workspace/xamarin-android-d15-8/xamarin-android/external/mono/mcs/class/referencesource /mscorlib/system/threading/Tasks/Task.cs:2164 04-18 18:24:16.578 I/mono-stdout(17908): 在 System.Threading.Tasks.Task.ThrowIfExceptional (System.Boolean includeTaskCanceledExceptions) [0x00011]在 System.Threading 的 /Users/builder/jenkins/workspace/xamarin-android-d15-8/xamarin-android/external/mono/mcs/class/referencesource/mscorlib/system/threading/Tasks/Task.cs:2164 中。 Tasks.Task`1[TResult].GetResultCore (System.Boolean waitCompletionNotification) [0x0002b] 在 /Users/builder/jenkins/workspace/xamarin-android-d15-8/xamarin-android/external/mono/mcs/class/referencesource /mscorlib/system/threading/Tasks/Future.cs:562 在 System.Threading.Tasks.Task1[TResult].get_Result () [0x00000] 在 /Users/builder/jenkins/workspace/xamarin-android-d15-8/xamarin-android/external/mono/mcs/class/referencesource /mscorlib/system/threading/Tasks/Future.cs:532 在 C:\TestApps\AndroidKenticoTest\App1\App1\MainActivity.cs:68 04 中的 App1.MainActivity+<>c__DisplayClass3_0+<b__1>d.MoveNext () [0x00014] -18 18:24:16.579 I/mono-stdout(17908): 在 System.Threading.Tasks.Task1[TResult].GetResultCore (System.Boolean waitCompletionNotification) [0x0002b] 在 /Users/builder/jenkins/workspace/xamarin- android-d15-8/xamarin-android/external/mono/mcs/class/referencesource/mscorlib/system/threading/Tasks/Future.cs:562/Users/builder/jenkins/workspace/xamarin-android-d15-8/xamarin-android/external/mono/mcs/class/referencesource/mscorlib/system/threading/Tasks/Future.cs 中的 get_Result () [0x00000]: 532 在 App1.MainActivity+<>c__DisplayClass3_0+<b__1>d.MoveNext () [0x00014] 在 C:\TestApps\AndroidKenticoTest\App1\App1\MainActivity.cs:68 04-18 18:24:16.579 I/mono-stdout( 17908): 在 System.Threading.Tasks.Task1[TResult].GetResultCore (System.Boolean waitCompletionNotification) [0x0002b] 在 /Users/builder/jenkins/workspace/xamarin-android-d15-8/xamarin-android/external/mono /mcs/class/referencesource/mscorlib/system/threading/Tasks/Future.cs:562/Users/builder/jenkins/workspace/xamarin-android-d15-8/xamarin-android/external/mono/mcs/class/referencesource/mscorlib/system/threading/Tasks/Future.cs 中的 get_Result () [0x00000]: 532 在 App1.MainActivity+<>c__DisplayClass3_0+<b__1>d.MoveNext () [0x00014] 在 C:\TestApps\AndroidKenticoTest\App1\App1\MainActivity.cs:68 04-18 18:24:16.579 I/mono-stdout( 17908): 在 System.Threading.Tasks.Task1[TResult].GetResultCore (System.Boolean waitCompletionNotification) [0x0002b] 在 /Users/builder/jenkins/workspace/xamarin-android-d15-8/xamarin-android/external/mono /mcs/class/referencesource/mscorlib/system/threading/Tasks/Future.cs:56268 04-18 18:24:16.579 I/mono-stdout(17908): 在 System.Threading.Tasks.Task1[TResult].GetResultCore (System.Boolean waitCompletionNotification) [0x0002b] 在 /Users/builder/jenkins/workspace/ xamarin-android-d15-8/xamarin-android/external/mono/mcs/class/referencesource/mscorlib/system/threading/Tasks/Future.cs:56268 04-18 18:24:16.579 I/mono-stdout(17908): 在 System.Threading.Tasks.Task1[TResult].GetResultCore (System.Boolean waitCompletionNotification) [0x0002b] 在 /Users/builder/jenkins/workspace/ xamarin-android-d15-8/xamarin-android/external/mono/mcs/class/referencesource/mscorlib/system/threading/Tasks/Future.cs:562