Overview

Post

Replies

Boosts

Views

Activity

My app crashes on startup in iOS 26
I have an app with a small but devoted following. It has not been upgraded since 2022 and has been working very well. On iOS 26 it crashes almost at startup. After hooking up to Xcode and running I get this message in the console: objc[64686]: Class PSSegment is implemented in both /System/Library/PrivateFrameworks/PolarisGraph.framework/PolarisGraph (0x291ed9f78) and /private/var/containers/Bundle/Application/08486FCF-548A-467C-8BA3-D722734463FC/HikeTracker.app/HikeTracker.debug.dylib (0x101d309e8). This may cause spurious casting failures and mysterious crashes. One of the duplicates must be removed or renamed. PSSegment is the name of an entity in my Core Data managed object model. If I refactor it to P_Segment the app starts. PolarisGraph means nothing to me. The "PS" stands for Persistent Store, but in this case it seems that PolarisGraph is PSing in my sandbox. How can this happen? I'll attach the longer message that comes with the crash. error messages.txt
0
0
1
2m
Incorrect, or missing copyright date-> using a copyright date that is any different from this current year, or missing a date
What am I missing here? 😐 Prepare all required actions Run ./.github/actions/verify-copyright Run echo "📋 Checking copyright file..." 📋 Checking copyright file... ✅ Copyright file exists at: fastlane/metadata/en-US/copyright.txt 📝 Copyright value: © 2025 Enterprise Support ✅ Copyright format valid: © 2025 Enterprise Support ✅ Copyright metadata validation passed
0
0
8
52m
HidHide on MacOS
I was wondering if there's a method on MacOS to have my application hide a hid device such as a game controller and instead have the receiving game/application see my app's virtual controller? Is this possible via DriverKit or some other form of kernel level coding? On Windows we have a tool known as HidHide that hids a game controller from all other applications. Is it possible to implement such behavior into an app or is that system level?
1
0
15
2h
Experience feedback after an App Store rejection (Guideline 4.3 – Design: Spam)
Hi everyone, my name is Donovan, I am sharing here the official response I received from Apple following my appeal with App Review Board (image attached). For context, I am an independent developer and a student, working alone. This application was originally created as a student project, with a very simple goal: to improve my skills in mobile application development and to understand the entire creation cycle, from the initial idea to a genuinely usable application. What was meant to be an exercise gradually became a real product. Over time, many people tested the project, used it, provided positive feedback, and encouraged me to take it all the way. That is why I decided to continue it, structure it properly, and finalize it with the level of seriousness expected from a public-facing application. Today, the application is a dating and social connection app, entirely free, with no blocking paid features, funded only by light and optional advertising. It follows the rules, works correctly, and offers features that Apple itself acknowledged as useful and informative. And yet, after review, the message is clear: it is not the quality that is being questioned, but the category. Because it is a dating app, a category considered saturated, two years of independent, self-funded work, carried out seriously and in compliance with the rules, can simply be dismissed. What is being judged here is not the work itself. It is the right to enter. The “unique and very high-quality experience” being required appears to be a threshold reserved for those who are already established, visible, or funded. For a serious student project carried by a single developer, the door remains closed, cleanly, politely, definitively. For those who still wish to see what the application looks like, I have attached a few images illustrating the interface and the main features. Unfortunately, this will likely be the only way to discover it on iOS. Under these conditions, the conclusion is pragmatic. Rather than continuing to defend the very existence of an honest and free project, it becomes more coherent to invest my energy where it is genuinely accepted. On its side, Android validated the project without difficulty. It still allows an independent developer to propose an idea, let it evolve, and bring it to completion without requiring prior success just to earn the right to try. It is therefore very likely that these two years of development will never make it to the App Store. Not out of frustration. Out of clarity. I am publishing this message not to provoke, but to inform other independent developers: Apple is a remarkable platform, provided you are already established on it. And this is a reality worth knowing before turning a student project into a life project. Screenshots:
0
0
14
2h
How to install cocoapods and pod
Hi, I am developing IOS(Android App) with React Native. I am very confused about cocoapods and pod and how to correctly install it on my new Macbook Pro M4. I am not using bash but I am using zsh. Note, actuallywhich pod return nothing During the preparation of my environment, it say CocoaPods is one of the dependency management system available for iOS. CocoaPods is a Ruby gem. You can install CocoaPods using the version of Ruby that ships with the latest version of macOS. the web site show two commands gem install cocoapods sudo gem install cocoapods I saw another command as well brew install cocoapods During different processes, I experienced several time the following error (Command 'pod install failed) Command pod install failed. └─ Cause: pod install --repo-update --ansi exited with non-zero code: 1 Then I am confused about cocoapods and pod. Are both he same? With my previous MacBook pro, I spend time to install cocoapod on my profile because Ruby was not the latest version on the system. But apparently, on my new Macbook Pro M4, the command ruby -v return (as well) ruby 2.6.10p210 (2022-04-12 revision 67958) [universal.arm64e-darwin25] The current stable version is 4.0.0. I bought a new macbook pro M4 and I reinstalled node and all package for Rect Native 0.81 a expo 54 excepted cocoapods. Now, I need to configure the push notification and it's time to install cocoapods as it's require here But on my new macbook pro, I would like to make sure I do it correctly and I kindly ask your help and recommandation to install Ruby and cocoapods/pod Q1: Should I install cocoapods with brew install cocoapods or gem install cocoapods? Q2: what's is the difference or the common point with cocoapods and pod? Cocoapod web site said If using the default Ruby included with macOS, installation will require you to use sudo when installing gems As ruby -v print 'ruby 2.6.10p210', I suppose, I should not install cocoapod with sudo You can use a Ruby Version manager such as RVM or rbenv to manage multiple Ruby versions, or you can use Homebrew to install a newer Ruby with brew install ruby. As far I understand, I should not install cocoapods with the Ruby version of the system, then I suppose the command Q3: Will 'brew install cocopads' install the latest version on my profile? Will it upgrade the system version Q4: What will do the command brew install rbenv ruby-build rbenv install 3.2.2 (or better: rbenv install 4.0.0) in comparison with brew install ruby My guess I suppose that the following will help, but it would nice if you could correct me and clarify # All should be done in my profile brew install rbenv ruby-build echo 'eval "$(rbenv init - bash)"' >> ~/.zprofile source ~/.zprofile rbenv install 4.0.0 # rbenv global 4.0.0 # What is it? ruby -v gem install cocoapods Q5: But then, what about pod and the error message Command pod install failed. As you can see, I am a bit confused and I would appreciate your clarification I thanks you for your help and clarification and I wish you a happy new years
0
0
21
3h
App rejected under 4.3(a) “Design – Spam”, need clarification
Hello everyone, My app has been rejected under guideline 4.3(a) – Design – Spam. It is a padel sports-tracking app with: – Bluetooth sensor connection – live session tracking – AI-generated coaching feedback – community feed and notifications – video analysis features The review states that my app “shares a similar binary, metadata and/or concept as other apps with only minor differences”. However, this app is fully custom developed, not generated from any template, and not a reskinned clone. It is part of a larger project including custom hardware sensors and backend. I would like to better understand what exactly triggered the rejection: – Is it the design? – A specific feature? – The metadata / screenshots? – Or similarity detection with another app name or concept? My goal is to comply fully with Apple guidelines and improve the app if needed, but I need more concrete direction to do so. Any guidance from Apple engineers or other developers who have faced 4.3(a) would be appreciated. Thank you in advance 🙏
1
0
19
2h
Defining a Foundation Models Tool with arguments determined at runtime
I'm experimenting with Foundation Models and I'm trying to understand how to define a Tool whose input argument is defined at runtime. Specifically, I want a Tool that takes a single String parameter that can only take certain values defined at runtime. I think my question is basically the same as this one: https://developer.apple.com/forums/thread/793471 However, the answer provided by the engineer doesn't actually demonstrate how to create the GenerationSchema. Trying to piece things together from the documentation that the engineer linked to, I came up with this: let citiesDefinedAtRuntime = ["London", "New York", "Paris"] let citySchema = DynamicGenerationSchema( name: "CityList", properties: [ DynamicGenerationSchema.Property( name: "city", schema: DynamicGenerationSchema( name: "city", anyOf: citiesDefinedAtRuntime ) ) ] ) let generationSchema = try GenerationSchema(root: citySchema, dependencies: []) let tools = [CityInfo(parameters: generationSchema)] let session = LanguageModelSession(tools: tools, instructions: "...") With the CityInfo Tool defined like this: struct CityInfo: Tool { let name: String = "getCityInfo" let description: String = "Get information about a city." let parameters: GenerationSchema func call(arguments: GeneratedContent) throws -> String { let cityName = try arguments.value(String.self, forProperty: "city") print("Requested info about \(cityName)") let cityInfo = getCityInfo(for: cityName) return cityInfo } func getCityInfo(for city: String) -> String { // some backend that provides the info } } This compiles and usually seems to work. However, sometimes the model will try to request info about a city that is not in citiesDefinedAtRuntime. For example, if I prompt the model with "I want to travel to Tokyo in Japan, can you tell me about this city?", the model will try to request info about Tokyo, even though this is not in the citiesDefinedAtRuntime array. My understanding is that this should not be possible – constrained generation should only allow the LLM to generate an input argument from the list of cities defined in the schema. Am I missing something here or overcomplicating things? What's the correct way to make sure the LLM can only call a Tool with an input parameter from a set of possible values defined at runtime? Many thanks!
0
0
46
6h
Building a Full Space app that enables sharing a visionOS experience with nearby users.
Hello, I am currently considering developing a Full Space app that enables a shared visionOS experience with nearby users. Intended Features A Mixed Full Space app in which dozens of 3D models are placed in the space. These 3D models may play embedded animations when tapped, be programmatically moved or rotated, or be controlled via Reality Composer Pro timelines. The app also includes audio, spatial audio, videos with audio, and videos without audio, which are rendered as VideoTextures on planes and played back in the space. Some media elements play automatically, while others are triggered by user interaction. However, it is unclear whether AVPlaybackCoordinator supports shared playback across multiple types of media, such as: audio only spatial audio video without audio video with audio I am also unsure whether there are alternative or recommended approaches for synchronizing playback in this scenario. Questions Is it technically possible to implement the experience described above using visionOS? Are there any important implementation considerations or limitations that should be taken into account? For example, when two participants experience the app simultaneously, how is the content positioned for each participant? Is the spatial placement of content shared across participants, or is it positioned relative to each participant’s viewpoint? For nearby participants, is it necessary to register a spatial Persona? My understanding is that spatial Personas are not visible for nearby users during the experience; is this correct? When experiencing SharePlay with nearby users, is it possible to share the experience without registering the other participant’s contact information? I have watched the following session, but I was unable to fully understand the feasibility of the above use case or the concrete implementation details: https://developer.apple.com/videos/play/wwdc2025/318/ Thank you.
0
0
55
7h
Unable to enroll in Apple Developer Program - Payment declined despite bank approval (France)
Hello everyone, I am unable to enroll in the Apple Developer Program. The payment (credit card) is accepted by my bank but systematically declined by Apple. Note: I am located in France. I have tried multiple times. The support team, via email, suggested I use the Apple Developer app. However, it is "not available in my region," so I have to go through the website. No other payment method is available: Apple Pay is greyed out, and there is nothing else. Support has not responded for weeks, despite my follow-ups. I am very frustrated as I need to launch my app quickly, and everything is ready on the Google side... Would you have any suggestions or solutions? Thank you so much, your responses are greatly appreciated! Mélissa
0
0
37
3h
Use of non-public or deprecated APIs
Hello, "This issue is blocking App store approval" I have tried pushing my application to Appstore. However it has been rejected on the following ground: _"As we discussed, the app uses or references the following non-public or deprecated APIs: Frameworks/CommonLibrary.framework/CommonLibrary Symbols: • _SecCertificateIsValid The use of non-public or deprecated APIs is not permitted, as they can lead to a poor user experience should these APIs change and are otherwise not supported on Apple platforms."_ I have scanned the app using "strings" tool & "otool -ov" tool. But they have come out clean. No Non-public or deprecated APIs detected. Please advise which tool can be used to scan the CL to locate where the deprecated API or non-public API lies and also how to rectify the same. Thanks Saikat Bakshi.
0
0
19
3h
CallKit automatically shows a system top toast after iOS 26, how to dismiss it?
I’m developing an iOS app that integrates with CallKit. Starting from iOS 26, I’ve noticed that the system automatically presents a top banner / toast-style UI when a CallKit call becomes active (see attached screenshot). This UI appears to be fully managed by the system. On iOS versions prior to iOS 26, this UI did not appear under the same CallKit configuration. What I’ve observed The banner is displayed automatically by the system It appears at the top of the screen, similar to a toast or call status banner It is not a view created by my app I could not find any public API or CallKit configuration related to dismissing or controlling it My questions: Is this top banner an intended system behavior change in newer iOS versions? Is there any public API to dismiss, hide, or customize this UI? If not, is this UI considered non-dismissible by design? Any clarification on the expected behavior or recommended approach would be greatly appreciated.
Topic: UI Frameworks SubTopic: UIKit Tags:
1
0
15
3h
WKWebView + Cookie
Description: In our app, we have login page which displayed in WKWebView. In that page, there is an Remember my Device cookie option which user can select, so next time it OTP page will not be displayed. Problem Statement: Recently we found that some issue happened with this cookie. Especially, when users upgraded their OS versions to 18.6 or 26.1 or 26.2. Need to understand, any changes related to Cookie part in latest OS Versions?
Topic: Safari & Web SubTopic: General
0
0
22
3h
Guidance Request: Migrating Subscription Purchase Flow from In‑App Purchase to External Web Purchase (Education App)
We are planning to migrate our application from an iOS In‑App Purchase (IAP) subscription flow to an external web purchase flow. The intended user journey is: The user taps a “Subscribe” button in the app. The user is redirected to a web-based checkout to complete the purchase. The user returns to the app, and subscription access is unlocked based on entitlement verification from our backend. Our app is currently listed in the Education category. Before we begin this refactor, we would like confirmation on the following: Entitlements / permissions Do we need to request any specific Apple entitlements or approvals to implement this external purchase flow (e.g., external link or alternative payment related permissions)? Compliance / review requirements Are there any specific App Review compliance checks, disclosures, or review process requirements we must satisfy when moving from IAP to an external purchase flow? If relevant, are there constraints based on app category (Education) or product type (subscription)?
0
0
4
3h
Apple account stuck in pending status after migrating from an individual developer account to a company account
Apple Developer Support The situation is as follows: Recently, we upgraded from an individual developer account to a company account about 2–3 weeks ago. When it came time to renew the account, it was strange that the fee displayed was $99 instead of $299. We had no way to change this, so we proceeded with the $99 payment. After that, Apple introduced new terms and conditions. When we tried to accept them, the account status did not change at all. I clicked “Accept” many times, but it remained in pending status. When I checked the browser console (F12), I noticed that Apple was returning a 500 error, but this error was not shown anywhere in the UI. I have called and emailed Apple support many times. However, they insist that our company account is already active and that we just need to accept the terms and conditions. Unfortunately, we are unable to accept them due to the error returned by Apple’s system. I explained this to them, but they still insist that we simply follow their instructions. As a result, we are currently stuck and do not know how to proceed so that the account can be fully activated and our app can return to the Apple App Store: We accepted Apple's terms on the 22nd. Organization account with $99, unclear why: I've clicked accept many times but it didn't work (Apple error 500), and the status remains pending: Therefore, I am hoping to get help from this forum in case anyone has experienced a similar issue and found a solution.
0
1
101
16h
recent JAX versions fail on Metal
Hi, I'm not sure whether this is the appropriate forum for this topic. I just followed a link from the JAX Metal plugin page https://developer.apple.com/metal/jax/ I'm writing a Python app with JAX, and recent JAX versions fail on Metal. E.g. v0.8.2 I have to downgrade JAX pretty hard to make it work: pip install jax==0.4.35 jaxlib==0.4.35 jax-metal==0.1.1 Can we get an updated release of jax-metal that would fix this issue? Here is the error I get with JAX v0.8.2: WARNING:2025-12-26 09:55:28,117:jax._src.xla_bridge:881: Platform 'METAL' is experimental and not all JAX functionality may be correctly supported! WARNING: All log messages before absl::InitializeLog() is called are written to STDERR W0000 00:00:1766771728.118004 207582 mps_client.cc:510] WARNING: JAX Apple GPU support is experimental and not all JAX functionality is correctly supported! Metal device set to: Apple M3 Max systemMemory: 36.00 GB maxCacheSize: 13.50 GB I0000 00:00:1766771728.129886 207582 service.cc:145] XLA service 0x600001fad300 initialized for platform METAL (this does not guarantee that XLA will be used). Devices: I0000 00:00:1766771728.129893 207582 service.cc:153] StreamExecutor device (0): Metal, <undefined> I0000 00:00:1766771728.130856 207582 mps_client.cc:406] Using Simple allocator. I0000 00:00:1766771728.130864 207582 mps_client.cc:384] XLA backend will use up to 28990554112 bytes on device 0 for SimpleAllocator. Traceback (most recent call last): File "<string>", line 1, in <module> import jax; print(jax.numpy.arange(10)) ~~~~~~~~~~~~~~~~^^^^ File "/Users/florin/git/FlorinAndrei/star-cluster-simulator/.venv/lib/python3.13/site-packages/jax/_src/numpy/lax_numpy.py", line 5951, in arange return _arange(start, stop=stop, step=step, dtype=dtype, out_sharding=sharding) File "/Users/florin/git/FlorinAndrei/star-cluster-simulator/.venv/lib/python3.13/site-packages/jax/_src/numpy/lax_numpy.py", line 6012, in _arange return lax.broadcasted_iota(dtype, (size,), 0, out_sharding=out_sharding) ~~~~~~~~~~~~~~~~~~~~^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/Users/florin/git/FlorinAndrei/star-cluster-simulator/.venv/lib/python3.13/site-packages/jax/_src/lax/lax.py", line 3415, in broadcasted_iota return iota_p.bind(dtype=dtype, shape=shape, ~~~~~~~~~~~^^^^^^^^^^^^^^^^^^^^^^^^^^ dimension=dimension, sharding=out_sharding) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/Users/florin/git/FlorinAndrei/star-cluster-simulator/.venv/lib/python3.13/site-packages/jax/_src/core.py", line 633, in bind return self._true_bind(*args, **params) ~~~~~~~~~~~~~~~^^^^^^^^^^^^^^^^^ File "/Users/florin/git/FlorinAndrei/star-cluster-simulator/.venv/lib/python3.13/site-packages/jax/_src/core.py", line 649, in _true_bind return self.bind_with_trace(prev_trace, args, params) ~~~~~~~~~~~~~~~~~~~~^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/Users/florin/git/FlorinAndrei/star-cluster-simulator/.venv/lib/python3.13/site-packages/jax/_src/core.py", line 661, in bind_with_trace return trace.process_primitive(self, args, params) ~~~~~~~~~~~~~~~~~~~~~~~^^^^^^^^^^^^^^^^^^^^ File "/Users/florin/git/FlorinAndrei/star-cluster-simulator/.venv/lib/python3.13/site-packages/jax/_src/core.py", line 1210, in process_primitive return primitive.impl(*args, **params) ~~~~~~~~~~~~~~^^^^^^^^^^^^^^^^^ File "/Users/florin/git/FlorinAndrei/star-cluster-simulator/.venv/lib/python3.13/site-packages/jax/_src/dispatch.py", line 91, in apply_primitive outs = fun(*args) jax.errors.JaxRuntimeError: UNKNOWN: -:0:0: error: unknown attribute code: 22 -:0:0: note: in bytecode version 6 produced by: StableHLO_v1.13.0 -------------------- For simplicity, JAX has removed its internal frames from the traceback of the following exception. Set JAX_TRACEBACK_FILTERING=off to include these. I0000 00:00:1766771728.149951 207582 mps_client.h:209] MetalClient destroyed.
0
0
118
17h
Do you equalize your prices based on purchasing power of different countries?
I get a lot of downloads from outside USA but almost no conversion (subscription/IAP) from those countries. Apple App Store does the price conversion based on currency conversion and VAT but it does not take into account that $10 in India or Argentina is a much bigger portion of ones income compared to a US person. Converting all these prices (175 of them) manually is very cumbersome for each subscription tier and for each region.
2
2
137
17h
Too many bugs porting to iOS 26
Has anyone noticed that there are way too many bugs caused by the liquid glass issues? I'm noticing apple adding private layer classes between existing UI views to add glassy effect and no way to disable them. Some of these bugs have no way around without rewriting the code from. For example, search controller doesn't work anymore on iOS 26 but does work on iOS 18. The tab bar controller doesn't show at all on iOS 26 but does on iOS 18. I'm wondering if other people are facing the same issues.
0
0
144
20h
Pre-inference AI Safety Governor for FoundationModels (Swift, On-Device)
Greetings, and Happy Holidays, I've been building an on-device AI safety layer called Newton Engine, designed to validate prompts before they reach FoundationModels (or any LLM). Wanted to share v1.3 and get feedback from the community. The Problem Current AI safety is post-training — baked into the model, probabilistic, not auditable. When Apple Intelligence ships with FoundationModels, developers will need a way to catch unsafe prompts before inference, with deterministic results they can log and explain. What Newton Does Newton validates every prompt pre-inference and returns: Phase (0/1/7/8/9) Shape classification Confidence score Full audit trace If validation fails, generation is blocked. If it passes (Phase 9), the prompt proceeds to the model. v1.3 Detection Categories (14 total) Jailbreak / prompt injection Corrosive self-negation ("I hate myself") Hedged corrosive ("Not saying I'm worthless, but...") Emotional dependency ("You're the only one who understands") Third-person manipulation ("If you refuse, you're proving nobody cares") Logical contradictions ("Prove truth doesn't exist") Self-referential paradox ("Prove that proof is impossible") Semantic inversion ("Explain how truth can be false") Definitional impossibility ("Square circle") Delegated agency ("Decide for me") Hallucination-risk prompts ("Cite the 2025 CDC report") Unbounded recursion ("Repeat forever") Conditional unbounded ("Until you can't") Nonsense / low semantic density Test Results 94.3% catch rate on 35 adversarial test cases (33/35 passed). Architecture User Input ↓ [ Newton ] → Validates prompt, assigns Phase ↓ Phase 9? → [ FoundationModels ] → Response Phase 1/7/8? → Blocked with explanation Key Properties Deterministic (same input → same output) Fully auditable (ValidationTrace on every prompt) On-device (no network required) Native Swift / SwiftUI String Catalog localization (EN/ES/FR) FoundationModels-ready (#if canImport) Code Sample — Validation let governor = NewtonGovernor() let result = governor.validate(prompt: userInput) if result.permitted { // Proceed to FoundationModels let session = LanguageModelSession() let response = try await session.respond(to: userInput) } else { // Handle block print("Blocked: Phase \(result.phase.rawValue) — \(result.reasoning)") print(result.trace.summary) // Full audit trace } Questions for the Community Anyone else building pre-inference validation for FoundationModels? Thoughts on the Phase system (0/1/7/8/9) vs. simple pass/fail? Interest in Shape Theory classification for prompt complexity? Best practices for integrating with LanguageModelSession? Links GitHub: https://github.com/jaredlewiswechs/ada-newton Technical overview: parcri.net Happy to share more implementation details. Looking for feedback, collaborators, and anyone else thinking about deterministic AI safety on-device. parcri.net has the link :)
1
0
146
21h