<!--
{
  "availability" : [
    "iOS: 17.4.0 -",
    "iPadOS: 17.4.0 -",
    "macCatalyst: 17.4.0 -",
    "visionOS: 1.1.0 -"
  ],
  "documentType" : "symbol",
  "framework" : "SafariServices",
  "identifier" : "/documentation/SafariServices/SFAddToHomeScreenActivityItem",
  "metadataVersion" : "0.1.0",
  "role" : "Protocol",
  "symbol" : {
    "kind" : "Protocol",
    "modules" : [
      "Safari Services"
    ],
    "preciseIdentifier" : "c:objc(pl)SFAddToHomeScreenActivityItem"
  },
  "title" : "SFAddToHomeScreenActivityItem"
}
-->

# SFAddToHomeScreenActivityItem

A protocol that describes a bookmark someone can add to their Home Screen.

```
protocol SFAddToHomeScreenActivityItem : NSObjectProtocol
```

## Overview

To add a bookmark to someone’s Home Screen from your browser app, create an object that conforms to [`SFAddToHomeScreenActivityItem`](/documentation/SafariServices/SFAddToHomeScreenActivityItem) and present a <doc://com.apple.documentation/documentation/UIKit/UIActivityViewController> that includes the activity item.

If your browser app uses WebKit, [`SFAddToHomeScreenActivityItem`](/documentation/SafariServices/SFAddToHomeScreenActivityItem) always represents a bookmark. To let someone add a web app to their Home Screen, add a <doc://com.apple.documentation/documentation/WebKit/WKWebView> to the <doc://com.apple.documentation/documentation/UIKit/UIActivityViewController> activity items instead of a [`SFAddToHomeScreenActivityItem`](/documentation/SafariServices/SFAddToHomeScreenActivityItem). WebKit inspects the website’s metadata to decide whether the item represents a bookmark or a web app.

If your browser app includes an alternative browser engine, pass detailed information about the bookmark to [`getHomeScreenWebAppInfo(completionHandler:)`](/documentation/SafariServices/SFAddToHomeScreenActivityItem/getHomeScreenWebAppInfo(completionHandler:)).
If the bookmark represents a web app, include the web app manifest, and cookies that the system uses when someone opens the web app from their Home Screen.

> Important:
> ``doc://com.apple.safariservices/documentation/SafariServices/SFAddToHomeScreenActivityItem`` is only available to web browsers. For more information on creating a web browser, see <doc://com.apple.documentation/documentation/Xcode/preparing-your-app-to-be-the-default-browser>.

## Topics

### Describing a bookmark or web app

[`iconItemProvider`](/documentation/SafariServices/SFAddToHomeScreenActivityItem/iconItemProvider)

An object that conveys the bookmark’s icon to the system.

[`title`](/documentation/SafariServices/SFAddToHomeScreenActivityItem/title)

The bookmark’s title.

[`URL`](/documentation/SafariServices/SFAddToHomeScreenActivityItem/url)

The bookmark’s URL.

### Providing information about a web app to the system

[`-  getHomeScreenWebAppInfoWithCompletionHandler:`](/documentation/SafariServices/SFAddToHomeScreenActivityItem/getHomeScreenWebAppInfo(completionHandler:))

Provides information about a web app to the system.

[`SFAddToHomeScreenInfo`](/documentation/SafariServices/SFAddToHomeScreenInfo)

A class that provides information about a web app that someone adds to their Home Screen.

[`-  getWebAppManifestWithCompletionHandler:`](/documentation/SafariServices/SFAddToHomeScreenActivityItem/getWebAppManifest(completionHandler:))

Provides the web app’s manifest to the system, if the bookmark represents a web app.

## Relationships

### Inherits From

[`NSObjectProtocol`](/documentation/ObjectiveC/NSObjectProtocol)

---

Copyright &copy; 2026 Apple Inc. All rights reserved. | [Terms of Use](https://www.apple.com/legal/internet-services/terms/site.html) | [Privacy Policy](https://www.apple.com/privacy/privacy-policy)