Giter VIP home page Giter VIP logo

flutter-chat-app's Introduction

Flutter Chat App

A one-to-one chat app built on Flutter with firebase authentication and image sharing capability.

For help getting started with Flutter, view the online documentation.

You can check out the corresponding Google code lab here.

Demo

Demo

Watch the full video here

Getting Started

Note: Make sure your Flutter environment is setup.

Installation

In the command terminal, run the following commands:

$ git clone [email protected]:rohan20/flutter-chat-app.git
$ cd flutter-chat-app/
$ flutter run

Simulate for iOS

Method One

Open the project in Xcode from ios/Runner.xcodeproj.
Hit the play button.

Method Two

Run the following command in your terminal.
$ open -a Simulator
$ flutter run

Simulate for Android

Make sure you have an Android emulator installed and running.
Run the following command in your terminal.
$ flutter run
Check out Flutter’s online documentation for help getting start with your Flutter project.

License

MIT License

Copyright (c) 2018 Rohan Taneja

Permission is hereby granted, free of charge, to any person obtaining a copy
of this software and associated documentation files (the "Software"), to deal
in the Software without restriction, including without limitation the rights
to use, copy, modify, merge, publish, distribute, sublicense, and/or sell
copies of the Software, and to permit persons to whom the Software is
furnished to do so, subject to the following conditions:

The above copyright notice and this permission notice shall be included in all
copies or substantial portions of the Software.

THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE
AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER
LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,
OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE
SOFTWARE.

flutter-chat-app's People

Contributors

rohan20 avatar

Stargazers

 avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar

Watchers

 avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar

flutter-chat-app's Issues

Failed to Build iOS App

Hello,

I git cloned this repo, ran flutter packages get, and tried to build to iPhone 7 but the iOS build was a failure:

Documents/Info.plist:0: error: reading data: The file “Info.plist” couldn’t be opened because there is no such file.

How did u receive msg at background when back to homescreen

Hey, you did a good job, I am also wanna build a chat app, but more complicated, I am facing 2 problems:

  1. receving msg when switch different tab (I have 2 tabs);
  2. receviing msgs when app goes to background

Now for the first quesition, the msg will always repeat receive when setState called, and seconds has no clue to do this (BTW I using my own chat server side )

Any way to update the packages

Hi,
I have updated the packages to the latest version but its seems the app broken.. any way to fix that?

`Compiler message: lib/ChatScreen.dart:56:32: Error: The argument type 'ChatMessageListItem Function(BuildContext, DataSnapshot, Animation)' can't be assigned to the parameter type 'Widget Function(BuildContext, DataSnapshot, Animation, int)'.

  • 'ChatMessageListItem' is from 'package:flutter_chat_app/ChatMessageListItem.dart' ('lib/ChatMessageListItem.dart').
  • 'BuildContext' is from 'package:flutter/src/widgets/framework.dart' ('../../flutter/packages/flutter/lib/src/widgets/framework.dart').
  • 'DataSnapshot' is from 'package:firebase_database/firebase_database.dart' ('../../flutter/.pub-cache/hosted/pub.dartlang.org/firebase_database-3.1.1/lib/firebase_database.dart').
  • 'Animation' is from 'package:flutter/src/animation/animation.dart' ('../../flutter/packages/flutter/lib/src/animation/animation.dart').
  • 'Widget' is from 'package:flutter/src/widgets/framework.dart' ('../../flutter/packages/flutter/lib/src/widgets/framework.dart').
    itemBuilder: (_, DataSnapshot messageSnapshot, ^ lib/ChatScreen.dart:133:59: Error: The getter 'future' isn't defined for the class 'StorageUploadTask'. - 'StorageUploadTask' is from 'package:firebase_storage/firebase_storage.dart' ('../../flutter/.pub-cache/hosted/pub.dartlang.org/firebase_storage-3.1.1/lib/firebase_storage.dart').
    Try correcting the name to the name of an existing getter, or defining a getter or field named 'future'. Uri downloadUrl = (await uploadTask.future).downloadUrl; ^^^^^^ lib/ChatScreen.dart:199:18: Error: The method 'signInWithGoogle' isn't defined for the class 'FirebaseAuth'.
  • 'FirebaseAuth' is from 'package:firebase_auth/firebase_auth.dart' ('../../flutter/.pub-cache/hosted/pub.dartlang.org/firebase_auth-0.15.4/lib/firebase_auth.dart').
    Try correcting the name to the name of an existing method, or defining a method named 'signInWithGoogle'. await auth.signInWithGoogle( ^^^^^^^^^^^^^^^^ Target kernel_snapshot failed: Exception: Errors during snapshot creation: null build failed. FAILURE: Build failed with an exception. * Where: Script '/Users/Mohammed/Development/flutter/packages/flutter_tools/gradle/flutter.gradle' line: 817 * What went wrong: Execution failed for task ':app:compileFlutterBuildDebug'. > Process 'command '/Users/Mohammed/Development/flutter/bin/flutter'' finished with non-zero exit value 1
    * Try: Run with --stacktrace option to get the stack trace. Run with --info or --debug option to get more log output.
    * Get more help at https://help.gradle.org BUILD FAILED in 2m 59s Running Gradle task 'assembleDebug'... Running Gradle task 'assembleDebug'... Done 180.9s (!)
    Gradle task assembleDebug failed with exit code 1`

