Я пытаюсь локализовать свое приложение SwiftUI, в котором есть раскадровки для нативных объявлений AdMob, но приложение продолжает аварийно завершать работу из-за отправки в экземпляр неизвестного селектора. Это происходит только в том случае, если язык устройства отличается от английского.
Почти все приложение использует SwiftUI, за исключением нескольких раскадровок для AdMob.
Я правильно локализовали часть SwiftUI и раскадровки. Код для инициализации и отображения рекламы взят из официальной документации AdMob и работает как надо.
Я почти уверен, что это проблема AdMob, и причина в том, что она находится в дампе. там написано -[UIImageView setMediaContent:]... и setMediaContent — это функция AdMob, однако в документации я смог найти ее только в разделе Android – Java, а не в разделе iOS – Swift для почему-то...
Хотя я почти уверен, что это не проблема локализации, а связано с языком набора устройств. Как упоминалось выше, сбой не происходит только, когда на устройстве, как симуляторе, так и физическом, установлен английский язык.
Как предотвратить сбой AdMob когда устройство не на английском языке?
*** Terminating app due to uncaught exception 'NSInvalidArgumentException', reason: '-[UIImageView setMediaContent:]: unrecognized selector sent to instance 0x102b6e330'
*** First throw call stack:
(
0 CoreFoundation 0x00000001804b70ec __exceptionPreprocess + 172
1 libobjc.A.dylib 0x000000018008ede8 objc_exception_throw + 72
2 CoreFoundation 0x00000001804ccc54 +[NSObject(NSObject) instanceMethodSignatureForSelector:] + 0
3 UIKitCore 0x0000000185ace7a8 -[UIResponder doesNotRecognizeSelector:] + 232
4 CoreFoundation 0x00000001804bb3ec ___forwarding___ + 1268
5 CoreFoundation 0x00000001804bdb0c _CF_forwarding_prep_0 + 92
6 Now 0x0000000100f2bda8 GAD_GADNativeAdView_arm64_11_10_0 + 4476
7 Now 0x0000000100fa8344 GADDispatchAsyncSafeMainQueue + 52
8 Now 0x0000000100f2bbb0 GAD_GADNativeAdView_arm64_11_10_0 + 3972
9 Foundation 0x0000000180ea9568 -[NSObject(NSKeyValueCoding) setValue:forKey:] + 268
10 UIKitCore 0x000000018601b5a0 -[UIView(CALayerDelegate) setValue:forKey:] + 156
11 UIKitCore 0x00000001856b957c -[UIRuntimeOutletConnection connect] + 80
12 CoreFoundation 0x00000001804a3cd0 -[NSArray makeObjectsPerformSelector:] + 192
13 UIKitCore 0x00000001856acdac -[UINib instantiateWithOwner:options:] + 1420
14 UIKitCore 0x00000001856adf20 -[NSBundle(UINSBundleAdditions) l o a d N i b N a m e d : o w n e r : o p t i o n s : ] + 1 1 2 < b r / > 1 5 N o w 0 x 0 0 0 0 0 0 0 1 0 0 9 7 2 e 0 8 $ s 3 N o w 1 2 N a t i v e A d V i e w 3 3 _ 7 6 C 8 0 8 0 4 7 1 7 2 D 3 2 F 5 B 9 E B A 5 1 A 2 3 5 A 1 0 5 L L V 1 0 m a k e U I V i e w 7 c o n t e x t S o 0 9 G A D N a t i v e c D 0 C 7 S w i f t U I 0 M 2 0 R e p r e s e n t a b l e C o n t e x t V y A D G _ t F + 2 1 2 0 < b r / > 1 6 N o w 0 x 0 0 0 0 0 0 0 1 0 0 9 7 5 a a 8 $ s 3 N o w 1 2 N a t i v e A d V i e w 3 3 _ 7 6 C 8 0 8 0 4 7 1 7 2 D 3 2 F 5 B 9 E B A 5 1 A 2 3 5 A 1 0 5 L L V 7 S w i f t U I 1 9 U I V i e w R e p r e s e n t a b l e A a e F P 0 4 m a k e N 0 7 c o n t e x t 0 N 4 T y p e Q z A E 0 n O 7 C o n t e x t V y x G _ t F T W + 2 8 < b r / > 1 7 S w i f t U I 0 x 0 0 0 0 0 0 0 1 d 2 3 a d d 6 4 $ s 7 S w i f t U I 3 2 P l a t f o r m V i e w R e p r e s e n t a b l e A d a p t o r 3 3 _ 1 9 6 4 2 D 8 3 3 A 8 F E 4 6 9 B 1 3 7 6 9 9 E D 1 4 2 6 7 6 2 L L V 0 4 m a k e D 8 P r o v i d e r 7 c o n t e x t 1 0 U I V i e w T y p e Q z A A 0 c d E 7 C o n t e x t V y A D y x G G _ t F + 2 2 8 < b r / > 1 8 S w i f t U I 0 x 0 0 0 0 0 0 0 1 d 2 3 a e 0 a 0 $ s 7 S w i f t U I 3 2 P l a t f o r m V i e w R e p r e s e n t a b l e A d a p t o r 3 3 _ 1 9 6 4 2 D 8 3 3 A 8 F E 4 6 9 B 1 3 7 6 9 9 E D 1 4 2 6 7 6 2 L L V y x G A A 0 c d E 0 A 2 a F P 0 4 m a k e D 8 P r o v i d e r 7 c o n t e x t 0 c d M 0 Q z A A 0 c d E 7 C o n t e x t V y x G _ t F T W + 2 0 < b r / > 1 9 S w i f t U I 0 x 0 0 0 0 0 0 0 1 d 2 3 1 e 7 1 c $ s 7 S w i f t U I 1 7 P l a t f o r m V i e w C h i l d V 1 1 u p d a t e V a l u e y y F y y X E f U _ A A 0 c D 4 H o s t C y x G S g y X E f U 2 _ A H y X E f U _ A G y X E f U _ + 2 9 2 < b r / > 2 0 S w i f t U I 0 x 0 0 0 0 0 0 0 1 d 2 3 2 3 4 b 8 $ s 7 S w i f t U I 1 7 P l a t f o r m V i e w C h i l d V 1 1 u p d a t e V a l u e y y F y y X E f U _ A A 0 c D 4 H o s t C y x G S g y X E f U 2 _ A H y X E f U _ A G y X E f U _ T A + 4 0 < b r / > 2 1 S w i f t U I 0 x 0 0 0 0 0 0 0 1 d 2 1 c 4 3 7 8 $ s 7 S w i f t U I 2 6 R e p r e s e n t a b l e C o n t e x t V a l u e s V 9 a s C u r r e n t 2 d o x x y X E _ t l F + 2 7 6 < b r / > 2 2 S w i f t U I 0 x 0 0 0 0 0 0 0 1 d 2 3 1 e 5 b c $ s 7 S w i f t U I 1 7 P l a t f o r m V i e w C h i l d V 1 1 u p d a t e V a l u e y y F y y X E f U _ A A 0 c D 4 H o s t C y x G S g y X E f U 2 _ A H y X E f U _ + 1 8 8 < b r / > 2 3 S w i f t U I 0 x 0 0 0 0 0 0 0 1 d 2 3 2 3 3 7 8 $ s 7 S w i f t U I 1 7 P l a t f o r m V i e w C h i l d V 1 1 u p d a t e V a l u e y y F y y X E f U _ A A 0 c D 4 H o s t C y x G S g y X E f U 2 _ T A + 1 0 8 < b r / > 2 4 S w i f t U I C o r e 0 x 0 0 0 0 0 0 0 1 d 2 c e e e 7 c $ s 7 S w i f t U I 1 6 _ w i t h O b s e r v a t i o n 2 d o x 5 v a l u e _ 0 D 0 0 D 8 T r a c k i n g V 1 1 _ A c c e s s L i s t V S g 0 6 a c c e s s I 0 t x y K X E _ t K l F x S p y A J G KXEfU_ + 84
25 SwiftUICore 0x00000001d299a048 $s7SwiftUI16_withObservation2dox5value_0D00D8TrackingV11_AccessListVSg06accessI0txyKXE_tKlFxSpyAJGKXEfU_TA + 24
26 SwiftUICore 0x00000001d2b36488 $ss17withUnsafePointer2to_q0_x_q0_SPyxGq_YKXEtq_YKs5ErrorR_Ri_zRi_0_r1_lF + 72
27 SwiftUICore 0x00000001d2cee560 $s14AttributeGraph12StatefulRuleP7SwiftUIE15withObservation2doqd__qd__yKXE_tKlFTm + 544
28 SwiftUICore 0x00000001d2cee2b8 $s14AttributeGraph12StatefulRuleP7SwiftUIE15withObservation2doqd__qd__yKXE_tKlF + 56
29 SwiftUI 0x00000001d231d7a8 $s7SwiftUI17PlatformViewChildV11updateValueyyFyyXEfU_ + 2372
30 SwiftUICore 0x00000001d2988d38 $s7SwiftUI8SignpostV13traceInterval6object__7closurexyXlSg_s12StaticStringVSays7CVarArg_pGyXKxyXEtlF + 344
31 SwiftUI 0x00000001d231cd20 $s7SwiftUI17PlatformViewChildV11updateValueyyF + 164
32 SwiftUI 0x00000001d15f8548 $s14AttributeGraph0A0VyACyxGqd__c5ValueQyd__RszAA12StatefulRuleRd__lufcADSPyqd__GXEfU_ySv_So11AGAttributeatcyXEfU_ySv_AJtcfu_TA + 28
33 AttributeGraph 0x00000001bdf35f7c _ZN2AG5Graph11UpdateStack6updateEv + 532
34 AttributeGraph 0x00000001bdf367cc _ZN2AG5Graph16update_attributeENS_4data3ptrINS_4NodeEEEj + 432
35 AttributeGraph 0x00000001bdf3e438 _ZN2AG5Graph20input_value_ref_slowENS_4data3ptrINS_4NodeEEENS_11AttributeIDEjjPK15AGSwiftMetadataRhl + 716
36 AttributeGraph 0x00000001bdf53f9c AGGraphGetValue + 232
37 SwiftUI 0x00000001d231fd1c $s7SwiftUI31InvalidatableLeafLayoutComputer33_A513612C07DFA438E70B9FA90719B40DLLV4viewAA04ViewdO0VyxGvgTm + 56
38 SwiftUI 0x00000001d231f478 $s7SwiftUI31InvalidatableLeafLayoutComputer33_A513612C07DFA438E70B9FA90719B40DLLV11updateValueyyF + 208
39 SwiftUI 0x00000001d15f8548 $s14AttributeGraph0A0VyACyxGqd__c5ValueQyd__RszAA12StatefulRuleRd__lufcADSPyqd__GXEfU_ySv_So11AGAttributeatcyXEfU_ySv_AJtcfu_TA + 28
40 AttributeGraph 0x00000001bdf35f7c _ZN2AG5Graph11UpdateStack6updateEv + 532
41 AttributeGraph 0x00000001bdf367cc _ZN2AG5Graph16update_attributeENS_4data3ptrINS_4NodeEEEj + 432
42 AttributeGraph 0x00000001bdf3e258 _ZN2AG5Graph20input_value_ref_slowENS_4data3ptrINS_4NodeEEENS_11AttributeIDEjjPK15AGSwiftMetadataRhl + 236
43 AttributeGraph 0x00000001bdf53d60 AGGraphGetInputValue + 248
44 SwiftUICore 0x00000001d2a34998 $s7SwiftUI11LayoutProxyV25requiresSpacingProjectionSbvg + 88
45 SwiftUICore 0x00000001d2d237bc $s7SwiftUI12_FrameLayoutV7spacing2in5childAA7SpacingVAA07SizeAndH7ContextV_AA0D5ProxyVtF + 204
46 SwiftUICore 0x00000001d2d23c10 $s7SwiftUI12_FrameLayoutVAA05UnaryD0A2aDP7spacing2in5childAA7SpacingVAA07SizeAndI7ContextV_AA0D5ProxyVtFTW + 40
47 SwiftUICore 0x00000001d2bb338c $s7SwiftUI17UnaryLayoutEngine33_1C3B77B617AD058A6802F719E38F5D79LLV7spacingAA7SpacingVyF + 76
48 SwiftUICore 0x00000001d2dcf3dc $s7SwiftUI15LayoutEngineBox33_91FCB5522C30220AE13689E45789FEF2LLC7spacingAA7SpacingVyF + 36
49 SwiftUICore 0x00000001d29a0abc $s7SwiftUI14_PaddingLayoutV7spacing2in5childAA7SpacingVAA07SizeAndH7ContextV_AA0D5ProxyVtF + 520
50 SwiftUICore 0x00000001d29a1004 $s7SwiftUI14_PaddingLayoutVAA05UnaryD0A2aDP7spacing2in5childAA7SpacingVAA07SizeAndI7ContextV_AA0D5ProxyVtFTW + 40
51 SwiftUICore 0x00000001d2bb338c $s7SwiftUI17UnaryLayoutEngine33_1C3B77B617AD058A6802F719E38F5D79LLV7spacingAA7SpacingVyF + 76
52 SwiftUICore 0x00000001d2dcf3dc $s7SwiftUI15LayoutEngineBox33_91FCB5522C30220AE13689E45789FEF2LLC7spacingAA7SpacingVyF + 36
53 SwiftUICore 0x00000001d27d8e48 $s7SwiftUI13_ZStackLayoutV7spacing8subviews5cacheAA11ViewSpacingVAA0D8SubviewsV_ytztF + 804
54 SwiftUICore 0x00000001d2be2d40 $s7SwiftUI16ViewLayoutEngineV7spacingAA7SpacingVyF + 120
55 SwiftUICore 0x00000001d2dcf3dc $s7SwiftUI15LayoutEngineBox33_91FCB5522C30220AE13689E45789FEF2LLC7spacingAA7SpacingVyF + 36
56 SwiftUICore 0x00000001d2e796e8 $s7SwiftUI11StackLayoutV12makeChildren33_00690F480F8D293143B214DBE6D72CD0LLyyF + 732
57 SwiftUICore 0x00000001d2a05aec $s7SwiftUI6VS
libc++abi: terminating due to uncaught exception of type NSException
Подробнее здесь: https://stackoverflow.com/questions/791 ... in-english
Раскадровка AdMob аварийно завершает работу, если на устройстве используется язык не на английском языке ⇐ IOS
-
- Похожие темы
- Ответы
- Просмотры
- Последнее сообщение
-
-
Приложение Flutter iOS аварийно завершает работу на устройстве при отключении от сети
Anonymous » » в форуме IOS - 0 Ответы
- 76 Просмотры
-
Последнее сообщение Anonymous
-
-
-
Приложение Flutter аварийно завершает работу только на устройстве Android
Anonymous » » в форуме Android - 0 Ответы
- 36 Просмотры
-
Последнее сообщение Anonymous
-