从iOS创建显示与仪表板链接相同值的分支链接

时间:2019-05-02 05:12:50

标签: swift deep-linking branch.io

产品团队已经在仪表板上创建了一个快速链接,并且已经具有标题,描述和ImageURL。就像这样的https://myapp.app.link/ticket

我正在我的iOS应用程序上显示票证。每当用户在票证上选择share选项时,我都会使用以下代码填充iOS共享表

let buo = BranchUniversalObject(canonicalIdentifier: "ticket/id?=" + ticketId)
buo.contentMetadata.customMetadata["id"] = ticketId
buo.publiclyIndex = true
buo.locallyIndex = true

let lp: BranchLinkProperties = BranchLinkProperties()
lp.addControlParam("channel", withValue: "app")
lp.addControlParam("feature", withValue: "ticket_share")
lp.addControlParam("$deeplink_path", withValue: "ticket/?id=" + ticketId)

buo.showShareSheet(with: lp, andShareText: message, from: viewController, completion: nil)

当我共享此链接时,它看起来像https://myapp.app.link/RANDOMNUMBERS,但看不到分支仪表板上设置的标题,描述或ImageURL。

如何使用BranchUniversalObjectBranchLinkProperties创建一个适合仪表板上的URL(这样的https://myapp.app.link/ticket?id=123123)并显示正确的Title,Description和ImageURL?< / p>

编辑:当我尝试添加lp.alias = "ticket"时,我从分支sdk中收到错误消息

Error Domain=io.branch.sdk.error Code=1001 "A resource with this identifier already exists."

我不想每次我们要更改共享描述或图像时都推送应用的新版本,这就是为什么我要使用分支仪表板上现有的已创建链接

1 个答案:

答案 0 :(得分:0)

您不必每次更新社交媒体标签(例如标题或图像)时更新您的应用程序。您可以基于每个链接(在Social Media标签下的https://dashboard.branch.io/quick-links/qlc/config/或全局设置链接设置https://dashboard.branch.io/link-settings/general上执行此操作。另外,通过SDK或API创建链接时,可以在链接数据中添加以下OG标签:$ og_title,$ og_description,$ og_image_url。有关更多信息:https://docs.branch.io/activity-reports-analytics/content-analytics/#how-does-branch-identify-my-content