instagram-dogy

aka dodogy

一款以狗狗为主题的 Instagram 社交网络,用于消息传递、发布动态、寻找朋友以及为狗狗世界增添色彩。

代码质量免责声明

此存储库展示了 Flutter 的各种可能性。它肯定会影响一个人
放弃原生/旧代码框架,加入 Flutter 艺术社区。

功能

  • 基于你关注的人的自定义照片流(使用 Firebase 云函数)
  • 从相机或相册发布高质量的视频和照片帖
    • 点赞帖子
    • 评论帖子
      • 查看帖子的所有评论
  • 搜索用户
  • 点赞、评论、关注等的通知
  • 动画(点赞图片时的心形动画)
  • 改进了用户资料、图片等的缓存
  • 更好的帖子创建,为你的图片添加滤镜
  • 自定义相机实现
  • Firebase 安全规则
  • 删除帖子
  • 直接消息
  • 动态
  • 个人资料页面
    • 关注/取消关注用户
    • 将图片视图从网格布局更改为流式布局
    • 添加你自己的个人简介
  • 显示最近点赞/评论的帖子以及新关注者的活动流

截图

feed example
upload photo example
go to a profile from feed
edit profile example
feed example
upload photo example
go to a profile from feed
edit profile example
feed example
upload photo example

依赖项

入门

1. 设置 Flutter

2. 克隆存储库

$ git clone https://github.com/vorishirne/instagram-dogy
$ cd instagram-dogy

3. 设置 Firebase 应用

  1. 你需要创建一个 Firebase 实例。请遵循 https://console.firebase.google.com 上的说明。
  2. 创建 Firebase 实例后,你需要启用 Google 身份验证。
  • 转到新实例的 Firebase 控制台。
  • 在左侧菜单中点击“身份验证”
  • 点击“登录方法”选项卡
  • 点击“Google”并启用它
  1. 创建云函数(用于实现 Feed 功能)
  • 使用 firebase init 创建一个新的 Firebase 项目
  • 将此项目的 functions/lib/index.js 复制到你的 Firebase 项目的 functions/index.js
  • 使用 firebase deploy --only functions 部署 getFeed 函数。在输出中,你将看到 getFeed 的 URL,请复制它。
  • feed.dart 文件中的 _getFeed 函数中,将 URL 替换为你上一步获取的云函数 URL。

你可能需要通过运行 firebase functions:log 然后点击链接来创建必要的索引

如果你没有收到任何错误,但 Feed 是空的,你必须发布照片或关注有帖子的用户,因为 getFeed 函数只返回你自己的帖子以及你关注的人的帖子。

  1. 启用 Firebase 数据库。
  • 转到 Firebase 控制台。
  • 在左侧菜单中点击“数据库”
  • 点击 Cloudstore 的“创建数据库”按钮
  • 选择“以测试模式开始”并“启用”
  1. (如果不在 Android 上运行,则跳过)
  • 为 Android 创建一个 Firebase 实例应用,包名设置为 com.yourcompany.news
  • 运行以下命令获取您的 SHA-1 密钥。

keytool -exportcert -list -v \
-alias androiddebugkey -keystore ~/.android/debug.keystore
  • 在 Firebase 控制台中,在你 Android 应用的设置中,通过点击“添加指纹”来添加你的 SHA-1 密钥。
  • 按照说明下载 google-services.json。
  • google-services.json 放入 /android/app/
  1. (如果不在 iOS 上运行,则跳过)
  • 在 Firebase 实例中为 iOS 创建一个应用,使用您的应用包名。
  • 按照说明下载 GoogleService-Info.plist。
  • 打开 XCode,右键单击 Runner 文件夹,选择“将文件添加到‘Runner’”菜单,然后选择 GoogleService-Info.plist 文件将其添加到 XCode 中的 /ios/Runner
  • 在文本编辑器中打开 /ios/Runner/Info.plist。找到 CFBundleURLSchemes 键。此键的值数组中的第二个项目特定于 Firebase 实例。将其替换为 GoogleService-Info.plist 中 REVERSED_CLIENT_ID 的值。

仔细检查两者的安装说明

下一步?

  • 点赞、评论、关注等的通知
  • 动画(点赞图片时的心形动画)
  • 改进了用户资料、图片等的缓存
  • 更好的帖子创建,为你的图片添加滤镜
  • 自定义相机实现
  • Firebase 安全规则
  • 删除帖子
  • 直接消息
  • 动态
  • 清理代码

GitHub

查看 Github