You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

安卓新手开发社交APP因缺举报拉黑功能遭Google Play下架求解决方案

解决方案思路:用户举报、内容举报及拉黑功能实现

一、核心功能拆解与实现步骤

1. 用户拉黑功能

  • 数据库结构设计:给每个用户文档新增blocked_users数组字段,存储被拉黑用户的ID。查询用户内容时,先过滤掉该数组内用户发布的内容。
  • 拉黑操作示例(以Firebase Firestore为例):
fun blockUser(currentUserId: String, targetUserId: String) {
    firestore.collection("users").document(currentUserId)
        .update("blocked_users", FieldValue.arrayUnion(targetUserId))
}
  • 内容过滤逻辑:加载动态、评论时添加查询条件,排除被拉黑用户的内容:
firestore.collection("posts")
    .whereNotIn("author_id", currentUserBlockedList)
    .get()
    .addOnSuccessListener { /* 处理返回结果 */ }

2. 内容举报功能

  • 数据库新增reports集合,每个举报文档包含:content_id(被举报内容ID)、reporter_id(举报人ID)、reason(预设举报理由,如垃圾信息、人身攻击)、timestamp(举报时间)。
  • 举报提交逻辑:
fun reportContent(contentId: String, reporterId: String, reason: String) {
    val report = hashMapOf(
        "content_id" to contentId,
        "reporter_id" to reporterId,
        "reason" to reason,
        "timestamp" to FieldValue.serverTimestamp()
    )
    firestore.collection("reports").add(report)
}
  • 后台处理:通过Firebase控制台或自建管理后台查看reports集合,对违规内容执行下架操作。

3. 用户举报功能

  • 新增user_reports集合,文档字段包括:target_user_id(被举报用户ID)、reporter_id、reason、timestamp。
  • 用户举报入口放在个人主页,提交逻辑参考内容举报:
fun reportUser(targetUserId: String, reporterId: String, reason: String) {
    val userReport = hashMapOf(
        "target_user_id" to targetUserId,
        "reporter_id" to reporterId,
        "reason" to reason,
        "timestamp" to FieldValue.serverTimestamp()
    )
    firestore.collection("user_reports").add(userReport)
}

二、Google Play合规注意事项

  • 举报入口要明显:在内容详情页、用户主页的右上角菜单设置清晰的"举报"选项。
  • 反馈用户操作:提交举报后显示"已收到你的举报,我们会尽快处理"的提示。
  • 拉黑效果要彻底:被拉黑用户无法给当前用户发消息,不会出现在推荐列表、动态流中。

三、调试与测试建议

  • 测试环境模拟拉黑操作,验证动态流是否正确过滤被拉黑用户内容。
  • 提交测试举报,检查数据库是否正确写入记录,手动模拟后台处理流程(如下架违规内容)。
  • 功能完成后整理合规说明,重新提交Google Play时备注已补充要求的功能。

内容的提问来源于stack exchange,提问作者RAOUF AHMED

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.08.10 14:15:35