I look around but could not find an answer. If my iOS/iPadOS and macCatalyst are based on a subscription or contain in-app purchases, is it possible to have the same subscription for the 3 apps, or restore the purchase for all 3 apps? As in, when the user subscribes on iPad, can the subscription carry over to the macCatalyst app, using only Apple's technologies?
Tested this question, from different applications come different recipes from the same ICloud. Merge failed.
As of March 2020, this is now possible using Universal Purchases:
https://developer.apple.com/support/universal-purchase
Distribute iOS, iPadOS, watchOS, macOS, and tvOS versions of your app as a universal purchase to let customers easily enjoy your app and in‑app purchases across platforms. They’ll only need to purchase once on the App Store.
This seems to rely on the use of the 'use iOS bundle identifier' to make sure the bundle ids are the same. With Catalyst apps released under xCode 11.3 or earlier there is additional work involved to move them over to a single bundle id
Related
Beginning with WatchOS 6 Apple makes it possible to ship Watch-only apps. While we can first ship an iOS app and later add a companion app for the Apple Watch, I'm wondering if the reverse is possible as well:
Can we ship an Apple Watch-only app, which is installed via WatchOS App Store directly on the watch and then later add an iOS app to it?
This is important to me as I don't want to put a barrier on front of this option. You may still find out after publishing your watch app that it will profit from having a companion app on the iPhone. Or you might find that your watch app will gain more publicity when its iOS companion app becomes visible in the iOS App Store as well.
Yes, this is simply a matter of going to the project at the top level of the project navigator, then adding a new iOS target to your Apple Watch project.
I am considering updating to an independent app for watchOS 6 (as Apple suggests) but it's not clear to me what will happen to users of older watchOS versions that have my app installed. More specifically:
What will happen if a user had the dependent app installed on their watchOS 5 watch but downloads an update of the iOS app (which now lists the watch app as independent) for their connected iOS 13 iPhone? Will the watch app be uninstalled or not function at all (since it will try watch connectivity with an iOS app that no longer supports it)?
This will definitely occur, since, according to official page:
watchOS 6 will be available for Apple Watch Series 1 and Apple Watch Series 2 later this fall.
I think this is not a hard question. An independent app means that the app can work alone. But it doesn't have to. An independent watchOS app should work with or without the iOS companion app. If you watchOS app can't work properly without iOS companion app, it is not an independent app. You should refactor your Apple Watch Extension or just leave it as not independent.
Here are what I believe should be true:
If you installed an Apple Watch app with its iOS companion app, both apps are removed if you remove the iOS app.
However, if the Apple Watch app is independent, you could installed it alone without install the iOS companion app.
For the second rule, there are some pitfalls as a developer. When you are debugging an independent watch app, it is listed in Watch app on iPhone. However, since there is no iOS companion app, you can't remove it entirely on iOS. Even if you have removed it on Apple Watch, it is still shown as not installed in Watch app.
I am trying to create a multiplayer game that is playable between iOS an macOS users.
To enable multiplayer gaming I make use of Apple's GameKit framework & GameCenter service for matchmaking.
Initially I tried to use the same bundle id and at least then it was possible for players to find each other between iOS and macOS platforms, however Apple doesn't allow to use the same bundle id between iOS and macOS apps in the AppStore.
So now that I changed my bundle id for iOS to be different, it's not possible for iOS players to find macOS players anymore and vice versa when using GameCenter / GameKit.
I read up in the documentation and there's supposed to be a "Multiplayer Compatibility" section in AppStore Connect that should allow iOS and macOS to play against one another.
In iTunes Connect, you can provide compatibility information that describes which versions of your game can see each other during the matchmaking process. Each compatible group of devices and versions of your game are matched as separate groups.
The ability to create these matchmaking groups is quite flexible:
When you create a new version of a game (such as a bug fix), you can declare whether the new version is compatible with the older versions (and which ones, specifically).
You can create distinct games (with different bundle identifiers) and still allow them to play against each other.
You can create distinct games on both OS X and iOS and match them against each other.
However when I log in into AppStore connect this section seems to be gone. I didn't find anywhere if Apple removed this functionality somewhere from AppStore connect.
So my question is, is it still possible to somehow enable this functionality for my iOS and macOS app?
P.S.: Adding the iOS and macOS bundle id's to the same group in AppStore Connect doesn't seem to work either. I guess these groups are only meant to share leaderboards and achievements between platforms?
I would like to know that is it possible to implement and run a new app store for iOS apps? I know, iOS devices must download apps only from AppStore, but is there any way to run an independence iOS AppStore website or app?
The answer is NO. period.
3.2.2 Unacceptable
(i) Creating an interface for displaying third party apps, extensions, or plug-ins similar to the App Store or as a general-interest collection.
App Store Guidelines
Jailbreak app stores: something like Cydia. You can do pretty much anything with / on jailbroken devices.
You can easily create a website that is a subset of the official AppStore with different filters / rankings / search capabilites etc. In the end you can only support the apps available in the real AppStore since that is the only place to install apps from
Create an entire development environment and ecosystem to create apps which can be installed inside your new AppStore2.0 app. But good luck doing that complex task and good luck getting it through the apple review process.
Enter to Apple enterprise program - https://developer.apple.com/programs/enterprise/
I have submitted app and it got rejected as it crashed in iOS 9 devices. Can I opt out for iOS9 like I will say my app will support up to iOS 8.4. I don't want to support iOS 9?
No, you can not opt out of the current (or about to be released) iOS version. Apple will test iOS app submissions to their App store on the iOS version currently running on the devices that its customers are currently buying or will soon be buying just days from now. And that's currently iOS 9.0. Why put an app in the store that will crash a couple days after a customer buys it just before upgrading their device?
Also, most apps built with the SDK for the previous iOS version should work on devices running the next iOS version, perhaps after testing (and tweaking API usage) on devices running a beta version of that next iOS version, which is available to all enrolled developers. This testing does require Xcode 7 (although using the Xcode-beta or GM makes some of the testing and debugging a lot easier). There are other ways to put a test app on your test device, such as Ad Hoc deployment via iTunes.