问题描述
我用kotlin创建了一个Android应用,正在集成Branch IO进行应用共享。我已经在Branch的帮助下使用以下代码实现了共享URL功能:
share.setonClickListener {
val lp = LinkProperties()
val message = "Check out this product"
val ss = ShareSheetStyle(this,"App",message)
.setAsFullWidthStyle(true)
.setSharingTitle("Share With")
val image = productData.mainImage
val url = this.getString(R.string.image_URL) + image
buo = Utility(this).prepareSharingLink(
productData.id.toString(),"product",url,UtilityTools.getInstance().getValue(productData.name)
)
buo.showShareSheet(this,lp,ss,object : BranchLinkShareListener {
override fun onShareLinkDialogLaunched() {}
override fun onShareLinkDialogdismissed() {}
override fun onLinkShareResponse(
sharedLink: String,sharedChannel: String,error: BranchError?
) {
val MetaData: HashMap<String,String> = HashMap()
if (error == null) {
MetaData[Defines.Jsonkey.SharedLink.key] = sharedLink
} else {
MetaData[Defines.Jsonkey.ShareError.key] = error.message
}
}
override fun onChannelSelected(channelName: String) {}
})
}
prepareSharingLink是如下功能:
fun prepareSharingLink(
itemID: String,itemType: String,imageURL: String?,customTitle: String = ""
): BranchUniversalObject {
val canonical = itemType.plus("/").plus(itemID)
var branchUniversalObject = BranchUniversalObject()
branchUniversalObject.canonicalIdentifier = canonical
branchUniversalObject.title = customTitle
branchUniversalObject.setContentDescription("")
branchUniversalObject.setContentimageUrl(imageURL!!)
branchUniversalObject.contentMetadata.customMetadata["itemType"] = itemType
branchUniversalObject.contentMetadata.customMetadata["itemID"] = itemID
branchUniversalObject.isLocallyIndexable
branchUniversalObject.isPublicallyIndexable
branchUniversalObject.setContentIndexingMode(BranchUniversalObject.CONTENT_INDEX_MODE.PRIVATE)
return branchUniversalObject
}
当我单击UI中的“共享”按钮,然后选择“复制到剪贴板”时,然后单击“粘贴”时,没有URL复制。 我想知道应该如何更改代码以复制URL。
解决方法
暂无找到可以解决该程序问题的有效方法,小编努力寻找整理中!
如果你已经找到好的解决方法,欢迎将解决方案带上本链接一起发送给小编。
小编邮箱:dio#foxmail.com (将#修改为@)