Developers are going to hate this, but it’s good for the rest of us.
Apple
Welcome
to the largest Apple community on Lemmy. This is the place where we talk about everything Apple, from iOS to the exciting upcoming Apple Vision Pro. Feel free to join the discussion!
Rules:
- No NSFW Content
- No Hate Speech or Personal Attacks
- No Ads / Spamming
Self promotion is only allowed in the pinned monthly thread
Communities of Interest:
Apple Hardware
Apple TV
Apple Watch
iPad
iPhone
Mac
Vintage Apple
Apple Software
iOS
iPadOS
macOS
tvOS
watchOS
Shortcuts
Xcode
Community banner courtesy of u/Antsomnia.
Shady developers are going to hate it; the good ones are okay
I only dislike it in a “death by 1000 cuts” type of way where iOS already has a long list of things that make development more annoying.
App Review and the unequal application of the rules is the worst part. Make all the rules that you want, but enforce them consistently and for everyone. I hate playing reviewer roulette.
Shady ~~developers~~ product owners
Funny then how FB, Instagram, TikTok and WhatsApp are all on App Store without any issues. These requirements hurt small developers the most, large corps have enough manpower to take care of these.
There’s not a lot of reason to hate it if implemented correctly which it very well might not be at first and likely will cause some headaches. Regardless, Apple should also do a better job of telling users the reasons too if they are going to be doing this.
Right now, you fill out a whole bit of information about why your app might use specific private info, but Apple only shows minor information about it to the user. I’d much rather the user know the specific reason I’m using, for example, location instead of just for “App Functionality”. Would make a better user-developer relationship in my opinion and promote good transparency.
I'm a developer and don't hate it on its face.
IMO it's only a problem in the context of iOS not having side-loading. I'm imagining an app that uses an API to block ads and Apple just being like "no" and then you can't get that app.
Developers are going to hate this, but it’s good for the rest of us.
Some, but not all. There's no reason a developer should have to explain why they're using UserDefaults. It's a local-only place for storing very small amounts of data. The data is created in the app and read only within the app. There are no privacy or other concerns in its use. It's just a tedious waste of everyone's time to provide a reason.
That all depends on Apple's ability to run it effectively, and they have basically no demonstrated ability to do that.
App Review is an absolute joke. Listen to last week's Accidental Tech Podcast. One of the hosts is developing an IMDB competitor app, and he's been rejected three times as of that episode. One rejection was for playing copyrighted video without permission -- in an app that doesn't have any code that can play a video. One was for not having a link to his T&Cs in a field in the app store that can't render links. And the third was for displaying copyrighted media in his screenshots (maybe? no one really knows), and that media was the cover art for movie and TV shows. None of those even pass the sniff test. We all know that you're allowed to show the cover art for a movie in an app that has information about movies. We all know that's Fair Use, but beyond that, a third grader knows that literally everything in the world that presents information about movies does it. At the exact same time that all this is happening, Apple happily published some scammer's app called "Threads" and let it collect 300,000 people's information who thought they were downloading the actual Threads app from Meta.
It's always been this way. I personally wrote the original iPhone app for a large US retailer in 2008 -- the first year the App Store existed. App Review's only purpose then was to detect your use of private APIs, usually because that would let you build things Apple didn't want you to build. That's the only purpose it serves today, 15 years later. Everything else is random noise that just punishes you unpredictably for no reason. I had an update of that app rejected once for using our own company logo as the icon. They don't catch obvious scams. They never have. The people doing these reviews know nothing or are given so little time that the way to game their metrics is to just randomly reject sometimes without analysis. Unless they change something, it'll just be a thing that scammers fill out however they want with no consequence to them at all, and a random 5% of legitimate developers will waste a few weeks arguing over when it's applied to them with no logical basis in reality.
Just to second this take: My experience is that initial app review gets failed for random reasons that you have to be ready to argue about. Then in updates to the app, the developer can do pretty much whatever you want without any consequences.
And the description will probably end up as 'detailed' as the change-log. "API required for full app functionality"
Sometimes ChatGPT can be legitimately funny. I asked it to fill out the permissions application as Meta.
A high step count might be rewarded with an ad for comfortable running shoes; prolonged inactivity could trigger promotions for ergonomic chairs.
LOL
Dear App Store Reviewer,
We're pleased to outline our reasons for the various permissions required by our Threads application.
Permission #1: Location Access to location data allows us to provide a more personalized user experience. Localized content, such as debates about neighborhood parking restrictions, would facilitate more engaging interactions. It also enables more accurate restaurant ads.
Permission #2: Health Data With health data, we can offer timely suggestions for wellness activities based on user habits. A high step count might be rewarded with an ad for comfortable running shoes; prolonged inactivity could trigger promotions for ergonomic chairs.
Permission #3: Microphone Access Audio transcriptions serve to identify users' conversation topics, allowing us to tailor content to their interests. Casual mentions of Italian cuisine could prompt an influx of pasta maker ads, enhancing their culinary explorations.
Permission #4: Camera Access Camera access improves our ability to understand user preferences through their captured images. Frequent snapshots of their pet parrot might lead to a subtle increase in bird seed and cage cleaner advertisements.
Permission #5: Contact List Contact lists assist us in identifying common interests within a user's network. Frequent discussions about vintage car restoration with certain contacts might result in targeted ads for classic auto parts, supporting their hobby.
Permission #6: Calendar Calendar sync provides us insight into users' upcoming events, allowing for timely content suggestions. If a user's calendar reveals a dental appointment, we might find it apt to provide ads for mouthwash and high-end toothbrushes.
Permission #7: Biometric Data Biometric data offers enhanced user security, while also informing us about their stress levels. Irregular heartbeats during work hours might indicate a need for calming ads featuring spa retreats or meditation apps.
Permission #8: Browsing History By understanding a user's browsing habits, we can refine the content we present to them. Browsing for second-hand furniture might result in a myriad of ads for antique shops, aiding in their quest for the perfect vintage armoire.
Permission #9: Social Media Account Linking Linking social media accounts allows us to understand a user's broader digital footprint, leading to a comprehensive content curation strategy. Regular 'likes' on pictures of home-baked bread across platforms might trigger an increase in ads for artisanal bread making kits.
Permission #10: Dream Journal Entries Our most innovative request, access to users' dream journal entries, could provide a unique perspective on their subconscious interests. Dreams of tropical beaches could result in a range of ads for sun hats, SPF creams, and all-inclusive resort packages.
We trust these explanations clarify our intent: providing a user-centric application experience, catered to individual lifestyles, with the necessary bonus of extremely personalized advertising.
Yours sincerely, The Facebook Team
Good job on #10. I love it.
I had to massage the prompt and have it rewrite it three times, but it finally nailed it. The dream journal cracked me up.
They already have to describe why they use some APIs. For example, Bluetooth: