#iosDev
I am so impressed with how easy it is to deploy updates to TestFlight with Xcode Cloud. I’ve worked the day job today (not iOS), and within 60 minutes of finishing work I’d deployed two updates to my app. Ok, one was a bug fix for my aforementioned GRDB brain fart, but still!
Two updates to my device within 60 minutes. Amazing!
Check out this week’s featured jobs from iOS Dev Jobs.
https://iosdevweekly.com/issues/628#jobs
#Swift #SwiftLang #iOSDev #MacDev #iOSDevJobs #SwiftJobs #SwiftLangJobs
Xcode projects and project generation unlocked the power for tools like @cocoapods and Tuist to tackle large-scale challenges faced by organizations. But despite our hopes, Xcode's integration with Swift Package Manager didn't bring the desired extensibility to the build system. Instead, it left organizations heavily reliant on Apple, especially when it comes to tackling pressing issues like build times that have long been neglected.
#iOSDev #Xcode #Swift
Mastering charts in SwiftUI. Pie and Donut charts. | Swift with Majid @Mecid
https://swiftwithmajid.com/2023/09/26/mastering-charts-in-swiftui-pie-and-donut-charts/
I had @switchbuddy just freeze with 0% CPU usage for a few times in the past week + reports from users.
Thought it was my issue, but seems to be Sentry 😱
If you use Sentry SDK in your project, make sure to update!

✨ LAUNCH DAY for @PlaypenApp
“Keep Kids Busy” with configurable kid safe activities
✅ YouTube
✅ Photo/Video Albums
✅ Interactive animal sounds
… and more to come
⌚️ Best part… change activities from Apple Watch and nearby iOS devices
Get it 👉 https://apps.apple.com/us/app/playpen-parental-control/id1629800310

I asked #GPT 4 about "TextKit 2", and you won't believe it. It's delusional. Making up API. Making up features. I even followed up on the API it made up, which, with a straight face 😏, made up its properties and example use.
You must know your craft to get helpful information from today's AI 🧐
There's no such thing as `NSTextAnnotation` in the whole wide world. #iOSDev #macdev

In case you still need Xcode 14 in macOS Sonoma, you can open it via
`open /Applications/Xcode_14.app/Contents/MacOS/Xcode`
You can also right click in Xcode_14 and “Show package contents” if you don’t want to use the terminal all time. Navigate to the folder and right click on the executable to create a shortcut with “Make Alias”.


IndieAppSpotlight issue #8 out now 🎉
featuring Caddieapp by @dougburns
and a new app from @joshdholtz

5. Yet another detail: getting singular and plural right for free form units from user inputs.

4. A little detail: new quick access to recently logged medications.

Let's say I wanted to create some MapKit overlays of shapes made up of curves. How would I handle this in #MapKit for a #SwiftUI app? By the looks of things, MapKit support for SwiftUI got a lot better in #iOS 17, but I don't see any documentation related to overlay shapes more complex than polygons.
How would you approach this?
Considering adding a platform? A word of caution by @thatvirtualboy
https://iosdevweekly.com/issues/628#elm88qf
Release Note Highlighting in Sparkle v2.5 by @ctietze and @Cykelero
https://iosdevweekly.com/issues/628#dd9i6vy
#iosdev CADisplayLink PSA:
If you’re calling:
```
CADisplayLink(target:selector:)
```
to get a CADisplayLink, you’re almost certainly holding it wrong!
It will give you a link that’s locked to the main screen’s timing. In these modern times of Stage Manager that is going to be wrong sometimes (and was even in the olden days with e.g. TV out or CarPlay).
The frame rate could be entirely wrong - but even if it’s not, the external display isn’t locked to the same clock as the internal one, so the link will not fire at frame ‘start time’, and timing will drift. Animations will stutter.
You really need to use:
```
UIScreen.displayLink(withTarget:selector:)
```
To get a link that’s targeting the correct screen - and always-smooth animation.

Inline Snapshot and Macro Testing by @mbrandonw and @stephencelis
https://iosdevweekly.com/issues/628#5OqvD9q


Migrating Ice Cubes to the Observation framework by @dimillian
https://iosdevweekly.com/issues/628#yOE8RrN
THIS IS MY LATEST APP! 🤩🤯
People at @nsspain and @swiftconnection have heard about it!
Meet SharePal, the ultimate companion for sharing all the text or URL snippet you often share like IBAN, social medias, Landing pages, hashtags…
It comes with iMessage app & custom keyboard for quick access. 🚀
To join the public TestFlight:
https://getsharepal.app/#beta

It doesn't seem possible to test Focus in #Xcode Simulator (or I haven't found yet how to do it). I filed a feedback for that because it could be a nice improvement: #FB13206428.
I ran into this issue when I tried to use a UISheetPresentationController from SwiftUI to get more flexibility for sheet configuration, which was only available in UIKit. I was so happy to learn that iOS 16.4 brought all the missing features into SwiftUI and I wouldn’t need UIKit anymore!
Didn’t last long, though. It turns out this animation glitch is an underlying issue, present even when using SwiftUI sheet APIs only. Reported as FB13206351.
🔗 https://github.com/structuredpath/AppleBugReports/tree/main/FB13206351

