Android:通过Facebook分享或推文解锁应用程序的附加功能



我在Google Play上发布了一个免费的应用程序。我想添加一些新功能,并要求用户通过Facebook分享或推文为其"付费"。

场景:

  1. 用户更新应用程序
  2. 新功能在设置中可用,但未激活
  3. 要激活功能,用户必须在FB或Tweeter上共享有关我的应用程序的信息
  4. 只有在共享成功的情况下,用户才能使用该功能

对我来说,在社交媒体上传播有关应用程序的信息似乎是个好主意。。。但是,我找不到任何"开箱即用"的解决方案(库或代码(。有吗?

有人尝试过这种方法吗?它成功了吗?

此外,我正在努力找出这种方法是否符合谷歌播放政策。我读过https://play.google.com/about/developer-content-policy.html非常小心,但我没有发现任何线索。在实施此方法后,是否有人收到来自谷歌的任何违反政策的电子邮件?

我做类似的事情已经有一段时间了。就共享本身而言,使用ShareActionProvider非常简单。这里有一个教程。

然而,这并不能为您提供任何方法来确定用户是否成功共享了任何内容,它只提供了共享内容的能力。但是,当选择共享目标时,您可以通过在ShareActionProvider上使用setOnShareTargetSelectedListener()和您自己的OnShareTargetSelectedListener实现来执行某些操作。

不过,这也是有问题的,因为它只允许您确定用户是否单击了要共享信息的应用程序,而不是他们是否真正执行并共享了任何内容。您可以更进一步,创建自己的自定义共享操作,使用startActivityForResult()而不是startActivity(),然后从onActivityResult()读取Intent data和int resultCode。这将告诉您共享何时完成。

不幸的是,这样做只会把你引向另一堵墙。dataresultCode参数由用户共享到的应用程序传递给您的应用程序,这意味着它们在应用程序之间并不完全一致。事实上,大多数应用程序似乎都无法区分用户是分享了什么,还是在没有分享的情况下退出了。通常,无论共享是否成功,他们都只返回0的resultCode。并且data Intent经常是空的。的确,似乎没有任何方法可以一致地确定用户是否真的成功地共享了内容。

考虑到这一点,如果您的奖励不太大,您可以考虑简单地奖励OnShareTargetSelectedListener中的用户,并希望用户足够值得信赖,能够真正共享您的应用程序。或者,你可以重新思考奖励分享用户是否是最好的主意。尽管据我所知,这并不反对任何违反政策的行为。就我个人而言,如果你只给用户少量奖励,我认为这是一个相当好的主意;不幸的是,很遗憾(至少据我所知(无法确定用户是否真的分享了内容。

我可能也会晚一个月对此做出回应,但我想晚一点总比不晚好,如果其他人也好奇,分享我的经历可能是个好主意。

编辑:刚刚意识到你指定了Facebook和Twitter。据我所知,脸书并没有区分用户是否真的分享了什么,所以如上所述,在脸书上实现这一点是不可能的。当用户共享时,Twitter确实区分了-1的resultCode,而当用户不共享时,它区分了0,所以使用Twitter可能是可能的。

你也可以看看Facebook API,看看他们是否支持这样的东西,但我还没有检查过。

对于Facebook来说,已经有一种方法:分享回电。并有成功的听众。所以,如果共享内容持续发布在用户脸书上,你可以在成功监听器上写下你的下一个动作代码。

最新更新