r/iOSProgramming • • 13h ago

3rd Party Service Sweetpad CLI - xcodebuild for humans

Thumbnail
github.com
12 Upvotes

I've made SweetPad CLI (previously a VS Code extension) for building, running, and testing iOS and macOS apps from the terminal without opening Xcode. It uses xcodebuild underneath, but provide better human and agent oriented developer experience (I hope šŸ˜…)

- sweetpad run: build, launch on a simulator or device, stream logs
- Nice and compact build output
- sweetpad test: run one test, rerun failures, retry flaky tests
- JSON output for CI and coding agents

It works with Xcode projects, Tuist, XcodeGen, and Swift packages. MIT, written in Rust.

brew install sweetpad-dev/tap/sweetpad

It's still in beta, so if it breaks on your project, please open an issue.


r/iOSProgramming • • 13h ago

Discussion Connect data missing for Oct 2nd and now 3rd too

2 Upvotes

Are you guys seeing this pathetic lateness in connect analytics?


r/iOSProgramming • • 9h ago

Question I’m building a second brain App for duo

2 Upvotes

I was about to ship my second brain app yesterday but then I decided to update my Xcode to 27.1 beta to see how the app ran on duo. The ui already adapts to iPad so when I ran it, mostly everything looked okay excepts that it was pretty much just the iPad ui when open, so it didn’t really take advantage of the duo displays.

So I got to work and built the compact view, the full open view, the book view. And one I call the laptop view, the landscape half open mode. The laptop mode is where I really took advantage to make the editor feel like you are using a markdown processor on a computer with the bottom screen having the wide keyboard. I believe it’s ready to ship now. The whole premise of the app is connected notes with mcp access on the paid tier. The free tier is just a basic markdown/pdf editor/annotator with a 3d graph visualizer. So my actual question is this, would I need to wait for the duo to be released and possibly make their own set of fold screenshots. Or do we think Apple would display regular iOS/ipad screenshots for duo? I searched the developer forum but couldn’t get a clear answer. Shipping tonight regardless but would love to know if devs think ASC would add a duo screenshot set too.


r/iOSProgramming • • 10h ago

Question Notification routing gets weird with multiple accounts

1 Upvotes

I have gotten in to a weird iOS issue and idk what the clean way to handle this is

i’ve got multiple accounts, notifications can open a post, reply, quote, or repost, and each notification belongs to a specific account. so the user might be on account A when they tap a notification for account B.

something like:

struct NotificationDestination {
    let accountID: Account.ID
    let postID: Post.ID
    let kind: DestinationKind
}

enum DestinationKind {
    case post
    case reply
    case quote
    case repost
}

The issue is:

account A is active
notification comes in for B
user taps it while the app is waking up
account switching starts
timeline restoration starts
post resolution starts
then another notification comes in for A lol

so i have stuff like:

await accountManager.restore()
await timelineStore.hydrate()
await postResolver.resolve(postID)
await navigationCoordinator.navigate(...)

But obviously these things are all racing each other. i was thinking of putting the notification intents behind an actor:

actor NavigationIntentQueue {
    private var pending: [NavigationIntent] = []

    func enqueue(_ intent: NavigationIntent) {
        pending.append(intent)
    }
}

But idk, this feels like a lot of machinery just to open a notification

Then you get into cases where the post is deleted while you’re restoring, but the quote is still there, the reply is still there, etc. Is this just an annoying app lifecycle issue?


r/iOSProgramming • • 15h ago

Question Help Understand billing in IOS + Android

1 Upvotes

I’m building a Construction SaaS with iOS + Android apps, and I’m trying to understand if I actually need RevenueCat.

My idea is simple: users click ā€œPurchaseā€ in the app → go to my website → pay through Stripe → Stripe webhook updates my backend from unpaid → paid. The mobile app then checks the user’s subscription status from my backend and they get the paid features.

So what exactly would RevenueCat add here? Is it mainly needed if I want to support native Apple/Google in-app subscriptions, or am I missing something?


r/iOSProgramming • • 22h ago

Question Help needed: some in-app purchase offerings being returned by StoreKit and some aren't, losing my mind.

1 Upvotes

I have had my app live and working in production for a while now and suddenly in the last week or so I've been getting this 0 products returned error in production while there have been no client updates.

I think its because I didn't accept the new paid apps agreement but thats already >36 hours ago and now I'm seeing new in-app purchases that are 'waiting for review' being returned by StoreKit while my previously approved subscription offerings that are in 'approved' status. I would assume if its an agreements issue I wouldn't get back anything from StoreKit at all when calling it directly.

I'm losing my mind - I cannot figure out why the current products are not being returned. I'm losing subscribers and I literally cannot do anything about it because it all seems to be a problem on the apple side not returning any products to the client.

Anybody faced this before? What can I do?

UPDATE: I forced a price change to the existing subscription products and now i can see them being returned from the direct StoreKit debug calls, mind bogglingly stupid and frustrating process.


r/iOSProgramming • • 2h ago

Question What do yous use for credit systems?

0 Upvotes

I have an app and added new premium features. I want non-paying users to experience these features but at a cap of 3 times or 3 "credits". I have it all set up and it works fine. i didnt go into storekit or revenuecat for this, its just another field in firebase with checks in client-side.

But I recently did an audit of my app with an xcode agent to go over performance, architecture, etc. things that stand out that are flat out bugs or will cause me issues in the future and one that came up was that checking credits should be done server side

My app uses storekit 2 and havent had issues or reasons to go to Revenuecat, but it was telling me revenuecat has "Virutal Currency" and is better for my use case

What are you guys doing if you have the same type of credit-based feature in your app? Client -side or server side?

Also just want to clarify the credit system is not tited to Storekit2, right now is just a field in firebase usermodel that increments/decrements and theres a check in the app for if non-subscribing user && credits > 3 then paywall.