Is there pagination of messages?

As the app grows, if you just use a direct database to chat page thing, then the more messages are texted, the more expensive it gets.

Running failed

Running "flutter packages get" in flutter-chat-app...
The current Dart SDK version is 2.1.0-dev.3.1.flutter-760a9690c2.

Because flutter_chat_app depends on firebase_analytics 0.0.4 which requires SDK version >=1.8.0 <2.0.0, version solving failed.
pub get failed (1)

Search Page

If there would be a page for searching it would be great!

chat issue

FAILURE: Build failed with an exception.

  • What went wrong:
    Execution failed for task ':app:preDebugBuild'.

Android dependency 'com.android.support:support-fragment' has different version for the compile (26.1.0) and runtime (27.1.1) classpath. You should manually set the same version via DependencyResolution
While we changing the version 'com.android.support.-v4 ' is comming in flutter

Doesn't run on iOS

The domain/default pair of (/Users/rohantaneja/FlutterProjects/flutter_chat_app/ios/Runner/Info, CFBundleIdentifier) does not exist
No application found for TargetPlatform.ios.
Is your project missing an ios/Runner/Info.plist?
Consider running "flutter create ." to create one.

how to build apk?

Initializing gradle... 1.7s
Resolving dependencies...

  • Error running Gradle:
    ProcessException: Process "G:\FlutterSource\HelloFlutter\android\gradlew.bat"
    exited abnormally:
    Starting a Gradle Daemon, 2 incompatible and 1 stopped Daemons could not be
    reused, use --status for details

Configure project :app
google-services plugin could not detect any version for com.google.android.gms
or com.google.firebase, default version: 9.0.0 will be used.
please apply google-services plugin at the bottom of the build file.
WARNING: Configuration 'compile' is obsolete and has been replaced with
'implementation' and 'api'.
It will be removed at the end of 2018. For more information see:
http://d.android.com/r/tools/update-dependency-configurations.html
registerResGeneratingTask is deprecated, use
registerGeneratedResFolders(FileCollection)
registerResGeneratingTask is deprecated, use
registerGeneratedResFolders(FileCollection)
registerResGeneratingTask is deprecated, use
registerGeneratedResFolders(FileCollection)
registerResGeneratingTask is deprecated, use
registerGeneratedResFolders(FileCollection)
registerResGeneratingTask is deprecated, use
registerGeneratedResFolders(FileCollection)

FAILURE: Build failed with an exception.

  • What went wrong:
    The Android Gradle plugin supports only Kotlin Gradle plugin version 1.2.51 and
    higher. Project 'android' is using version 1.1.51.

  • Try:
    Run with --stacktrace option to get the stack trace. Run with --info or --debug
    option to get more log output. Run with --scan to get full insights.

  • Get more help at https://help.gradle.org

BUILD FAILED in 1m 42s
Command: G:\FlutterSource\HelloFlutter\android\gradlew.bat app:properties

Please review your Gradle project setup in the android/ folder.

Future subtype error

Error while starting the app:
type 'Future<dynamic>' is not a subtype of type 'Future<int>'

uri error

Uri downloadUrl = (await uploadTask.future).downloadUrl;

in that the uploadTask.future is not working. Or they said the future getter is not define for the StorageUploadTask

running failed

FAILURE: Build failed with an exception.

  • What went wrong:
    Execution failed for task ':app:preDebugBuild'.

Android dependency 'com.android.support:support-v4' has different version for the compile (26.1.0) and runtime (27.1.1) classpath. You should manually set the same version via DependencyResolution

Git clone issue

The command provided in Readme.md for git repo, says 'Permission denied' while cloning it.

The link should be [email protected]/rohan20/flutter-chat-app.git.
Notice the '/' instead of ':'

$ git clone [email protected]:rohan20/flutter-chat-app.git
$ cd flutter-chat-app/
$ flutter run

ChatMessageListItem

itemBuilder: (_, DataSnapshot messageSnapshot,
Animation animation) {
return new ChatMessageListItem(
messageSnapshot: messageSnapshot,
animation: animation,
);
},

this gives error. please tell mi solution

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. 📊📈🎉

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google ❤️ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.