Hello,
I would like to ask if there is any possibility to invoke the Apple Sysdiagnose via an API call. I cannot find any API reference for Sysdiagnose.
I am aware only about the manually invocation. https://it-training.apple.com/tutorials/support/sup075/
However, this is pretty annoying since a reproduction of a hunted bug takes several hours, so I am looking for the way how to invoke Sysdiagnose from our code.
General
RSS for tagDelve into the world of built-in app and system services available to developers. Discuss leveraging these services to enhance your app's functionality and user experience.
Selecting any option will automatically load the page
Post
Replies
Boosts
Views
Activity
Hello,
We're facing an issue with app links failing and falling back to browser website journeys. Our apple-app-site-association file is hosted publicly and the app to app journeys have been working correctly up to very recently - we are trying to identify any potential network infra changes that could have impacted the Apple CDN being able to retrieve the apple-app-site-association file.
We can see in the iPhone OS logs that the links cannot be verified by the swcd process, and using the app-site-association.cdn-apple.com/a/v1 api via curl can also see the CDN has no record of the AASA file.
Due to the traffic being SSL and to a high volume enterprise site it is difficult for use to trace activity through anything other that the source IPs - we cannot filter on user-agent for "AASA-Bot/1.0.0" as breaking the SSL would be impactful due to the load. Is it possible to get a network range used by the Apple CDN to retrieve the AASA file as this would help us identify potential blocking behaviour?
Thank you.
An error was reported when requesting permissions on devices with iOS 16.2 16.3. It is not an emulator.
Through the log records, the following Error message appears
Error Domain=FamilyControls.FamilyControlsError Code=3 "(null)"
Error Domain=FamilyControls.FamilyControlsError Code=4 "(null)"
Error Domain=FamilyControls.FamilyControlsError Code=5 "(null)"
func requestScreenTime() async -> Bool {
do {
try await AuthorizationCenter.shared.requestAuthorization(for: .individual)
return AuthorizationCenter.shared.authorizationStatus == .approved
} catch {
print("\(error)")
return false
}
}
Is CallKit still not available in certain countries? like China? If it is, is there a way to get a list of countries?
I've discovered a bug in the Phone app on iOS related to how long verdicts are displayed.
When a call is identified by a third-party Caller ID app, long verdicts display correctly during the call (they auto-scroll) and in the call log (with an ellipsis at the end). However, on the call details screen, the text is strangely truncated - showing only the beginning of the string and the last word.
For testing, I used this verdict: "Musclemen grow on trees. They can tense their muscles and look good in a mirror. So what? I'm interested in practical strength that's going to help me run, jump, twist, punch."
I'll attach a screenshots demonstrating the problem:
Hello there!
So Im trying to upload an app to the App Store for iphone and Ipad, but from the revision team the same message always appears, the app crash.
So I know the "it works on my computer" sounds bad but....works on my computer and my test system.
Dont know what to do since I dont know how to replicate the error.
This is the rely they sent me:
Issue Description
The app exhibited one or more bugs that would negatively impact users.
Bug description: at time of review the app’s interface went blank at launch.
Review device details:
Device type: iPad Air (5th generation)
OS version: iPadOS 18.4.1
Anyone has any idea on how can I replicate the error and maybe check the logs? Im completely blind on this one.
I've been working a lot with the FamilyControls API and App Shield recently but have encountered a problem with no documentation. I used the FamilyActivitySelection to select the app store to shield(This is just for testing), and then printed out the application token:
1wfY¸êB ò S« öi #×(É?âðw ù/jQ ¿ J ïE¢? ·¿ º<Òd?ý r7¥Ãn N átJ¹ÿ85B_{VAF fC8. ,,¸¯3 T7F ±õü; ¹?v@¯ô Ä \-õ# Ò
I know the application token is a Codable object so I was wondering,
How do I create an application token using the Token<Application> initializer
init(from: any Decoder) throws
Creates a new instance by decoding from the given decoder.
Using the above data? Do I have to encode first in order to decode it?
For reference, the code I tried to use is:
newValue.applicationTokens.encode(to: JSONEncoder)
if let encoded = try? JSONEncoder().encode(newValue.applicationTokens) {
data = encoded
print(String(data: data, encoding: .utf8)!)
}
if let app = try? JSONDecoder().decode(Token<Application>.self, from: data) {
let token = Application(token: app)
print(token)
} else {
print("didn't work")
}
But it prints didn't work every time.
What should I do differently?
Topic:
App & System Services
SubTopic:
General
Tags:
Privacy
Application Services
Managed Settings
Family Controls
Hello,
I'm working on implementing Live Caller ID Lookup, but I noticed that https://github.com/apple/live-caller-id-lookup-example redirects to https://github.com/apple/pir-service-example.
Could you please clarify why this redirection occurs?
Hello Apple Developers,
I’m developing an iOS app that requires access to the user’s contacts. I understand that starting from iOS 14, Apple introduced two levels of contact permissions:
1️⃣ Full Access – The app can read all contacts.
2️⃣ Limited Access – The app can only access contacts selected by the user.
My Question:
If a user initially grants Limited Access, is it allowed by Apple’s guidelines to request Full Access later?
🔹 I understand that re-requesting permission immediately after the user denies it is against Apple’s policies.
🔹 However, if the user has already granted Limited Access, and we first show an explanation modal explaining why Full Access is beneficial, can we then prompt them to change their settings via openAppSettings()?
🔹 Alternatively, can we use Permission.contacts.request() again to re-prompt the user for Full Access, or will iOS prevent the permission prompt from appearing again?
How We Handle This in the App:
1️⃣ If a user selects Limited Access, we respect their choice and only access their selected contacts.
2️⃣ Later, if Full Access is necessary for an enhanced experience, we display a clear explanation modal explaining why the app needs Full Access.
3️⃣ If the user agrees, we attempt to guide them to openAppSettings(), allowing them to manually change the permission.
4️⃣ However, if Permission.contacts.request() can be used to directly request Full Access again, we would like to know if this is acceptable.
We want to ensure that our implementation follows Apple’s privacy guidelines while providing the best user experience.
Any official guidance or best practices on this matter would be greatly appreciated.
Thank you in advance!
Is there a way to distinguish physical mouse/keyboard input from remote control mouse/keyboard input on Mac? Or even better, is there a way to detect if my Mac is being remotely controlled?
I have an iOS app where the universal links are not working. Basically, I have double-checked the AASA file, and it's formatted correctly. It's in the right location .well-known subdirectory. I have checked other things as well.
For my app, if the user has forgotten their password, they click on the Forgot Password option, which sends them an email, after which they click on a link; the link should open the iOS app, but is instead opening up the web browser. The format of the link matches the formatting in the AASA file. As well, I've checked associated domains as well.
Using Postman, I can see that the AASA file is accessible.
I have a feeling that the iOS app cannot fetch the AASA file, as I don't see any relevant swcd logs.
My AASA file is located at:
https://www.COMPANY_NAME.ca/.well-known/apple-app-site-association
Please advise.
I am able to block apps using FamilyControl and Shield. Unblocking is also simple—just assign nil to store.shield.applications. However, I want to unblock them even when the app is not open.
Use case: Let's say the app allows users to create a session where a particular app is blocked for a specific duration. Once the session starts, the app should remain blocked, and as soon as the session time ends, it should automatically be unblocked.
Please help me with this. Thank you!
I have two call directory extensions, each with InfoPlist.strings in en.lproj and nb.lproj directories. In these files I've defined CFBundleDisplayName for both locales.
These names are displayed under Settings -> Phone -> Call Blocking & Identification. On iOS 12.2 the names are displayed correctly in both Norwegian and English.
Testing on iOS 15.3 the English names are displayed even when device language is set to Norwegian.
Worth noting: When updating the English versions of CFBundleDisplayName this is immediately reflected in Call Blocking & Identification page with Norwegian device language.
As this feature requires a real device, I'm unable to test on iOS 13 and 14.
Is there any way i can show popover tip on tabItem inside of TabView
TabView(selection: selected) {
Group{
HomeView()
.tabItem {
Label {
Text("Home")
} icon: {
Image(selected==1 ? "home-icon" : "home-unselect")
}
// show tip over the Home icon
}
.tag(1)
}
}
We are currently developing a VoIP application that supports Local Push extention.
We discovered an issue with this app where the performEndCallAction response to reportCallWithUUID is occasionally slow.(See below for detail)
It usually works without any issues, so we believe there is no problem with the app's processing flow.
This issue only occurs very rarely, but each time it does there is a delay of about 60 seconds,
which leads us to suspect that there is some kind of problem on the iOS side, and that fail-safe processing is occurring after 60 seconds.
Do you know of a workaround for this issue?
在watchOS11.5下,Apple watch无法加载天气。无论是否连接自己的iPhone均无法加载
I've run Speakerbox(https://docs-assets.developer.apple.com/published/8e99045a90e2/MakingAndReceivingVoIPCallsWithCallKit.zip) to check the behavior of CallKit.
When there was one active call and one on hold and another call was received, the behavior was defferent depending on whether I operated it from a headset or not.
No headset or operated from CallKit screen
When "End & Accept" tapped: the active call is hung up, and the received call is answered.
When "End Held & Accept" tapped: the held call is hung up, the active call is held, and the received call is answered.
Operated from headset
Answer opeation cannot be performed for unknown reasons
Disconnect operation caused that all calls other than the one on hold are hung up and the held call is unheld.
Hold operation caused that the active call is held and the received call is answered. (Strangely, there are two held calls.)
And when I toggle calls at this time, one of the two on hold is hung up for unknown reasons.
I tried changing the settings of CXProviderConfiguration and CXCallUpdate, and changing the options in the Audio Session category, but it did not improve.
I checked CXActions occurring, and it was as follows.
(Call A = held call, Call B = active call, Call C = received call)
Disconnect (or Answer?) operation
(lacking CXEndCallAction for Call A)
CXEndCallAction for Call B
CXAnswerCallAction for Call C
CXEndCallAction for Call C <- weird
CXSetHeldCallAction for Call A onHold=false
Hold operation
(lacking lacking CXEndCallAction for Call A)
CXSetHeldCallAction for Call B
CXAnswerCallAction for Call C
Toggle calls
CXSetHeldCallAction for Call C onHold=true
CXSetHeldCallAction for Call A onHold=false
CXSetHeldCallAction for Call B onHold=false <- weird
CXEndCallAction for Call B
is there documentation where we can find details for historical parameters / limitations - so far i've found that the days limit on single API calls days limit is 7. Any other similar specs would be good to have
I found that in iOS 18.5, DeviceActivityCenter startMonitoring cannot start multiple monitors, even if their names and periods are different, and restarting the phone cannot solve it. My app uses DeviceActivityCenter, which makes the entire function unusable. (I have less than 20 monitors)
Topic:
App & System Services
SubTopic:
General
Tags:
Family Controls
Device Activity
Managed Settings
Hello everyone,
I’m running an Objective-C–based hybrid (native + web) shopping application and encountering a recurring issue on devices running iOS 18.1.1:
When the app launches, it only shows a white screen with the native frame visible—no web content loads.
Restarting or reinstalling the app doesn’t help. In one instance, toggling Airplane Mode on and off brought the app back to normal, but this workaround isn’t consistent.
There are no crash logs, so we can’t determine if it’s caused by a network error, cache conflict, or an OS-level bug.
So far, we have only seen this issue on iOS 18.1.1 devices. Because our app is a shopping platform, this significantly impacts users.
Questions:
Could this be related to a known bug or limitation in iOS 18.1.1?
Are there recommended diagnostic steps or workarounds for a hybrid app that shows a white screen without generating crash logs?
Which additional details (e.g., system logs, network traces, device configurations) might help isolate the cause?
Any insights or suggestions would be greatly appreciated. Thank you in advance!
Topic:
App & System Services
SubTopic:
General