我可以确认应用用户确实与 Intent.ACTION_SEND 分享了我的应用 link 吗?

Can i confirm app user did share my app link with Intent.ACTION_SEND?

在我的应用程序中,我有一个“分享应用程序 Link”按钮,单击该按钮后,使用 Intent.ACTION_SEND 在社交媒体应用程序(WhatsApp、Instagram、Twitter)中分享应用程序商店 link并为用户提供此操作的奖励。但我无法确认用户是否在社交媒体应用程序中成功分享了 link,因为 Intent.ACTION_SEND 没有任何 return。我该怎么办?我也对其他想法持开放态度,然后确认或使用另一个意图过滤器。

我的代码是:

fun shareAppLink(view: View){
        val shareIntent = Intent(Intent.ACTION_SEND)
        shareIntent.type = "text/plain"
        shareIntent.putExtra(Intent.EXTRA_SUBJECT, getString(R.string.app_name))
        var shareMessage = "\nLet me recommend you this application\n\n"
        shareMessage = """${shareMessage}https://play.google.com/store/app/details?id=${this.packageName}""".trimIndent()
        shareIntent.putExtra(Intent.EXTRA_TEXT, shareMessage)
        var whiteList=mutableListOf("com.whatsapp","com.instagram.android","com.twitter.android")
        startActivity(CustomChooserIntent.create(packageManager,shareIntent,"",whiteList))

CustomChooserIntent 使用白名单来允许选择哪些应用程序。

抱歉,这不可能。您说的是对的:没有 return 值。不可能在所有可能的共享方法中都有一个合理的 return 值——例如,如果他们将其保存为电子邮件客户端中的草稿以便稍后发送怎么办?

如果您想确认用户确实分享了某些内容,您始终可以使用特定于应用程序的 API(例如,this API 用于 Twitter),这样您就可以从内部分享 post你的应用程序。当然,不要忘记没有什么可以阻止用户在 post 之后立即删除 post :-)