2010-11-11 62 views
10

我已经发表了Android应用在这里你可以看到特定对象和有关它们的详细信息的列表。该列表每天都会更改,但其中一些对象可能会再次出现。 应用程序通过HTTP与PHP服务器进行通信,并定期提取对象列表。如何评论/评级系统最好添加到Android应用

我现在计划扩展应用使人们有可能的对象和添加类似于它是如何在Android市场上做了评论。我想避免强制用户注册一个可以发表评论的帐户。

我看到两个问题:

  • 注释系统可以通过垃圾邮件发送者
  • 注释可以从另一个系统

加入被滥用,所以我的问题是:

  • 如何保护系统免受垃圾邮件
  • 如何验证与服务器的应用程序?
  • 如何将评论数限制为每个用户和对象一个?
  • 怎么样的机器人设备ID?它的独特性足以将其用作用户的标识符吗?
  • 你看看还有哪些问题?

回答

2

对于身份验证,您可以使用OpenID,如StackOverflow或Facebook authentication。一旦你有他们的身份验证,它很容易将每个用户每个对象的评论数量限制为一个。就垃圾邮件而言,您可以遵循StackOverflow的模型,并允许用户投票评论上或下或标记为垃圾邮件。用户评论已被投票的用户可能拥有更多的权力,并可以将评论标记为垃圾邮件。

+4

请不要使用(仅)Facebook认证。并非每个人都有或想要使用Facebook。 – Jess 2010-11-11 18:50:23

+0

是否有一种用户友好的方式来使用Android(1.6)应用程序中的OpenID进行身份验证? – Tom 2010-11-11 23:20:01

2

您需要某种速率限制。 I've used this one in this example before.

因此,您需要一张带有用户ID和已离开多少个api电话的表格,以及最后一次api电话的时间。然后使用算法在每次调用方法时更新表中的值。

7

您可以尝试Socialize SDK这是一个开源的和一个非常好的SDK的评级和评论你正在寻找。它已经内置了一个功能完善的评论系统,以及一个“喜欢/喜欢”的工具,并分享给FB和Twitter。每个“实体”(您的案例中的对象)都可以具有与其关联的元数据。所以你所要做的就是构建/使用一个评级小部件,然后用附加到你的对象的实体发送该评级。显示您的评分/评论与从Socialize中检索评分/评论一样简单。

每个对象(来自您的应用的元素)都应该与一个实体相关联,该实体具有URL形式的唯一键 - 有点像识别您的项目的主键。该实体可以具有元数据 - 您可以代表对象插入的任何数据。一旦你这样做,你可以随时检索元数据。

我一直在使用Socialize大约一年。他们在这段时间里已经成熟,并始终渴望成为他们所做的最好的事情。这里是我的应用程序的链接,如果你想看到社会化的行动 - Constitution of India

看看底部的社交酒吧。它可以根据您的需求进行定制。

Constitution of India

更重要的是 - 社交是免费的。

至于你的问题:

  1. 有内置的社交网络组件 评论审核,您可以过滤掉任何你觉得是不合适的。
  2. Socialize可让您通过Facebook和Twitter进行身份验证。
  3. 限制每个用户的评论可以通过使用他们的用户 和评论API来实现。
  4. Socialize既具有匿名身份验证功能,也具有社交身份证验证功能 。我相信你可以删除匿名身份验证。因此, 确保每个用户在评级/评论前都经过身份验证。
+0

hello @ ashok-felix does Socialize仍在工作我已检查他们的网站似乎没有完全正常工作 – HassanBakri 2016-10-04 14:08:21

+0

是的,它是afaik。我检查了他们的Github活动,最后更新显示18小时前:P https://github.com/socialize – 2016-10-04 14:12:24

+0

yup其活动 但他们的网站不允许我注册(非常重要的一步...我认为) 这个问题存在4个多月了https://getsatisfaction.com/socialize/topics/error-500-while-registering – HassanBakri 2016-10-05 13:53:52

0

通过这个阅读,我觉得应该可以创造任何情况下的UUID: http://android-developers.blogspot.de/2011/03/identifying-app-installations.html

然后保持它是硬编码的隐藏API密钥,或至少获得的每次计算的相同或受到使用时间影响的谜风格。但是你永远不能确定,它不会被黑客/黑客发现并且可能被滥用,你将永远存在这个问题。

用user + api-key的UUID进行验证。