gpt4 book ai didi

c# - Xamarin 表单 MonoTouchException : Objective-C exception thrown when calling Geolocator. GetPositionAsync

转载 作者:行者123 更新时间:2023-11-29 00:46:20 24 4
gpt4 key购买 nike

我编写了一个 Xamarin 表单应用程序,但在我的 UI 项目中有以下代码无法在设备上运行?

var _position = new Plugin.Geolocator.Abstractions.Position();
var locator = CrossGeolocator.Current;
locator.AllowsBackgroundUpdates = true;
locator.DesiredAccuracy = 50;
_position = await locator.GetPositionAsync(10000);

我不是 100% 确定错误在哪里

我在 Info.plist 中有这些

<key>NSLocationAlwaysUsageDescription</key>
<string>Location services required</string>
<key>allowsBackgroundLocationUpdates</key>
<string>YES</string>

但是我得到以下错误

Unhandled Exception: 

Foundation.MonoTouchException: Objective-C exception thrown. Name: NSInternalInconsistencyException Reason: Invalid parameter not satisfying: !stayUp || CLClientIsBackgroundable(internal->fClient)

Native stack trace:
0 CoreFoundation 0x00000001825eadc8 + 148
1 libobjc.A.dylib 0x0000000181c4ff80 objc_exception_throw + 56
2 CoreFoundation 0x00000001825eac80 + 0
3 Foundation 0x0000000182f70154 + 112
4 CoreLocation 0x00000001893395c0 CLClientGetCapabilities + 8788
5 ClientUIiOS 0x0000000100d72b8c wrapper_managed_to_native_ObjCRuntime_Messaging_void_objc_msgSend_bool_intptr_intptr_bool + 124
6 ClientUIiOS 0x0000000100d26710 CoreLocation_CLLocationManager_set_AllowsBackgroundLocationUpdates_bool + 80
7 ClientUIiOS 0x000000010150551c Plugin_Geolocator_GeolocatorImplementation_set_AllowsBackgroundUpdates_bool + 284
8 ClientUIiOS 0x0000000100ef10d0 Client_UI_Services_LocationManager__UpdateLocationd__12_MoveNext + 304
9 ClientUIiOS 0x0000000100260a34 System_Runtime_CompilerServices_AsyncVoidMethodBuilder_Start_TStateMachine_REF_TStateMachine_REF + 180
10 ClientUIiOS 0x0000000100ef06b8 Client_UI_Services_LocationManager_UpdateLocation + 456
11 ClientUIiOS 0x0000000100ef0324 _Client_UI_Services_LocationManager__ctor + 356
12 ClientUIiOS 0x0000000100ef044c _Client_UI_Services_LocationManager_GetInstance + 220
13 ClientUIiOS 0x0000000100f124e4 _Client_UI_Services_ResponseManager__ctor + 164
14 ClientUIiOS 0x0000000100f1239c _Client_UI_Services_ResponseManager_GetInstance + 220
15 ClientUIiOS 0x0000000100eb9e1c _Client_UI_FormPage__ctor + 428
16 ClientUIiOS 0x0000000100eba04c _Client_UI_FormPage__ctor__Client_UI_Models_FormViewModel + 108
17 ClientUIiOS 0x0000000100f11bf0 _Client_UI_Services_FormManager__LoadFormPaged__33_MoveNext + 800
18 ClientUIiOS 0x0000000100260a34 System_Runtime_CompilerServices_AsyncVoidMethodBuilder_Start_TStateMachine_REF_TStateMachine_REF + 180
19 ClientUIiOS 0x0000000100f0e7b8 Client_UI_Services_FormManager_LoadFormPage_int + 472
20 ClientUIiOS 0x0000000100f101b8 _Client_UI_Services_FormManager__LoadFormControllerd__28_MoveNext + 2408
21 ClientUIiOS 0x0000000100260a34 System_Runtime_CompilerServices_AsyncVoidMethodBuilder_Start_TStateMachine_REF_TStateMachine_REF + 180
22 ClientUIiOS 0x0000000100f0ce78 Client_UI_Services_FormManager_LoadFormController_int + 472
23 ClientUIiOS 0x0000000100f0ec08 _Client_UI_Services_FormManager__Initialised__26_MoveNext + 936
24 ClientUIiOS 0x0000000100260a34 System_Runtime_CompilerServices_AsyncVoidMethodBuilder_Start_TStateMachine_REF_TStateMachine_REF + 180
25 ClientUIiOS 0x0000000100f0ca68 Client_UI_Services_FormManager_Initialise__Model_Task__Model_Job + 520
26 ClientUIiOS 0x0000000100ebec50 _Client_UI_JobDetailPage__lvJobTasks_ItemSelectedd__20_MoveNext + 464
27 ClientUIiOS 0x0000000100260a34 System_Runtime_CompilerServices_AsyncVoidMethodBuilder_Start_TStateMachine_REF_TStateMachine_REF + 180
28 ClientUIiOS 0x0000000100ebe5f8 Client_UI_JobDetailPage_lvJobTasks_ItemSelected_object_Xamarin_Forms_SelectedItemChangedEventArgs + 520
29 ClientUIiOS 0x00000001006c203c wrapper_delegate_invoke_System_EventHandler_1_Xamarin_Forms_SelectedItemChangedEventArgs_invoke_void_object_TEventArgs_object_Xamarin_Forms_SelectedItemChangedEventArgs + 716
30 ClientUIiOS 0x0000000100559798 Xamarin_Forms_ListView_OnSelectedItemChanged_Xamarin_Forms_BindableObject_object_object + 312
31 ClientUIiOS 0x00000001004cb09c Xamarin_Forms_BindableObject_SetValueActual_Xamarin_Forms_BindableProperty_Xamarin_Forms_BindableObject_BindablePropertyContext_object_bool_Xamarin_Forms_BindableObject_SetValueFlags_bool + 1932
32 ClientUIiOS 0x00000001004c8e68 Xamarin_Forms_BindableObject_SetValueCore_Xamarin_Forms_BindableProperty_object_Xamarin_Forms_BindableObject_SetValueFlags_Xamarin_Forms_BindableObject_SetValuePrivateFlags + 2216
33 ClientUIiOS 0x00000001004c857c Xamarin_Forms_BindableObject_SetValueCore_Xamarin_Forms_BindableProperty_object_Xamarin_Forms_BindableObject_SetValueFlags + 124
34 ClientUIiOS 0x0000000100557514 Xamarin_Forms_ListView_NotifyRowTapped_int_int_Xamarin_Forms_Cell + 692
35 ClientUIiOS 0x0000000100c21f50 Xamarin_Forms_Platform_iOS_ListViewRenderer_ListViewDataSource_RowSelected_UIKit_UITableView_Foundation_NSIndexPath + 880
36 ClientUIiOS 0x000000010040ed04 wrapper_runtime_invoke_object_runtime_invoke_dynamic_intptr_intptr_intptr_intptr + 244
37 ClientUIiOS 0x00000001000c0d54 mono_jit_runtime_invoke + 1648
38 ClientUIiOS 0x0000000100118680 mono_runtime_invoke + 140
39 ClientUIiOS 0x0000000101533f44 _ZL31native_to_managed_trampoline_35P11objc_objectP13objc_selectorPP11_MonoMethodP11UITableViewP11NSIndexPathPKcSB_SB_SB + 592
40 ClientUIiOS 0x0000000101537908 -[Xamarin_Forms_Platform_iOS_ListViewRenderer_ListViewDataSource tableView:didSelectRowAtIndexPath:] + 96
41 UIKit 0x0000000187877dc4 + 1316
42 UIKit 0x00000001879357d4 + 376
43 UIKit 0x00000001879f30c8 + 292
44 UIKit 0x0000000187a00a80 + 92
45 UIKit 0x00000001877325a4 + 96
46 CoreFoundation 0x00000001825a0728 + 32
47 CoreFoundation 0x000000018259e4cc + 372
48 CoreFoundation 0x000000018259e8fc + 928
49 CoreFoundation 0x00000001824c8c50 CFRunLoopRunSpecific + 384
50 GraphicsServices 0x0000000183db0088 GSEventRunModal + 180
51 UIKit 0x00000001877aa088 UIApplicationMain + 204
52 ClientUIiOS 0x0000000100d6c174 wrapper_managed_to_native_UIKit_UIApplication_UIApplicationMain_int_string___intptr_intptr + 324
53 ClientUIiOS 0x0000000100cd228c UIKit_UIApplication_Main_string___intptr_intptr + 44
54 ClientUIiOS 0x0000000100cd224c UIKit_UIApplication_Main_string___string_string + 172
55 ClientUIiOS 0x00000001001a4ea0 _Client_UI_iOS_Application_Main_string__ + 128
56 ClientUIiOS 0x000000010040ed04 wrapper_runtime_invoke_object_runtime_invoke_dynamic_intptr_intptr_intptr_intptr + 244
57 ClientUIiOS 0x00000001000c0d54 mono_jit_runtime_invoke + 1648
58 ClientUIiOS 0x0000000100118680 mono_runtime_invoke + 140
59 ClientUIiOS 0x000000010011cad0 mono_runtime_exec_main + 400
60 ClientUIiOS 0x00000001001a3f74 xamarin_main + 1952
61 ClientUIiOS 0x000000010154de58 main + 96
62 libdyld.dylib 0x00000001820668b8 + 4`

最佳答案

您的 Info.list 不正确:

<key>UIBackgroundModes</key>
<array>
<string>location</string>
</array>

您的 GeoLocator 代码显示正常:https://github.com/jamesmontemagno/GeolocatorPlugin#ios

关于c# - Xamarin 表单 MonoTouchException : Objective-C exception thrown when calling Geolocator. GetPositionAsync,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/38569623/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com