Post

Replies

Boosts

Views

Activity

Widget continually crashing - custom font issue?
I'm trying to develop a widget, I've been using a custom font. If I add the widget to the home screen maybe 70% of the time it will load, then randomly it will just start to fail and continually crash, just flashing white. If I add multiple instances of the widget to my home screen then it will just crash 100% of the time. Both widget will just sit flashing and continually crash. In the crash logs on my device I can see SwiftUI is crashing, on something relating to fonts: 0 SwiftUI 0x00000001e5c52f5c CodablePlatformFont.init+ 6733660 If I take the custom font out of the widget then it will load (eventually after resetting the device, widgets are sooo buggy) and I can have multiple instances. I'm not sure if I am doing something wrong trying to use the custom font. I created a new project and included the same custom font and loaded it the same way (just adding it to the bundle and in the info.plist) and that does not seem to crash. Just wondering if this is a known issue with custom fonts, if anyone has a workaround to stop it happening. Here is a snippet of the crash stack: Date/Time:&#9;&#9;&#9;&#9;&#9; 2020-08-21 13:26:32.7104 -0700 Launch Time:&#9;&#9;&#9;&#9; 2020-08-21 13:26:32.2918 -0700 OS Version:&#9;&#9;&#9;&#9;&#9;iPhone OS 14.0 (18A5351d) Release Type:&#9;&#9;&#9;&#9;Beta Baseband Version:&#9;&#9;3.50.05 Report Version:&#9;&#9;&#9;104 Exception Type:&#9;EXC_BREAKPOINT (SIGTRAP) Exception Codes: 0x0000000000000001, 0x00000001e5c52f5c Termination Signal: Trace/BPT trap: 5 Termination Reason: Namespace SIGNAL, Code 0x5 Terminating Process: exc handler [8244] Triggered by Thread:&#9;0 Thread 0 name:&#9;Dispatch queue: com.apple.main-thread Thread 0 Crashed: 0&#9; SwiftUI&#9;&#9;&#9;&#9;&#9;&#9;&#9;&#9;&#9;&#9;&#9; 0x00000001e5c52f5c CodablePlatformFont.init+ 6733660 (from:) + 2744 1&#9; SwiftUI&#9;&#9;&#9;&#9;&#9;&#9;&#9;&#9;&#9;&#9;&#9; 0x00000001e5c52c54 CodablePlatformFont.init+ 6732884 (from:) + 1968 2&#9; SwiftUI&#9;&#9;&#9;&#9;&#9;&#9;&#9;&#9;&#9;&#9;&#9; 0x00000001e5c52f88 protocol witness for Decodable.init+ 6733704 (from:) in conformance CodablePlatformFont + 20 3&#9; libswiftCore.dylib&#9;&#9;&#9;&#9;&#9;&#9; 0x00000001b6feff80 dispatch thunk of Decodable.init+ 2957184 (from:) + 16 4&#9; libswiftFoundation.dylib&#9;&#9;&#9; 0x00000001e3e1dd0c __PlistDecoder.unbox<A>+ 343308 (_:as:) + 372 5&#9; libswiftFoundation.dylib&#9;&#9;&#9; 0x00000001e3e28860 _PlistKeyedDecodingContainer.decode<A>+ 387168 (_:forKey:) + 660 6&#9; libswiftFoundation.dylib&#9;&#9;&#9; 0x00000001e3e2ac94 protocol witness for KeyedDecodingContainerProtocol.decode<A>+ 396436 (_:forKey:) in conformance _PlistKeyedDecodingContainer<A> + 48 7&#9; libswiftFoundation.dylib&#9;&#9;&#9; 0x00000001e3e2a9f4 protocol witness for KeyedDecodingContainerProtocol.decode<A>+ 395764 (_:forKey:) in conformance _PlistKeyedDecodingContainer<A> + 20 8&#9; libswiftCore.dylib&#9;&#9;&#9;&#9;&#9;&#9; 0x00000001b6d722cc _KeyedDecodingContainerBox.decode<A, B>+ 344780 (_:forKey:) + 296 9&#9; libswiftCore.dylib&#9;&#9;&#9;&#9;&#9;&#9; 0x00000001b6d659e4 KeyedDecodingContainer.decode<A>+ 293348 (_:forKey:) + 40 10&#9;SwiftUI&#9;&#9;&#9;&#9;&#9;&#9;&#9;&#9;&#9;&#9;&#9; 0x00000001e5c4f5c8 CodableAttributes.init+ 6718920 (from:) + 832 11&#9;SwiftUI&#9;&#9;&#9;&#9;&#9;&#9;&#9;&#9;&#9;&#9;&#9; 0x00000001e5c503c4 protocol witness for Decodable.init+ 6722500 (from:) in conformance CodableAttributes + 20 12&#9;libswiftCore.dylib&#9;&#9;&#9;&#9;&#9;&#9; 0x00000001b6feff80 dispatch thunk of Decodable.init+ 2957184 (from:) + 16 13&#9;libswiftFoundation.dylib&#9;&#9;&#9; 0x00000001e3e1dd0c __PlistDecoder.unbox<A>+ 343308 (_:as:) + 372 14&#9;libswiftFoundation.dylib&#9;&#9;&#9; 0x00000001e3e2b32c _PlistUnkeyedDecodingContainer.decode<A>+ 398124 (_:) + 776 15&#9;libswiftFoundation.dylib&#9;&#9;&#9; 0x00000001e3e2d150 protocol witness for UnkeyedDecodingContainer.decode<A>+ 405840 (_:) in conformance _PlistUnkeyedDecodingContainer + 12 16&#9;libswiftCore.dylib&#9;&#9;&#9;&#9;&#9;&#9; 0x00000001b6d7cbd0 Array<A>.init+ 388048 (from:) + 332 17&#9;libswiftCore.dylib&#9;&#9;&#9;&#9;&#9;&#9; 0x00000001b6d7d178 protocol witness for Decodable.init+ 389496 (from:) in conformance <A> [A] + 28 18&#9;libswiftCore.dylib&#9;&#9;&#9;&#9;&#9;&#9; 0x00000001b6d7cc8c protocol witness for Decodable.init+ 388236 (from:) in conformance <A> [A] + 20 19&#9;libswiftCore.dylib&#9;&#9;&#9;&#9;&#9;&#9; 0x00000001b6feff80 dispatch thunk of Decodable.init+ 2957184 (from:) + 16 20&#9;libswiftFoundation.dylib&#9;&#9;&#9; 0x00000001e3e1dd0c __PlistDecoder.unbox<A>+ 343308 (_:as:) + 372 21&#9;libswiftFoundation.dylib&#9;&#9;&#9; 0x00000001e3e28860 _PlistKeyedDecodingContainer.decode<A>+ 387168 (_:forKey:) + 660 NOTE: I am using the beta5 build
2
0
1.6k
Feb ’21
Can't test subscription upgrade/downgrade. iOS doesn't use the sandbox account
Hi, I am trying to test my subscription upgrade/downgrade path on a device. I added a test user to the sandbox section of Settings - App Store and can purchase subscriptions using that test user no problem in my app. However, if I click on "Manage" on the sandbox user to see the list of subscriptions, when I try to upgrade/downgrade the purchase UI that iOS shows tries to use my actual personal account instead of the sandbox user, so I can't complete the transaction. Looks like a bug in the sandbox testing flow in iOS, but any way around it? Right now I just simulate updates from apple on my backend to make sure my app behaves as expected, but I would like to actually get some "real" data from Apple.
4
0
2.2k
May ’21
Subscription in iOS subscription list showing productId not localized name
Hi - I have an auto-renew subscription, for some reason when the user looks at their subscriptions in the iOS subscription list the subscription shows the productId as the name e.g. com.company.app.subscriptonName not the localized string e.g. "Foo Monthly Subscription". I have other subscriptions and they all works as expected and show the localized name. The one that is showing the productId is configured the same as the others as far as I can tell, any reason why this is happening and how to fix it? Thanks.
0
0
883
May ’21
WeatherKit available to iOS users in China?
Does WeatherKit work for users in China? Some of our APIs to fetch weather data from other sources have been blocked in China, we are hoping WeatherKit will work as a replacement for them (we are using the Swift APIs to integrate with WeatherKit). Hopefully calling WeatherKit using the Swift APIs inside China from an iOS device will return data successfully and not fail. Thanks.
2
0
983
Oct ’22
Crash inside SceneKit [SCNPhysicsField _removeOwner]
I'm seeing a decent number of crash reports from our app where SceneKit is crashing internally relating to SCNPhysicsField. The stack looks like: objc_msgSend -[SCNPhysicsField _removeOwner] -[SCNNode dealloc] AutoreleasePoolPage::releaseUntil(objc_object**) -[UIApplication _run] UIApplicationMain main start It must be that I am removing a node that has a physics field on it and it randomly crashes. Probably threading related? Anyone know if there is a workaround, maybe setting physicsField to nil first before trying to remove the node? Thanks
2
0
1.5k
Mar ’23
Convert stereo to mono dynamically using AVAudioEngine
I am using AVAudioEngine, I have a stereo wav file that I want to use with an AVAudioEnvironmentNode but it requires the input source is mono otherwise it will not spatialize the sounds. Is there some way I can convert the stereo input to mono dynamically, maybe using an avaudiomixernode or something else? It looks like maybe I can use AVAudioConverter to convert the original buffer, but I want to be able to just add a node in the AVAudioEngine graph that can convert it to mono if that is possible, rather than having to convert the input buffer explicitly. So something like: WAV -> AVAudioPlayerNode -> Stereo to mono node -> AVAudioEnvironmentNode
0
0
1.6k
Dec ’22
When to use: AVAudioSession.RouteSharingPolicy.longFormAudio
The docs for this property say: "Apps that play long-form audio, such as music or audio books, can use this policy to play to the same output as the built-in Music and Podcast apps. Long-form audio apps should also use the Media Player framework to add support for remote control events and to provide Now Playing information." That doesn't really say what the benefit is for adding this option or what are the drawbacks? Does somebody have some more information on when you should use this policy and potential issues it might cause? We are working on a music app that will play music in the background so it sounds like we should add this policy, but I can't find any information about why you should. Thanks
0
0
808
Mar ’23
How to know the app was launched from an AppIntent in a widget?
Is it possible to tell in your code if the app was launched from an app intent action in a widget. In my SwiftUI code it has something like Button(intent: MyIntent()) I want to be able to tell when the user has clicked on the button to launch the app, because I need some different setup code to run before the intent perform method is called. Thanks
3
0
2k
Sep ’23
Information on AudioPlaybackIntent
Is there any information on what the AudioPlaybackIntent does? The documentation doesn't give any information on it: https://developer.apple.com/documentation/appintents/audioplaybackintent I have an audio app and I want to add a play/pause button to our widget for iOS17, I'm assuming I need to use an AudioPlaybackIntent but there is no documentation on what it does. Thanks.
0
0
868
Sep ’23
String(localized:locale) ignores locale parameter
I'm trying to load a localized string with a specific Locale, for example: String(localized: "someKey", locale: Locale(identifier: "fr")) However the locale I pass in is being ignored, no matter what I set it to the string returns a value using the Locale.current value not the parameter I pass in. Am I doing something wrong, is there some way to specify a certain locale?
1
0
799
Jan ’24
Elapsed scene time used in custom shader uniform
If you create a custom shader you get access to a collection of uniform values, one is the uniforms::time() parameter which is defined as "the number of seconds that have elapsed since RealityKit began rendering the current scene" in this doc: https://developer.apple.com/metal/Metal-RealityKit-APIs.pdf Is there some way to get this value from Swift code? I want to animate a value in my shader based on the time so I need to get the starting time value so I can interpolate the animation offset from that point. If I create a System in the update() function I get a SceneUpdateContext instance and that has a deltaTime property but not an elapsedTime property which I would assume would map to the shader time() value.
1
0
889
Aug ’24
App Icon all black on ios17, works on iOS18, building app in Xcode16 beta
In my app I added an AppIcon in the Assets.xcassets folder. I added a any/dark/tinted version of the app icon, in 1024x1024 resolution as a HEIC file, specifying a "single size" iOS option. When I build and run the app in xcode16 beta on iOS18 the icon works as expected, but when I run the same app on iOS17 the icon just shows up as a black rectangle. How do I get the app icon to work correctly on both iOS18 and iOS17?
2
0
1.2k
Aug ’24