What happen when a deprecated method is used in project submitted to Apple Store Connect ?
Generally the Apple documentation give the alternative like "Use ***: instead" but sometime the documentation do not suggest anything.
What to do when a such Warning happen ?
General
RSS for tagDive into the vast array of tools and services available to developers.
Selecting any option will automatically load the page
Post
Replies
Boosts
Views
Activity
Hello,
According to the official documentation, the macOS Virtualization Framework currently supports only macOS and Linux guest operating systems. I would like to know if there is any way—officially or through a supported workaround—to run Windows 11 as a guest using this framework.
Additionally, is there any indication or roadmap suggesting that support for Windows guests might be introduced in a future release, such as in macOS 16?
Any insights or official clarification would be greatly appreciated.
Thank you.
Good morning everyone,
I am developing a Flutter app for Android and iOS.
When I press a button, the app detects the location of the device (obviously with permissions already granted).
On Android everything works correctly.
On iOS, however, when I press the button for the first time after opening the app, the location is detected after about 30-50 seconds.
On the other hand, if I repeat the operation later, the response time is drastically reduced (only a few seconds).
I am using the location package (https://pub.dev/packages/location), and the code to get the location is as follows:
var currentLocation = await location.getLocation();
Has anyone experienced this problem before or knows how to solve it?
Thank you very much!
Federico
When a static library is built with Xcode 26 (with deployment target set to iOS 13) and then linked into an app project compiled with Xcode 16, the build process fails with the following linker error:
Undefined symbols for architecture arm64:
"_swift_coroFrameAlloc"
This occurs even though both the static library and the app project have their deployment targets set to iOS 13.0. The static library works on Xcode 26, but fails to link on Xcode 16.
This issue shows up with certain Swift syntax. For example, in my case, using a property getter and setter caused the compiler to emit a reference to _swift_coroFrameAlloc, which in turn triggered the issue.
This issue prevents us from distributing pre-built static libraries compiled with Xcode 26 to teammates who are still using Xcode 16.
I’ve filed feedback for this issue (FB21130604).
Is there any way to work around it? For example, by adding specific Build Settings or something similar?
A demo project is available here: https://github.com/Naituw/SwiftLibraryDeploymentTargetIssue
The demo project includes:
StaticLibraryProject: A simple Swift static library with property getter setter usage
AppProject: An iOS app that links against the static library
verify_compatibility.sh: An automated script to reproduce the issue
Method 1: Manual Build and Verification
Open StaticLibraryProject/StaticLibraryProject.xcodeproj in Xcode 26
Build the StaticLibraryProject for iOS device (Release configuration)
Locate the built libStaticLibraryProject.a in the build products directory
Copy libStaticLibraryProject.a to AppProject/AppProject/ directory
Open AppProject/AppProject.xcodeproj in Xcode 16
Build the AppProject for iOS device
Method 2: Automated Script
Edit verify_compatibility.sh to configure the paths to your Xcode installations:
Set XCODE_26_PATH to your Xcode 26 installation path (e.g., /Applications/Xcode.app)
Set XCODE_16_PATH to your Xcode 16 installation path (e.g., /Applications/Xcode16.app)
Run the script: ./verify_compatibility.sh
Hello Team!
Recently we cleaned up profiles and renewed certificates under developer account, noticing profile expiration date showing invalid, it supposed to show certificate expiration date. Due to this I am not able to update or download profiles. Any one experienced this this? what would be the solution?.
Thanks,
Kumar.
Topic:
Developer Tools & Services
SubTopic:
General
Hi, my server in Melbourne Australia is getting weather forecasts from a few places around Australia. When I look at the daily timesteps that I get back, they might be something like this:
"days": [
{
"forecastStart": "2025-06-25T00:00:00Z",
"forecastEnd": "2025-06-26T00:00:00Z",
"daytimeForecast": {
"forecastStart": "2025-06-25T07:00:00Z",
"forecastEnd": "2025-06-25T19:00:00Z",
"overnightForecast": {
"forecastStart": "2025-06-25T19:00:00Z",
"forecastEnd": "2025-06-26T07:00:00Z",}
It doesn't matter where I ask for - Melbourne, Darwin, Perth, it always comes back the same.
The documentation says that daytimeForecast is 7 am to 7 pm local and overnightForecast is 7pm to 7 am local.
However, in a place like Perth 7-19Z is 3 pm to 3 am, not 7 pm to 7 am like advertised.
I can see that for any given date, there are 3 maximum temperature forecasts, a 24 hour max, a daytime max and an overnight max and they differ from each other.
Can anyone help me understand what's happening here?
And furthermore in the example above, the 24 hour forecasts that have, for example this:
"forecastStart": "2025-06-25T00:00:00Z" ... Can the 00:00:00Z be trusted literally? Or is it more the case that it's "2025-06-25" but the HMS got tacked on in a conversion?
Hi everyone,
I'm developing a Capacitor plugin to display an RTSP video stream using MobileVLCKit on iOS. The Android side works perfectly, but I can’t get the iOS plugin to work — it seems my Swift file is not being detected or recognized, even though I’ve followed the official steps.
What works:
I followed the Capacitor Plugin Development Guide.
I implemented the Android version of the plugin in Java inside the android/ folder. Everything works perfectly from Angular: the plugin is recognized and calls execute correctly.
The issue on iOS:
I implemented the iOS part in Swift, using the official MobileVLCKit documentation.
I initially placed my RtspVlcPlugin.swift file in the plugin’s iOS folder, as the docs suggest.
Then I moved it directly into the main app’s ios/App/App/ folder next to AppDelegate.swift and tried manual registration.
The problem:
Even though I manually register the plugin with:
if let bridge = self.window?.rootViewController as? CAPBridgeViewController {
bridge.bridge?.registerPluginInstance(RtspVlcPlugin())
print("✅ Plugin RtspVlcPlugin registered manually.")
}
It prints the registration message just fine.
BUT from Angular, the plugin is not recognized: Capacitor.Plugins.RtspVlcPlugin has no methods, and I get this error:
"code":"UNIMPLEMENTED"
I also tried declaring @objc(RtspVlcPlugin) and extending CAPPlugin.
I’ve verified RtspVlcPlugin.swift is added to the target and compiled.
The Swift file doesn’t seem to register or expose any methods to Angular.
I even tried adding the code without using a plugin at all — just creating a Swift class and using it via the AppDelegate, but it still doesn't expose any callable methods.
My Swift code (RtspVlcPlugin.swift):
import Capacitor
import MobileVLCKit
@objc(RtspVlcPlugin)
public class RtspVlcPlugin: CAPPlugin, VLCMediaPlayerDelegate {
var mediaPlayer: VLCMediaPlayer?
var containerView: UIView?
var spinner: UIActivityIndicatorView?
@objc func iniciar(_ call: CAPPluginCall) {
guard
let urlStr = call.getString("url"),
let x = call.getDouble("x"),
let y = call.getDouble("y"),
let w = call.getDouble("width"),
let h = call.getDouble("height"),
let url = URL(string: urlStr)
else {
call.reject("Missing parameters")
return
}
DispatchQueue.main.async {
self.containerView?.removeFromSuperview()
let cont = UIView(frame: CGRect(x: x, y: y, width: w, height: h))
cont.backgroundColor = .black
cont.layer.cornerRadius = 16
cont.clipsToBounds = true
let sp = UIActivityIndicatorView(style: .large)
sp.center = CGPoint(x: w/2, y: h/2)
sp.color = .white
sp.startAnimating()
cont.addSubview(sp)
self.spinner = sp
self.containerView = cont
self.bridge?.viewController?.view.addSubview(cont)
let player = VLCMediaPlayer()
player.delegate = self
player.drawable = cont
player.media = VLCMedia(url: url)
self.mediaPlayer = player
player.play()
call.resolve()
}
}
@objc func cerrar(_ call: CAPPluginCall) {
DispatchQueue.main.async {
self.mediaPlayer?.stop()
self.mediaPlayer = nil
self.spinner?.stopAnimating()
self.spinner?.removeFromSuperview()
self.spinner = nil
self.containerView?.removeFromSuperview()
self.containerView = nil
call.resolve()
}
}
public func mediaPlayerStateChanged(_ aNotification: Notification!) {
guard let player = mediaPlayer,
player.state == .playing,
let sp = spinner else { return }
DispatchQueue.main.async {
sp.stopAnimating()
sp.removeFromSuperview()
self.spinner = nil
}
}
}
In the Angular project, I’m using the plugin by manually registering it with registerPlugin from @capacitor/core. Specifically, in the service where I need it, I do the following:
import { registerPlugin } from '@capacitor/core';
const RtspVlcPlugin: any = registerPlugin('RtspVlcPlugin');
After this, I try to call the methods defined in the iOS plugin, like RtspVlcPlugin.iniciar({ ... }), but I get an UNIMPLEMENTED error, which suggests that the plugin is not exposing its methods properly to the Angular/Capacitor environment. That makes me believe the problem lies in how the Swift file is integrated or registered, rather than how it is used from Angular.
I’d appreciate any guidance on how to properly expose a Swift-based Capacitor plugin’s methods so that they are accessible from Angular. Is there any additional registration step or metadata I might be missing on the iOS side?
Hi,
From App analytics, we found that our app crashed from time to time on users' devices despite that we have tested it thoroughly on our devices. We are doubt that it's the reason why we can't retain them. But how can we get the crash reports for the app installed on user devices? We have no users' emails and can't ask them directly.
I'm trying to create a new build from VSC through EAS (expo) but it's failing and returning the error I'm attaching.
I'm running the command eas build --profile preview --platform ios.
I have an "App Manager" account, my colleague has the same role and he can do builds normally.
I have other permissions and accesses ok, as can be seen in the attached picture, but apparently I have the issue in "register bundle identifier".
Does anyone faced the same issue? How can I solve this?
What step I'm missing?
Thanks in advance!
Hi,
I am trying to bring an existing Unity app to vision pro, and am trying to make all of the librairies compatible (the project loads native libs at runtime).
For some of them, there is an arm64 IOS .framework file that seems to build and be found easily in the device, but for one of them I only got a .dylib.
When building on xcode, it tells me it can't find it. So I added it to the lib search path in build settings, and it built. But on the device, it still can't seem to find the .dylib :
Library not loaded: ./libpdfium.dylib
Referenced from: <59B1ACCC-FFFD-3448-B03D-69AE95604C77> /private/var/containers/Bundle/Application/0606D884-CB09-44CA-8E4F-4A309D2E7053/[...].app/Frameworks/UnityFramework.framework/UnityFramework
Reason: tried: '/usr/lib/system/introspection/libpdfium.dylib' (no such file, not in dyld cache), './libpdfium.dylib' (no such file), '/usr/lib/system/introspection/libpdfium.dylib' (no such file, not in dyld cache), '//libpdfium.dylib' (no such file)
I am not used to Apple environment, is there a way to correctly reference this .dylib (not talking about compatibility here, just the first "lib found" step) ?
Thanks.
Topic:
Developer Tools & Services
SubTopic:
General
Tags:
Linker
Apple Unity Plug-Ins
visionOS
iPad and iOS apps on visionOS
Hi,
I have an installer package that runs a postinstall script. The script can take a long time to complete, as one thing it does is copy about 10-30 GB of files using the rsync tool.
We noticed on macOS 15 that the installer would fail almost exactly 10 minutes after it started. Looking in the /var/log/install.log, I see a message like this:
2025-07-01 12:54:32-07 Work-M1 package_script_service[21562]: PackageKit: Terminating PKInstallTask(pid:21573). Task has exceeded its 600 seconds of runtime.
This does not happen in my testing on macOS 12 (Monterey)
I have a few questions about this:
A) Is this documented, and which OS introduced this?
B) Is there a way a developer can extend or disable the time limit via a setting in the installer package. Or if not, is there a way end end user can disable it temporarily on their system?
Thanks, Andrew
Topic:
Developer Tools & Services
SubTopic:
General
I am building an iOS app with the App ID: com.echo.eyes.app
I have a paid Apple Developer membership and have followed all correct procedures, including:
Adding com.apple.developer.speech-recognition manually to the App.entitlements file
Setting Info.plist keys for microphone and speech permissions
Assigning my Apple Developer Team to the project
Setting App/App.entitlements under Code Signing Entitlements
Despite all this, Xcode automatic signing fails, and I receive the error:
vbnet
Copy
Edit
Provisioning profile 'iOS Team Provisioning Profile: com.echo.eyes.app' doesn't include the com.apple.developer.speech-recognition entitlement.
I am unable to add the entitlement via the Capabilities section, and no method I try will allow provisioning to succeed.
Please update this App ID to include the required entitlement in the provisioning profile. This issue is preventing all voice recognition functionality.
Thank you.
Is anyone seeing flaky results when using parameterized test with pairs of (input, result) data?
I have several (5) tests for a given method. I create a zip sequence by zip([in1, in2, in3, in4, in5],[out1, out2, out3, out4, out5])
Sometimes, the test only runs 4 of the tests and fails to report a failure even though I deliberately place data that should cause a failure.
Sometimes, even though I only select one test to run, the test explorer goes crazy into a loop and I have to clear test results to get it to stop. Following a suggestion, I disabled running tests in parallel.
Xcode 16.2 / OSX 14.7 (Sonoma) / Mac mini M2 Pro
My App cordova based hubrid app , which work fine till ios-17,
On iOS 18 , it shows blank screen untill the user touch or scroll the view
Topic:
Developer Tools & Services
SubTopic:
General
We are considering the development of a new service, We would like to ask for detailed information on the feasibility of the following.
Is it possible to encapsulate only xcframework, such as encapsulating xcframeworkA into xcframeworkB? If the above is possible, will the application incorporating the xcframework in the above state pass the review of apple?
We are trying to setup Apple Unity Plugins, in out project we have a handful of developers who contribute to the project via git.
When building and importing plugins via tarball (as instructed in the Github repo) the package clearly points to local path, so once pushed all members encounter the error:
An error occurred while resolving packages:
Project has invalid dependencies:
com.apple.unityplugin.accessibility: Tarball package [com.apple.unityplugin.accessibility] cannot be found at path .....
When trying to actually move content to the package folder (same way as any other unity plugins is setup) and add it as "embedded", it works fine on local machine, but team members will get a few of errors:
[Apple Unity Plug-ins] No Apple native plug-in libraries found.
DLLNotFoundException: AppleCoreNativeMac assembly ...
No Apple Native plug-in libraries found.
Moreover AppleCoreNativeMac.bundle is flag as not verified and deleted by macOS.
What is the right way to setup unity plugins in a project used by multiple members via sourcetree ?
Hi, I have an iOS project with the following app targets:
main iOS application
a notification service extension
5 static libs containing some swift files with public methods
1 dynamic framework with above static libs as dependencies.
The framework only contains 2 files - a default .h file and 1 .exp file. This exports file contains mangled-names of all the public methods that are exposed by the 5 static libs present as framework's dependencies. I obtained these symbols using the nm command for each static lib.
The main iOS app target has 2 dependencies - the framework and the notification extension.
The notification extension only depends on the framework.
This setup works perfectly fine. I wanted to understand:
If using the exports file is the only way to make this setup work?
If not, what else can I do?
What way does Apple recommend?
According to my requirements, I only need at-most 2-3 functions to be exposed by the framework - thus using a exports file just for that seems to bug me.
Thank you.
Hi everyone,
after enabling CloudKit in my project, my app started showing conflicts between MusicKit and CloudKit entitlements — and now Xcode is failing to generate the provisioning profile entirely.
Current issue (Signing / Provisioning Profile Failure)
Xcode shows this error:
“Provisioning profile ‘iOS Team Provisioning Profile: team8.groovefy.dev’ doesn’t include the entitlements:
com.apple.developer.media-library,
com.apple.developer.music-user-token,
com.apple.developer.musickit,
com.apple.developer.playable-content,
com.apple.security.exception.mach-lookup.global-name”
Automatic signing fails, and Xcode cannot create or update the provisioning profile.
This started right after CloudKit was enabled in the project.
Context
Before enabling CloudKit, MusicKit worked normally, including Apple Music authentication and playlist creation.
After activating CloudKit capabilities:
MusicKit stopped generating the Apple Music user token
Playlist creation broke
Now the provisioning profile cannot be rebuilt because the required MusicKit-related entitlements are no longer included
Even after removing CloudKit entirely, the issue persists — as if the App ID or entitlements on the server side became inconsistent or corrupted.
I already tried:
Recreating App Identifier
Recreating provisioning profiles
Resetting capabilities
Cleaning and reinitializing the Xcode project settings
But Xcode still refuses to generate a valid provisioning profile that includes the MusicKit entitlements.
Summary
Enabling CloudKit caused MusicKit entitlements to collide, and now the provisioning profile no longer includes the required MusicKit entitlements — preventing the app from signing, running, or creating playlists.
If anyone has faced this type of entitlements/provisioning corruption or knows how to reset the App ID entitlements on Apple’s side, any help would be greatly appreciated.
How do I support both Liquid Glass app icon for devices running iOS 26 and a regular app icon for devices running iOS18?
Topic:
Developer Tools & Services
SubTopic:
General
I’m using iOS 26 right now, can’t go back to iOS 18 cuz I did not backup and my phone is so laggy right now i cant even turn off developer mode help me please
Topic:
Developer Tools & Services
SubTopic:
General