Post

Replies

Boosts

Views

Activity

Reply to tab icon in iPadOS 18 tab bar
Thanks, the UIKit answer is that UITabBarController.mode can be set to UITabBarControllerModeTabSidebar. It only adds a sidebar icon that can open a sidebar with the icons. That does not help, it only makes the UI clunkier. The suggestion feedback is at FB14536289.
Jul ’24
Reply to Connect DSA trader question
Disclaimer: I am not a lawyer, and none of the text below should be regard as legal advice. In my reading of the official and final text, traders that qualify as micro- and small-sized companies are exempted from having their detailed contact data published on the platform. The Contact Information Verification form on App Store Connect does not provide an option for a self-declaration as a micro- or small-sized company. Instead, it cannot be completed without filling the e-mail and phone number fields. This form states that this information will appear on the App Store in certain countries or regions. This form therefore violates the DSA, and Apple should amend it.
Apr ’24
Reply to Xcode 12.1 cannot install to iOS 14.2
Here is my solution: Install the Xcode 12.2 release candidate. Don't worry about renaming as suggested by CrudeByte - https://developer.apple.com/forums/thread/665891?answerId=645676022#645676022, it will install as Xcode-beta.app in parallel to your Xcode.app. It will install "additional components", though. Remove the contents of ~/Library/Developer/Xcode/iOS DeviceSupport (or at least the folders starting with 14.2) Build and run your app in Xcode-beta (12.2 beta 4, also known as release candidate). This might take a few minutes as Xcode copies caches from your 14.2 device to the device support folder You may want to continue in Xcode-beta or return to Xcode 12.1. Either will now build, run, and debug your app in reasonable time. I understand your concerns about installing a beta, as I did have issues with switching back and forth between beta and release versions of Xcode a few times in the past. This time around it seems to work. I would still not recommend to run them at the same time. tundaware - https://developer.apple.com/forums/thread/651012?answerId=616750022#616750022's answer on another thread inspired this. If you don't want to install a beta but can stomach replacing parts of your Xcode installation with material downloaded from GitHub, aaronsarkissian - https://developer.apple.com/forums/thread/665891?answerId=645879022#645879022's answer should help as well, at it is based on the same idea.
Nov ’20
Reply to Xcode 12.1 cannot install to iOS 14.2
After many tries going back and forth between Xcode 12.1 and Xcode 12.2 beta 4 (the Release Candidate), I got both now to install and launch my app. However, it then gets stuck at the launch screen. The app does not start running, no debugging session is started, the console stays empty. The app does get installed. When I stop the session, I can actually run the app stand-alone on the 14.2 device. No iOS betas seem to be available at this time, and going back to 14.1 is not allowed. Questions: Is there any version of Xcode that can debug apps on iOS 14.2 devices? Do I need to stop development until Apple deigns to release Xcode 12.2?
Nov ’20
Reply to Not able to localise NSLocalNetworkUsageDescription.
This issue still occurs in yesterday's iOS 14 beta 7. Worse still, localized apps display the base-language custom message from the info.plist under a localized title and with localized action buttons, and thus ensure complete confusion for end users. I prefer now not to customize it and leave users with the misleading but pre-localized default description, which at least they can try to understand in their own language. I filed a bug report but have little hope that any human will ever read it.
Sep ’20
Reply to Game Center matching overloaded?
After www.apple.com/support/systemstatus/ admitted a four-hour Game Center issue on April Fools’ Day, connection chances have increased a tiny little bit, but breakdowns are still very frequent. I did some intensive testing with four devices over the last days and found about a dozen different scenarios where connections break down.I identified 8 different scenarios were console messages seems to coincide with a connection breakdown. None of them notifies the app to let it react. All of them hint at timeouts or lost messages, and thus at overloaded servers on Apple’s side. Here are typical examples of these messages:scenario 1:2020-04-03 16:10:15.795282+0200 AppName[2959:960099] [ViceroyTrace] [ERROR] attempt_failover:4341 Connection timed out for [004B0858] (in clstate 3)2020-04-03 16:10:15.807142+0200 AppName[2959:960195] [ViceroyTrace] [ERROR] -[GKSessionInternal(_private) newNSErrorFromGKSessionError:description:reason:]:673 Error: 30503 -- Connection timed out..scenario 2:2020-04-03 16:14:54.251494+0200 AppName[2426:580756] [ViceroyTrace] [ERROR] SendCollectionRequest:508 /AppleInternal/BuildRoot/Library/Caches/com.apple.xbs/Sources/AVConference/AVConference-1640.8.1.1/ICE.subproj/Sources/ICEMessage.c:508: HandoverReport: failed to send SNATMAP request for [192.168.0.150:16401], error(801A0016). Save message for retryscenario 3:2020-04-03 10:01:44.887722+0200 AppName[2228:512032] [ViceroyTrace] [ERROR] OSPFParse_ParsePacketHeader:1083 Bad destination count=02020-04-03 10:01:44.888342+0200 AppName[2228:511553] [ViceroyTrace] [ERROR] ICEGetCandidates:580 /AppleInternal/BuildRoot/Library/Caches/com.apple.xbs/Sources/AVConference/AVConference-1640.8.1.1/ICE.subproj/Sources/ICE.c:580: ProcessCollectionResponse failed (8015000C)scenaro 4:2020-04-02 18:51:04.771723+0200 AppName[4319:832248] [ViceroyTrace] [ERROR] ICEStopConnectivityCheck:2733 ICEStopConnectivityCheck() found no ICE cscenario 5:2020-04-03 10:08:44.206127+0200 AppName[4745:989071] [ViceroyTrace] [ERROR] AGPSessionRecvFrom:1565 fail: message fragment @index 9 ser 00000000 should be 00000009scenario 6:2020-04-03 10:52:24.688927+0200 AppName[2839:906970] [ViceroyTrace] [ERROR] -[GKDiscoveryManager connectToSockAddr:port:forPeer:]_block_invoke_2:279 peer [FEC57AA662DEFB0F] data received with error Connection closedscenario7:2020-04-03 15:00:23.804775+0200 AppName[4841:1044343] [ViceroyTrace] [ERROR] ICEGetCandidates:580 /AppleInternal/BuildRoot/Library/Caches/com.apple.xbs/Sources/AVConference/AVConference-1640.8.1.1/ICE.subproj/Sources/ICE.c:580: ProcessCollectionResponse failed (8015000C)scenario 8:2020-04-03 15:40:02.542114+0200 AppName[2921:951200] [ViceroyTrace] [ERROR] -[GKDiscoveryManager connectToSockAddr:port:forPeer:]_block_invoke:248 peer [0EB172B1135C04CC] error in connectedHandler [Unable to connect]2020-04-03 15:40:02.543461+0200 AppName[2921:952495] [Match] Error sending dictionary { bundleID = "com.company.appname"; bundleVersion = "2.6"; isDevelopmentVersion = 1; message = 0; platform = 1; shortBundleVersion = "2.6";} to deviceID: 0EB172B1135C04CC, error = Error Domain=GKDiscoveryPeer Code=-1 "Unable to connect" UserInfo={NSLocalizedDescription=Unable to connect}Some easier scenarios revolve around lost authentication of the local player. Some of them return GKError with codes 6 or 8, which then enables the app to react. I managed to work around some of them by preloading and caching recent players. The lost authentications usually leave the following message in the console:2020-04-01 18:53:43.275375+0200 AppName[55085:4001598] [Error] _authenticateUsingAlert:Failed to authenticate player with existing credentials.Error: Error Domain=NSURLErrorDomain Code=-1001 "(null)"Other error messages keep cluttering the console in large numbers but seem to appear independently of success or failures. Here are some examples:2020-04-01 18:42:45.007690+0200 AppName[55085:4006523] [ViceroyTrace] [ERROR] ProcessEvent:1198 Send BINDING_REQUEST failed(801A0016).2020-04-01 18:42:45.046783+0200 AppName[55085:4006412] [ViceroyTrace] [ERROR] AGPSessionRecvFrom:1954 0x10105a070 sack: SEARCH FAILURE SERIAL NUMBER (00000005) FROM (2930F198)...2020-04-01 18:53:45.192184+0200 AppName[55085:4011378] [ViceroyTrace] [ERROR] ReXmitCollectionRequest:628 /AppleInternal/BuildRoot/Library/Caches/com.apple.xbs/Sources/AVConference/AVConference-1640.8.4.1/ICE.subproj/Sources/ICEMessage.c:628: ReXmit [SNATMAP_REQUEST] (1:0) from [192.168.0.214:16398] to [17.173.255.129:16384] failed (801A0016)2020-04-02 16:29:53.050503+0200 AppName[2671:749372] [ViceroyTrace] [ERROR] OSPFParse_ParsePacketHeader:1083 Bad destination count=02020-04-02 16:29:53.322328+0200 AppName[2671:749372] [ViceroyTrace] [ERROR] OSPFParse_ParsePacketHeader:1100 Checksum=42050 doesn't match2020-04-02 16:29:53.322873+0200 AppName[2671:749616] [ViceroyTrace] [ERROR] RemoveNominatedCandidatePair:982 failed with invalid index input: -1, candidate pair count: 122020-04-02 16:29:53.323351+0200 AppName[2671:749616] [ViceroyTrace] [ERROR] ICEStopConnectivityCheck:2733 ICEStopConnectivityCheck() found no ICE check with call id (1187846793)2020-04-02 16:29:53.328064+0200 AppName[2671:749616] [ViceroyTrace] [ERROR] gckSessionCheckPendingConnections:1446 gckSessionCheckPendingConnections: iICEChecksLeft=0, iUnconnectedNodeCount=0, iDDsExpected=12020-04-02 16:30:58.915093+0200 AppName[2671:749812] [ViceroyTrace] [ERROR] -[GKDiscoveryManager connectToSockAddr:port:forPeer:]_block_invoke_2:279 peer [26D308CB935EBD99] data received with error Connection closed
Apr ’20