Patches to Artbox and Hello There were both rejected due to not defining what a 7 day free trial means. I’ve had the same wording there for over a year lolol #iosdev

TIL*: apparently the design for a Parameter of type Array<AppEntity> in an AppIntent depends on the numbers of items returned by the suggestedEntities function of the EntityQuery.
If less than 9 items, all items are visible with a checkbox.
If more than 10, a picker is presented.
* I lost one hour figuring out why my design was sometimes different from other apps...



Lots of progres on the next #Pipilo update. I decided it’ll be the last TestFlight update with new features (only bug fixes after that) so there is a lot of new stuff.
Some highlights: followers and followed users, post visibility and language selection when posting, option to post with content warning, new feedback menu, screen with precise text selection and find feature for post content, link preview cards when submitting posts and more in progress.




Decided to work a bit on @games again.
Starting by replacing the sort ActionSheet in the charts by a Menu.
I don't know if it’s a bit to far going with custom SFSymbols 😁


Core Data Lab and SwiftData
https://iosdevweekly.com/issues/628#dkjmSvm
Swift 5.9 Released
https://iosdevweekly.com/issues/628#mliEfOq
I'm thrilled to share that @SwiftAlyzer is now available for download via TestFlight 🥳
We've been working on this for quite some time, especially enabling the sandbox was interesting & challenging.
Looking forward to share more exciting updates coming soon 🙂
Thanks to this week’s sponsor, Essential Developer. If you're a mid/senior iOS developer looking to improve both your skills and salary level, join this free online crash course. It’s available only for a limited time, so get it now.
https://cur.at/UyEkwiN
Not my best UI but I think for v1 it could work.
The Deals section in @switchbuddy reliably has more than 1000 discounted games at any given time so this could be nice SwitchBuddy+ benefit.
Should I also add max price filter? Or wait if someone asks for it?

Did you miss Friday’s issue? I started with some words on Apple's new Swift testing framework.
https://iosdevweekly.com/issues/628#start
Just released a major update to my app, FourSix - an app for making pour over coffee brewing easy. Check it out! https://apps.apple.com/app/id1519905670
Written entirely with #SwiftUI and utilizes SwiftData and Charts. #iOSDev
Oh hey #iOSDev friends,
If you’re not using TelemetryDeck already, you should be! And if you use this referral link, you’ll get 200,000 free signals on top of the free plan (link is good for this week only).
Your future self will thank you!
https://dashboard.telemetrydeck.com/registration/organization?referralCode=8G0YS60MK1MJAXRN
App Radar with updates from @matt1corey @alexkaessner @Drmarkpowell @manuel @podomunro




I think the issue I have is related to the fact that I use the same model twice, even though I init a new one for every container?
I made a simple app that either use two models, or a shared one. When two models are used, the app crashes. It's working fine when re using the shared model.
#CoreData #WidgetKit #AppIntents #buildInPublic #iosdev #indiedev


WidgetConfigurationIntent question: how do you setup your EntityQuery when it needs to access your Core Data database?
I'm getting a crash when I try to use different Core Data stacks for the app and EntityQuery.
I describe my issue in this attached note. I'm new to extensions btw so I don't have the full picture of how processes run.



I can't run a .supportedFamilies([.systemSmall]) widget in simulator: "The request to open "com.apple.springboard" failed." If I specify .supportedFamilies([.systemSmall, .systemMedium]), it works & I see the widget on the home screen.
Any idea?

I just added a Widget Extension target to my iOS app but I can't build anymore because of a signing issue... I'm using automatically managed signing option in Xcode.
What have I done wrong?


