We're currently evaluating offering an App Clip experience alongside our full app and I'm particularly interested in understanding how updates to App Clips are rolled out to users.
The documentation, specifically the section on Updating and Deleting App Clip Experiences provides some insights into how to make an update to an already existing App Clip:
To update an already released App Clip, create a new App Clip experience and attach it to a new version of your app. When the new version passes App Review and you publish it on the App Store, it uses the new App Clip experience.
From this, my understanding is that all users, including those who have previously accessed the older version of the App Clip, will automatically receive the updated version upon their next use. Is my interpretation correct? I'm particularly curious about how seamless this transition is for users who might have the previous version cached. Do they encounter any disruptions, or is the switch to the updated version smooth (assuming they have a decent network connection)?
I would greatly appreciate any insights or shared experiences regarding the App Clip distribution process.
App Clips
RSS for tagProvide a way to quickly access and experience what your app has to offer. An app clip is a small part of your app that lets users start and finish an experience in seconds, even before downloading your app.
Posts under App Clips tag
66 Posts
Sort by:
Post
Replies
Boosts
Views
Activity
Apple has a QR code-like pattern called App Clips, which is circular. It only displays corresponding information when scanned with an iPhone camera. There are detailed official documents explaining how to create this pattern, available at: https://developer.apple.com/documentation/app_clips/creating_app_clip_codes/creating_app_clip_codes_with_the_app_clip_code_generator
However, there is no official documentation on how third parties can scan and recognize the information in App Clips. Like QR codes, there are many third-party applications that can read the information in QR codes, but there is no instruction on how to retrieve information from App Clips patterns.
App Clips image:
I have an app with an app clip that we have have had for over a year. Up until 15:th Feb 2024, every time we created a new app version, the App Clip section, that decides how the app clip card looks like, has retained its information. However, this time, when I created a new version, the App Clip section became empty.
Steps to reproduce:
Create a new version of the app (e.g. enter "1.4.9" to the version dialog box and click save).
On the page for the new version, scrolling down, I saw a banner with a message in the top of the App Clip section saying something like "you have a new App Clip version, do you want to use metadata from the previous build?" - see image for an approximate location. (This is the first time I see this message, up until now the app clip setup has always remained the same between versions without me needing to do anything)
Without saying yes/no to this message, i) enter a "What's new" text and ii) choose a new build to upload. Then click Save at the top of the page.
Expected outcome: the old App Clip setup from the previous version would remain, or the banner with the message from step 2 would be there until I have made a choice
Actual outcome: All settings in the App Clip section are empty. Also, the message of using app clip metadata from the old version is gone, so no way to say yes to that message anymore.
How can I get my app clip data back from the previous version (1.4.8) without needing to re-enter it manually?
Can I delete and re-create the 1.4.9 version to see the App clip metadata message again? If so, how do I delete version 1.4.9? I can't find a delete button.
Or can I using some other means trigger that App Clip metadata banner/message again?
we created a QR code for our Instagram page, it was created on QRCode Monkey site, with our logo in the middle ...it's astatic QR code not dynamic...
it works on non-iPhone/IOS devices, and it works in some iPhones (we test couple of old iPhones) for most new iPhones we get the message "this app clip not currently available in your country/region."
how to find out the issue, and how to fix it, or how to create a QR code that wouldn't have such issue?!!!
thanks in advance.
I have a demo AppClip which does Passkey registration and assertion in a wizard style page collection. Very often, the assertion would fail with the error "Couldn't communicate with a helper application". Retrying it few times will eventually work.
Full error:
Connection to agent service interrupted with error: Error Domain=NSCocoaErrorDomain Code=4097 "Couldn’t communicate with a helper application."
I don't know exactly what's causing this and how to prevent it? It only seems to happen during assertion, not registration.
I woke up this morning to all of our app clips showing "App Clip Unavailable" on the app clip card with no change on our side to the app or app clips. What's weird is that the app clip card shows up fine if you have our app installed, otherwise it shows the error message on the app clip card.
My leading theory is it could be an issue with apple's system (wouldn't be the first time we've had issues that were magically broken then fixed with nothing being changed), anybody else seeing issues or have ideas?
Have verified the apple-app-site-association files have not changed and that the Associated Domains in any recent app releases all are the same.
Hi - I use TipKit in my App and AppClip. TipKit is configured with the app group's datastore. The tips show in the App, but on the AppClip, with the same rules/state, the tips do not display. Is this expected? TipKit is not listed as one of the frameworks unavailable to AppClips.
try? Tips.configure([
Tips.ConfigurationOption.displayFrequency(.hourly),
Tips.ConfigurationOption.datastoreLocation(.groupContainer(identifier: BuildConfiguration.shared.userDefaultsSuite))
])
My App Clip has been active for a few years with no problems and the App Clip or the full app opens and behaves as expected when opened from a custom url with a query via the Smart Banner in Safari.
However, the App Clip card is also now displayed when the url is sent via Messages (not sure if this new - I used to just see a small link icon?). The problem is that users get different results depending on whether they tap on the card itself or instead tap the Open button.
For example, if a simple text message is sent with the text url: http://domain.com/path/?abc the AppClip card is displayed for the recipient in messages.
When the recipient taps the card's image, SceneWillContinue receives the full url with its query and the app behaves as expected. But if the card's Open button is tapped SceneWillContinue instead receives the url without the query component (ie. just http://domain.com/path/) and the App Clip action is consequently not activated.
is this normal behaviour or is it a bug? Or am I doing something wrong?
Thanks.
Hi Apple Devs,
I'm seeing additional custom app clip card registrations made manually via the AppStoreConnect website that are "received" successfully (so all the registration parts entered fine online) can take anywhere between 24-48 hours to "process" and the finally start showing up on on device for the given registration URL.
Am I doing something wrong that causes this delay?
Is there some cache somewhere I need to clear somehow to see registrations faster?
Why is there such a delay and why is this process and it's finish time so opaque to the developer?
We never know after completing the registration flow for a new App Clip Card when we can expect the App Clip Card to start showing up/working. We just shrug and wait a few days and it suddenly starts working.
TIA
I published my app clip last year in the App Store.
I can successfully open my app clip in iMessage or via link URL. but scanning the QR code of the very same URL leads to the "app clip is unavailable" error, in this case, I can see my application name and banner correctly.
Any Idea why?
Question: Does anyone have experience or documentation on how to get an App Clip to show on Apple Maps for a location?
What I've tried: I have tried to associate my App Clip with an Apple Maps location. We are working with a physical restaurant that has an Apple Maps location, our full app is listed there but not the App Clip.
I've gone through the steps of setting up the Advanced App Clip Experience and giving it the location we want it associated with, and have gone through Apple Business Connect and done all the setup there to get the full app to show with the location, but the app clip still does not show.
I've contacted Apple Support and they gave me the criteria of "The App Clip is hosted within the app" and "The app is associated to the same physical location". When asking for clarification with the first criteria they said they could help and closed the chat.
Description:
I am developing an iOS App Clip using SwiftUI and am encountering an issue where the App Clip does not launch when clicking a Universal Link. Below are the key details of my setup and what I have tried:
Main App Context: The main application is built with Flutter, but the App Clip is being developed natively in SwiftUI.
Current Objective: I am aiming to demo the App Clip launch when a Universal Link is clicked. For now, it doesn't need to interact with the main app or process any parameters - the goal is simply to get it to launch.
Development Environment: I am building the App Clip through Xcode and testing it by running the App Clip then clicking the link.
Configuration:
Associated domains have been added to both the App Clip target and the main "Runner" app target in Xcode, with updated provisioning profiles.
The AASA file has passed validation using yURL’s Universal Links / AASA File Validator tool.
AASA File Configuration:
{
"applinks": {
"apps": [],
"details": [
{
"appID": "<TeamId>.<BundleId of main app>",
"paths": ["/redeem"]
}
]
},
"appclips": {
"apps": ["<TeamId>.<BundleId of app clip>"]
}
}
Testing: Conducted on a real iOS device.
Link Handling: The URL (https://vault-activation-beta.web.app/redeem) does not lead to a 404 error, and long-pressing the link in an SMS does not show any App Clip related options.
Code Implementation:
import SwiftUI
import FirebaseCore
import FirebaseAuth
@main
struct AppName_ClipApp: App {
@UIApplicationDelegateAdaptor(AppDelegate.self) var delegate
init() {
FirebaseApp.configure()
}
var body: some Scene {
WindowGroup {
ContentView()
.onOpenURL(perform: { url in
print("Opened URL: \(url)")
})
}
}
}
class AppDelegate: NSObject, UIApplicationDelegate {
func
application(_
application: UIApplication, didFinishLaunchingWithOptions
launchOptions: [UIApplication.LaunchOptionsKey : Any]? = nil) -> Bool {
print("Your code here")
return true
}
func application(_ application: UIApplication,
continue userActivity: NSUserActivity,
restorationHandler: @escaping ([UIUserActivityRestoring]?) -> Void) -> Bool {
if userActivity.activityType == NSUserActivityTypeBrowsingWeb,
let url = userActivity.webpageURL {
print("Opened URL from Universal Link: \(url)")
// Handle the URL appropriately within your app
}
return true
}
}
I am looking for guidance on whether there's something missing in my setup or if there are any issues with my implementation. Any suggestions or insights into why the App Clip is not launching with the Universal Link would be greatly appreciated.
I have created app clip and call my unity Xcode project but I am getting white blank screen when I run it
We're trying to submit an App Clip , and the process is the same as before. but when we push it to TestFlight we get an error like below:
Asset validation failed Invalid bundle identifier. The bundle identifier 'com.xxxxx.xxxx.clip' of the app clip '***.app/AppClips/Clip.app' conflicts with the bundle identifier of an existing app that you have submitted. Create a unique bundle identifier for your app clip. (ID: 2a59d2c9-f0d4-44c3-830d-34b5847bf44d) (90846)
We haven't made any changes to the appclip and the parent app in the latest version, include code or config .
so what should we do ?
We're trying to submit an App Clip with around 17mb, aiming to fit in the new size limit for digital invocations.
The mention for the rules can be found in this article.. The relevant part is:
If you make your App Clip available on devices running iOS 16.4 and later, your App Clip can be up to 50 MB in size if it meets the following conditions:
The App Clip only supports digital invocations — for example, from your website or Spotlight search — and not from physical invocations but like App Clip Codes, QR codes, or NFC tags
People use your App Clip in situations where a reliable internet connection is likely, for example, at home
Your App Clip doesn’t support iOS versions prior to iOS 16.4
We have updated our App Clip target to have a minimum supported version to iOS 16.4 but when we push it to TestFlight we get an error like below:
We identified one or more issues with a recent delivery for your app, (...) Please correct the following issues, then upload again.
ITMS-90865: Thinned app clip size is too large - The main bundle of the (...) App Clip is 17 MB, which exceeds the maximum allowable size of 15 MB after app thinning. Please ensure the main bundle of any App Clip variant is less than 15 MB. For details, view: https://developer.apple.com/documentation/app_clips/creating_an_app_clip_with_xcode.
We haven't found any way to specifically specify the App Clip to exclusively support digital invocations.
The parent app still has a minimum supported version of iOS 15.0.
What are we missing?
Hi, with the release of iOS 17 App Clips are supposed to support sizes of 50 MB if you're targeting iOS 16.4 or later. However, when I submit such a build to the App Store I receive an "Invalid Build" email, saying that my app "exceeds the maximum allowable size of 15 MB after app thinning."
My app is 32 MB and targets iOS 16.4, yet App Store Connect appears to still be hewing to the old 15 MB limit. Any ideas on how to solve this? Is there a setting I'm missing? Thanks!
"Since this app contains an App Clip, the com.apple.developer.associated-appclip-app-identifiers entitlement should be present and include the value of the App Clip's application identifier. Please add this entitlement, then resubmit". Added then also still I am getting the warning from TestFlight ? Please help to resolve the particular issue
Can I use eSIM download / install using an App-Clip? I know this requires entitlement.
If it is possible, can you please let me know how it works.
Thanks!
It seems that when configuring an App Clip default link in H5, it does not always work consistently. Often, the first or second click does not activate the clip card, but the third time does. This issue occurs regularly, and it appears that the aasa file has already been uploaded because universal links are functioning correctly.
Since the button is specifically designed to launch the clip card, if it does not work, there will be no effect for users, which can be confusing. This is unlike universal links that can redirect to the H5 page if the app fails to open.
Any suggestion?
Using this command line incantation:
AppClipCodeGenerator generate -u https://myapp.app/clip -i 9 -o ~/Desktop/appClip.svg
everything works as expected. However, using this one:
AppClipCodeGenerator generate -u https://myapp.app/clip?p=1 -i 9 -o ~/Desktop/appClip.svg
ie, just trying to pass in 1 parameter via "?p=1", it fails with
no matches found: https://myapp.app/clip?p=1
In my case, clip is a Servlet which expects the parameter named p.
Any ideas?