Apple Developers

RSS for tag

This is a dedicated space for developers to connect, share ideas, collaborate, and ask questions. Introduce yourself, network with other developers, and foster a supportive community.

Learn More

Posts under Apple Developers subtopic

Post

Replies

Boosts

Views

Activity

Getting GTK auto complete/syntax highlighting to work on emacs on macOS
I recently wrote an article on getting gtk auto complete/syntax highlighting on macOS its a genuinely fun hobby to make portable software, and this method will ultimately help in porting software to the macOS platform a copy and paste: before I continue, I want to mention that emacs auto completion, using company-mode, is rather slow when it comes to parsing a ton files, and in some configurations, especially recursively when it comes to parsing and displaying functions and macros, even when using the semantic auto complete system, but I do believe it speeds up when you initially parse and save to ctags or when you build a semanticdb, functions such as g_signal_connect() and macros such as G_APPLICATION however, did not work with company modes auto complete, but worked with flycheck on the fly syntax checking, using this method, and I haven’t had time to perfect an emacs configuration; maybe some time next week you will need gtk installed from brew or ports, since gtk has trouble compiling from source on some Mac configurations. this method works with whatever version of gtk is reported by pkg-config –cflags (pkg-config --cflags gtk. you will also need pkg-config installed, multiple installations of gtk can be used and utilized but the emacs plugins you’ll need are (and you’ll need to connect to Melpa using list-packages https://melpa.org/#/getting-started to have these automatically downloaded and configured): company company-c-headers flycheck flycheck-pkg-config exec-path-from-shell (this allows x11emacs to read the shells configuration, may be option for terminal based emac uses) optional: function-args-mode, but when fa-show-auto is used, it breaks themes in emacs download all of them through M-x list-packages (which means pressing alt+x, macOS option+x, which should issue an input on the bottom of emacs, where the status bar is), after that, type list-packages or use auto completion, aka ctrl+tab to cycle through possible candidates open a c file (C-f ~/test.c) (which is control+x, macOS control+x) type in: M-x semantic-mode M-x semantic-customize-system-include-path in semantic-customize-system-include-path, add the path to the gtk version you intend to develop for, in my case /opt/homebrew/Cellar/gtk4/4.16.12/include/gtk-4.0 using the text based interface; you should be able to use your mouse (click ins after where it says /usr/include. semantic is included in emacs. options are automatically saved at command) M-x exec-path-from-shell-initialize M-x flycheck-mode M-x flycheck-pkg-config in flycheck-pkg-config, press enter, and then type the name of the version of gtk that provides valid input from pkg-config (ie gtk4) M-x global-company-mode if you need to bind ctrl+tab to auto complete, you can add this to your config (~/.emacs.d/init.el) (global-set-key (kbd “C-”) ‘company-semantic) this will do most of the grunt work when plugins are installed (ctrl-tab shows a window to auto complete, ctrl+` (thats the key before 1, with shift it becomes ~) shows function argument. fa-show-auto automatically shows function prototypes, but can break emacs themes: (require ‘package) (add-to-list ‘package-archives ‘(“melpa” . “https://melpa.org/packages/”) t) ;; Comment/uncomment this line to enable MELPA Stable if desired. See package-archive-priorities ;; and package-pinned-packages. Most users will not need or want to do this. ;;(add-to-list ‘package-archives ‘(“melpa-stable” . “https://stable.melpa.org/packages/”) t) (package-initialize) (global-company-mode t) (global-flycheck-mode t) (semantic-mode t) (function-args-mode) (global-company-mode t) (global-flycheck-mode t) (semantic-mode t) (function-args-mode) (global-set-key (kbd “C-”) ‘company-semantic) (global-set-key (kbd “C-`”) ‘fa-show) if you need to compile from inside emacs, I would make a Makefile according to the gtk tutorial on gtk.org I also have another article on getting Xcode to work with gtk, which is more reliable: https://unix-world.com/2025/01/25/getting-gtk4-to-work-in-xcode-with-auto-complete-and-syntax-highlighting/ website is unix-world.com and I welcome any and all traffic !
0
0
325
Feb ’25
How to use donated users in your application and display Siri recommended users in Safari's system sharing
The following is my code, which runs successfully and is recommended to succeed, but it still does not show Siri's suggestion to users in the system sharing in Safari import AppIntents import Contacts import CoreSpotlight import Intents import UIKit class TestViewController: UIViewController { override func viewDidLoad() { super.viewDidLoad() self.view.backgroundColor = UIColor.white DispatchQueue.global().async { self.donateMessageInteraction(recipientName: "张三", phoneNumber: "+8613812345678") } } func donateMessageInteraction(recipientName: String, phoneNumber: String) { INPreferences.requestSiriAuthorization { status in guard status == .authorized else { return } // 1. 创建接收者 let recipientHandle = INPersonHandle(value: phoneNumber, type: .phoneNumber) let recipient = INPerson( personHandle: recipientHandle, nameComponents: nil, displayName: recipientName, image: nil, contactIdentifier: nil, customIdentifier: "com.yourapp.recipient.\(phoneNumber)" ) // 2. 创建发送者(你的应用身份) let senderHandle = INPersonHandle(value: "15210639372@163.com", type: .emailAddress) let sender = INPerson( personHandle: senderHandle, nameComponents: nil, displayName: "我的应用", image: nil, contactIdentifier: nil, customIdentifier: "com.yourapp.sender" ) // 3. 创建消息意图 let intent = INSendMessageIntent( recipients: [recipient], outgoingMessageType: .outgoingMessageText, content: "最近怎么样?", // 常用消息内容 speakableGroupName: nil, // 群组名称(一对一设为nil) conversationIdentifier: "com.yourapp.conversation.\(phoneNumber)", // 唯一会话ID serviceName: "My Chat Service", // 你的消息服务名称 sender: sender, // 发送者身份 attachments: nil ) // 4. 配置意图参数 intent.setImage(INImage(named: "user0"), forParameterNamed: \.sender) // 5. 创建并捐赠交互 let interaction = INInteraction(intent: intent, response: nil) interaction.direction = .outgoing interaction.donate { error in error.map { print("捐赠失败: \($0)") } } print("捐赠代码执行完成") } } }
0
0
379
Feb ’25
App Store Server Notification implementation in multiple environments
Hey everyone, We're looking for the best way to handle App Store Server Notifications in our development setup and would appreciate some guidance. Our Setup: We use a single App Store Connect account for development, which supports multiple environments (e.g., staging1, staging2). Our production app lives in a separate account, so that's not an issue. The Challenge: We have only one configurable sandbox notification URL. This makes it difficult to route notifications to the correct development server (staging1 vs. staging2 vs development) when a sandbox event occurs. We're considering using a proxy server to catch all notifications and then forward them to the appropriate environment. However, we're not sure how to determine the correct destination. Our Questions: What's the recommended approach for managing a single sandbox notification URL across multiple development environments? If a proxy is the best method, which parameter in the responseBodyV2 payload should we use to route the notification? How can we differentiate between our various dev environments? Is it possible to add custom properties to the App Store Server Notification V2 body to facilitate routing? Any advice or best practices you've implemented would be greatly appreciated. Thanks!
0
0
125
Jul ’25
Apple Enrolment Program
Hi team, I am trying to enroll my company, in the Apple Developer Program - I am repeatedly receiving a rejection from Apple’s system. It shows in review and when I continue to enrollment, nothing happens. It submits as a new request. I have: ✅ Verified my business name and address with D&B (matches exactly). ✅ Checked that my business is a legal entity (LLP). ✅ Ensured all details match across D&B, UPIK, and Apple’s lookup tool. ✅ Attempted re-submission multiple times without success. However, despite these steps, I am still unable to proceed. Please help.
0
1
287
Feb ’25
IOS 26 Developer Beta 3
This is my first problem and my first question hopefully somebody can help or give me some suggestions. I was in the developr beta of IOS 26 build(235260n) for a while I haven't updated it since the new beat has came out, beta 3. I have been trying to update requested, after about 20 seconds it goes away but does not start the download the update. The problem also begins to download something into the system beta goes from 22.85 GB to 33.78 GB. It just holds the update but doesn't;t update the phone. I have tried power cycling the device and everytime I do that it just resets the system data and allows up to try the update again. Unsure what to do and don't know if I would need to wait for the public beta for IOS26 to change anything on the device. Please let me know if you guys have any more suggestions what should be the next step. I also was unsure if I should backup the device and reinstall it to make sure that its not something with the conncetion.
0
1
138
Jul ’25
Unable to update to the beta version of iPadOS26.
現在公開されているiPad OS26のベータ版にアップデートしてみましたが、 iPadのストレージ容量が不足しているため、更新できないようです。 スペースを解放する以外に更新する方法はありますか? モデル:iPad 8 ストレージ:18GB / 32GB iPad OS26へのアップデート方法について、ストレージスペースを空ける以外の情報をお持ちの方がいらっしゃいましたら、教えていただければ幸いです。
0
0
38
Jul ’25
How to change the main account of our App in our closed account.
Hello, our account was closed months ago. I have made a great effort to get a response by filling out all the forms, especially Apple Turkey, but months have passed and I have not reached a conclusion. We created a developer account and opened a developer account for our company with the help of duns. After opening the account, we published our application and suddenly our developer account was closed. Since our developer account was our main account, we could not fully control our application. We would like to know why the closed account was closed, how we can change our main account using our company information or how to open our closed account. We really wasted a lot of time with developer support and turkey support team and got no help! How can we solve this problem?
0
0
88
Jul ’25
AirDrop fails with cpio error
Frequently, when transferring large files using AirDrop, it will suddenly fail mid-transfer. Looking into the macOS logs reveals the fault: error 19:45:25.701432-0700 sharingd SDAirDropFileZipper: bomCopierFatalErrorPtr - cpio read error: bad file format error 19:45:25.701517-0700 sharingd SDAirDropCompressor: CFWriteStreamWrite returned -1 default 19:45:25.701533-0700 sharingd Zipper Update: Error Domain=NSPOSIXErrorDomain Code=5 "Input/output error" UserInfo={NSLocalizedDescription=cpio read error: bad file format} default 19:45:25.706094-0700 sharingd Closing output stream default 19:45:25.707901-0700 sharingd Invalidating XPC helper for macOS downloads directory error 19:45:25.708039-0700 sharingd Decompression failed Error Domain=NSPOSIXErrorDomain Code=5 "Input/output error" UserInfo={NSLocalizedDescription=cpio read error: bad file format}
0
0
464
Jul ’25
iOS 26 Beta 2 replaces iOS 18.4 Backup
After too many boot loops and inability to boot up at all from system data bloating, I decided to restore the iPhone 16 Pro Max I’m beta testing on back to iOS 18.4 for a third time. Unfortunately, I found the iOS 26 beta 2 had made a iCloud backup last night, replacing my 18.4 backup. Is this something betas are supposed to do? I’ve been beta testing for around a decade now, I’ve never seen a iOS beta make an iCloud backup. Is anyone else noticing excessive system data bloating (70-100 GB or more)? Regardless, I’m in it for the long game now 😂
0
0
128
Jul ’25
How to disable auto restart on iOS 18
I have an iPhone 12 mini and I am currently using it as a modem for my router. Previously it was running iOS 14, but the DHCP on iOS 14 doesn't work and Apple didn't fix it until iOS 15. Recently I upgraded the system to iOS 18.4 to get DHCP back, but I got a bigger problem. The iPhone will restart itself after 3 days, and then I just lost internet connection. The hotspot will not be turned on until I climbed on my bookshelf to unlock my phone. After I googled it, I found that it is a feature that Apple introduced in iOS 18.1. While I couldn't find any setting to turn it off. If this cannot be controlled by the user, then it is anyway a BUG than a feature.
0
0
93
Apr ’25
Porting Games Over to Apple Arcade
Hi all, I'm working for a publisher, and we're looking to bring some of our PC/console titles over to Apple Arcade - how viable is this? Is Unity or Unreal Engine easier to port from? Does anyone have any contacts with porting studios who have done this before? Thanks
0
0
50
Apr ’25
Personal Voice fails to complete
I have an iPhone 14 running iOS 26 Beta 2 that I wanted to start using Personal Voice on. It allowed me to complete the recordings and start the process, however even with the phone charging and locked the process hangs. It is connected to WiFi and cellular while attempting to run. It is connected to a 20W apple charger with an offical cable. I have a sneaking feeling it's related to me running the iOS beta on this device. I've provided some info below. iOS 26 Beta 2 iPhone 14 128gb Model MPUF3ZD/A No SIM restrictions
0
0
47
Jun ’25
Apple JS SDK: invalid_client error with new Service IDs in AppleID.auth.signIn()
We’re integrating Sign in with Apple using Apple’s official JavaScript SDK: https://appleid.cdn-apple.com/appleauth/static/jsapi/appleid/1/en_US/appleid.auth.js We’ve successfully used this setup with an older Service ID, but when we try to use any newly created Service ID, we get the following error immediately when calling AppleID.auth.signIn(): invalid_client This happens before any request reaches our backend. The same flow, redirect URI, and frontend code works fine with an old Service ID — but fails with new ones. ✅ What We’ve Verified: The Service ID (e.g., com.projectx.web.login) is created under Apple Developer → Identifiers → Service IDs The redirect URI is correct and matches exactly (HTTPS, no trailing slash) No client_secret is passed in the frontend (by design) We’re using usePopup: true ❌ What Doesn’t Work: Any new Service ID we create — even on the same domain and configuration — fails with invalid_client. 🔁 What We’ve Tried: Creating multiple new Service IDs Waiting 48+ hours in case of propagation delays Validating HTTPS and redirect URI setup Comparing all settings with the working (older) Service ID (which we deleted since we thought that was causing a problem) Testing in different environments and browsers ❓ Questions: Why do newly created Service IDs fail with invalid_client while older ones work? Are there undocumented requirements, propagation delays, or steps for new Service IDs to become active? Is this a known limitation or bug in the SDK? 💻 Our Code: import { useEffect } from "react"; import { Button, Box } from "@mui/material"; import api from "../utils/api"; // Axios wrapper import AppleIcon from "@mui/icons-material/Apple"; import MainAuthStyles from "../pages/MainAuthStyles"; import { useUser } from "../../../user-module/src/contexts/UserContext"; import { useNavigate } from "react-router-dom"; // Apple global type declare global { interface Window { AppleID: any; } } type AppleSignInButtonProps = { setApiError: (msg: string) => void; }; const AppleLogInButton = ({ setApiError }: AppleSignInButtonProps) => { const { user, setUser } = useUser(); const navigate = useNavigate(); useEffect(() => { if (!window.AppleID) return; window.AppleID.auth.init({ clientId: import.meta.env.VITE_APPLE_CLIENT_ID, scope: "name email", redirectURI: import.meta.env.VITE_APPLE_REDIRECT_URI, usePopup: true, }); }, []); const handleAppleLogin = async () => { try { const response = await window.AppleID.auth.signIn(); const { id_token, code, user } = response.authorization; const res = await api.post("/auth/apple-login", { idToken: id_token, code, user, rememberMe: true, }); if (res.data.success == true && res.data.user.userDataInitialised == true ) { setUser({ id: res.data.user.id ? res.data.user.id : '', fullName: res.data.user.fullName ? res.data.user.fullName : '', email: res.data.user.email ? res.data.user.email : '', role: res.data.user.role ? res.data.user.role : '', signUpType: res.data.user.signUpType ? res.data.user.signUpType : '', userDataInitialised: res.data.user.userDataInitialised ? res.data.user.userDataInitialised : false, }); localStorage.setItem("accessToken", res.data.accessToken); localStorage.setItem("refreshToken", res.data.refreshToken); navigate("/app") } else { setApiError("Unrecognized login method") return; } } catch (err) { console.error("Apple Sign-In failed", err); setApiError("AppleSignInFailed"); } }; return ( <Box mt={2}> <Button variant="outlined" fullWidth onClick={handleAppleLogin} className="AuthAppleButton" startIcon={<AppleIcon />} > Log in with Apple </Button> </Box> ); }; export default AppleLogInButton; Any help from the Apple team or anyone who's resolved this issue would be appreciated — we’re currently blocked on deploying new environments due to this error. Thanks!
0
1
125
Jun ’25
Apple Sign In Issues using Firebase on Flutter App
We are currently facing an issue with implementing "Sign in with Apple" in our iOS application built using Flutter. We've implemented "Sign in with Apple" using Firebase and On attempting to sign in, we are encountering the following error: “Sign-up not completed.” We have verified that: The Apple Sign is enabled on our Firebase Project. The Sign in with Apple capability is enabled in the Xcode project. The Apple Sign-In capability is enabled for the App ID on our Apple Developer account. All the certificates were re-provisioned after enabling the capability. The Bundle ID matches across Apple Developer portal and our app configuration. The email and fullName scopes are requested in the credential. Please let us know if you require any additional information. We’re happy to provide whatever is needed. Here's a screenshot attached to explain the problem better
0
1
149
Jun ’25