TIL that in Developer.app, I can drag the session video from the bottom to make it bigger inside the window. Really wish I'd known this a long time ago!
I’m seeing a strange animation of my paywall content when it appears (it’s a #SwiftUI NavigationStack presented as a sheet). I don’t really know where this could come from as I don’t call any animation…
Have you experienced that? Is there a fix?

I rebuilt my 10-year-old boating logbook app @AppSkipper from scratch in #SwiftUI & the update is now available for #iOS17 🥳.
➡️ https://apps.apple.com/app/id671764434
It's time to bring it to the next level: widgets, Live Activity, CloudKit sync, watchOS...

Ok, enough FOSSing around, back to our regularly scheduled programming.
A new release of TootSDK - 0.61.0 📣
https://github.com/TootSDK/TootSDK/releases/tag/0.61.0
What's changed:
- Fix lists feature documentation @luckkerr
- TootClient get/delete filters and a pixelfed fix for updateCredentials @technicat
- Add post conversations and improve documentation @konstantin
We’d like to thank everyone who has submitted PRs, raised issues since we released the package publicly.
Community contributions are greatly appreciated 🙌
Mac app update got rejected…
Is it really that hard to just click the app icon in the dock?
Also got rejected for using com.apple.security.network.server. Isn’t this needed for CloudKit?
Also, if both these issues are the case, why didn’t you guys flag this on my first app release? 😂

iOS Dev Weekly, Issue 628 is (finally!) out. Happy Friday, everyone! 🚀
https://iosdevweekly.com/issues/628#start
Strange random crash when debugging in Xcode. Happens when I present a sheet with a NavigationStack and a List within. I don't really know what's the issue, seems related to an index, maybe for the list items...

I made a new Swift Package!
Need to trigger a behavior when all, or some rules are fulfilled?
Something like ... opening a paywall, requesting for an App Store review?
Inspired from the TipKit API with event donation, Introducing RuleKit, my new Open Source library for iOS, macOS, watchOS and tvOS !
Feel free to share, contribute, star, and obviously, use!
A wild Music App Stuff appears! Here's the lowdown on how I spent my summer, what's new in Albums 5.3, and an update on the Mac app:
https://albumstheapp.substack.com/p/albums-53-interactive-widgets-shortcuts
I'm really proud of this update, especially the new Shortcuts support. I'm grateful to the engineers at Apple who worked on the new frameworks, and to the hundreds of beta testers whose feedback went into making this update what it is.
The Old English Wordhord has been updated for iOS 17 with a new word-of-the-day StandBy widget! It’s also been updated with iPhone and iPad lock screen widgets.
#iOS #iOSDev #IndieDev #Medieval #OldEnglish #iOS17 #LockScreen #StandBy #Widget
It wasn’t my splashiest update cycle but I was ready on day one, I made my apps better, I resisted adding trendy capabilities that didn’t truly fit, and I did it while taking care of myself and working at an intentionally slower pace for maybe the first time ever.
I’m glad others are getting the attention and buzz they deserve, and I’m also very happy to be on the sidelines for all of it. Happy launch day, friends.
iOS 17 is out and a lot of apps have been updated. Check out this post to see what indie devs have been working on 👇
Indie dev’s reply and get the word out about your app!
#iOS17 #iOSdev #indiedev #indiehacker #buildinpublic
Congrats to all the #indiedevs who put months of work into your apps getting ready for Monday.
Everyone should be incredibly proud of each and every line of code you wrote to better your app and delight your users.
I've been so inspired and encouraged by following many of your journeys and wish you all the best with your #iOS17 updates!
Updated Mango Baby's major iOS 17 release article.
See you Monday, parents 🥭
Help iOS-Dev-Wan-Kenobi, you're my only hope!
Any idea why my AudioPlaybackIntent ignores my custom init and always runs the default one? #swift #iOSDev
Solved: @_Davidsmith is a saint ✨

BOOM! Just submitted @deek for 1.0 review. It’s amazing how I still get nervous every time I launch a new app.
Hey look, it's Albums 5.3! Look for a new Music App Stuff next week digging into everything, but for now, enjoy the new widgets.
I'm expecting y'all Mastodon nerds to make all sorts of dope automations with the new Shortcuts actions. Make sure you head to Settings -> Siri & Automation in-app and check out the Shortcuts Gallery for some prebuilt ones.
Full change log available here on the Albums subreddit: https://www.reddit.com/r/albumstheapp/comments/16hwk9a/albums_53_release_notes_interactive_widgets_new/
How do y’all make your App Store screenshots? I find this to be one of the most annoying aspects of releasing an app. #iOSdev
I’m also super excited that this is the first release of Hello There that includes app ads for participating #indies! 🥳
We have over 20 #indiedev apps being served up in Hello There's free tier and I’m so pumped about it!
More information about that here: https://thatvirtualboy.com/23-advertise-with-raktech-apps/
Turning on strict concurrency checking for all targets in a Swift package: https://useyourloaf.com/blog/strict-concurrency-checking-in-swift-packages/ #iOSDev #SwiftLang
I’m curious: what’s a simple way to store Sign In With Apple user account information (identifier, full name, email) in a GDPR compliant way without using any third-party tool like Firebase or Auth0? Like having a dedicated server (I don’t know backend/server side code).
It's done! Study with Subwords is coming to #watchOS10 very soon!
Take quick study sessions or just browse your lists right on your wrist!
Looking for work.
Who’s hiring #iOSDev?
UK or remote.
Been playing around and iterating on this UI for a workout. Added heart zones recently.
What do you think?
Wow what an incredible response from the #iosdev community! I'm so excited to be partnering with some great indies.
In less than 24 hours we blew thru the free TypeForm plan 😅
The form has been rebuilt and is once again available!
Very excited to see that all of these @b0rk ‘zines have arrived and are ready to distribute to my students!
Definitely take a look – whether you're a teacher or a software professional:
Thank-you, Julia, for your stellar work. 💫
Trying something new... advertising your app in my apps