SamarpanCoder2002 / Generation

⭐ A Private, Secure, End-to-End Encrypted Messaging app made in Flutter(With Firebase and SQLite) that helps you to connect with your connections without any Ads, promotion. No other third-party person, organization, or even Generation Team can't read your messages. 💝
https://youtu.be/4MvZaJJ-qeE
GNU General Public License v2.0
42 stars 12 forks source link

Add Online/ Last Seen Time of a connection #9

Closed SamarpanCoder2002 closed 2 years ago

SamarpanCoder2002 commented 3 years ago

If anybody has a wish to add a new feature for a connection that is online or last seen at a time(just like WhatsApp), please request here. I will assign you for that issue and then you can start working on that.

Thank you.

agent515 commented 3 years ago

@SamarpanCoder2002 I would like to take up this issue.

PS: Assign "hacktoberfest" label to an issue and "hacktoberfest-accepted" label only to an approved/ merged PR.

SamarpanCoder2002 commented 3 years ago

@SamarpanCoder2002 I would like to take up this issue.

PS: Assign "hacktoberfest" label to an issue and "hacktoberfest-accepted" label only to an approved/ merged PR.

@agent515 Sure... Please provide your email address so that I can make you a collaborator in firebase and can assign you to that issue.

And make sure you work in a newly created different branch by yourself after fork and send a pull request from that newly created working branch.

Thank u

agent515 commented 3 years ago

@agent515 Sure... Please provide your email address so that I can make you a collaborator in firebase and can assign you to that issue.

kokate.rohit17@gmail.com

And make sure you work in a newly created different branch by yourself after fork and send a pull request from that newly created working branch.

Sure.

SamarpanCoder2002 commented 3 years ago

kokate.rohit17@gmail.com

Added you as a collaborator in the firebase project.

Some Points:

  1. After Adding the SHA1 and SHA256 keys, download the google-services.json file.
  2. I use a package encrypt. Search that in pub.dev, to know to generate a secret unique encryption key and under encryption_maker.dart file with replacing 'Encryption Unique Key'.
  3. You can generate an API key from google cloud console with enable Maps SDK for Android API, and add that API key under AndroidManifest.xml file with replacing Google-Map-API-Key.

Happy Contributing @agent515

SamarpanCoder2002 commented 3 years ago

If any doubt, check the CONTRIBUTING.md file for clearance.

Thanks

agent515 commented 3 years ago

You can generate an API key from google cloud console with enable Maps SDK for Android API, and add that API key under AndroidManifest.xml file with replacing Google-Map-API-Key.

@SamarpanCoder2002 to get the Google Maps API key, I would need a credit card. And I don't have that. If you can share a temporary Google-Maps-API key, that would be great.

SamarpanCoder2002 commented 3 years ago

You can generate an API key from google cloud console with enable Maps SDK for Android API, and add that API key under AndroidManifest.xml file with replacing Google-Map-API-Key.

@SamarpanCoder2002 to get the Google Maps API key, I would need a credit card. And I don't have that. If you can share a temporary Google-Maps-API key, that would be great.

@agent515 it's not required a credit card to use maps SDK for android with generate API key in Google Cloud Console... I have a video in my youtube channel that explained how to generate an API key with enabling Maps SDK for Android API and the process is completely free... You can try it.. It's free and very simple.

Video Link: https://youtu.be/yViWjhS2kd4?t=1118

Please check it out. Hope it helps. Thank u @agent515

agent515 commented 3 years ago

@SamarpanCoder2002

maps_sdk_problem

Now, I am figuring out how to set up a billing account without a Credit card. I will let you know.

UPDATE: After selecting Generation project in Google Cloud Console, I see Maps SDK for Android already enabled. So, no issues I guess.

SamarpanCoder2002 commented 3 years ago

@SamarpanCoder2002

maps_sdk_problem

Now, I am figuring out how to set up a billing account without a Credit card. I will let you know.

UPDATE: After selecting Generation project in Google Cloud Console, I see Maps SDK for Android already enabled. So, no issues I guess.

@agent515 I understand your problem... But that issue is not related to the Google Maps API key. You can start working without generating an API key because your work is not related to any map. Just let it be in the AndroidManifest.xml file as usual Google-Map-API-Key . https://github.com/SamarpanCoder2002/Generation/issues/9#issuecomment-932685916 -> here, you can ignore 3rd point, and considering only the first two points, you can easily start working on that issue.

Thank u @agent515

Hope you understand.

agent515 commented 3 years ago

@SamarpanCoder2002 I have completed these steps given in CONTRIBUTING.md

But still, I am getting this error.

E/FirebaseMessaging( 7444): Failed to get FIS auth token
E/FirebaseMessaging( 7444): java.util.concurrent.ExecutionException: com.google.firebase.installations.FirebaseInstallationsException: Firebase Installations Service is unavailable. Please try again later.
E/FirebaseMessaging( 7444):     at com.google.android.gms.tasks.Tasks.zzb(Unknown Source:61)
E/FirebaseMessaging( 7444):     at com.google.android.gms.tasks.Tasks.await(Unknown Source:23)
E/FirebaseMessaging( 7444):     at com.google.firebase.messaging.GmsRpc.setDefaultAttributesToBundle(com.google.firebase:firebase-messaging@@22.0.0:11)
E/FirebaseMessaging( 7444):     at com.google.firebase.messaging.GmsRpc.startRpc(com.google.firebase:firebase-messaging@@22.0.0:1)
E/FirebaseMessaging( 7444):     at com.google.firebase.messaging.GmsRpc.getToken(com.google.firebase:firebase-messaging@@22.0.0:2)
E/FirebaseMessaging( 7444):     at com.google.firebase.messaging.FirebaseMessaging.lambda$blockingGetToken$8$FirebaseMessaging(com.google.firebase:firebase-messaging@@22.0.0:1)
E/FirebaseMessaging( 7444):     at com.google.firebase.messaging.FirebaseMessaging$$Lambda$9.start(Unknown Source:4)
E/FirebaseMessaging( 7444):     at com.google.firebase.messaging.RequestDeduplicator.getOrStartGetTokenRequest(com.google.firebase:firebase-messaging@@22.0.0:6)
E/FirebaseMessaging( 7444):     at com.google.firebase.messaging.FirebaseMessaging.lambda$blockingGetToken$9$FirebaseMessaging(com.google.firebase:firebase-messaging@@22.0.0:1)
E/FirebaseMessaging( 7444):     at com.google.firebase.messaging.FirebaseMessaging$$Lambda$8.then(Unknown Source:4)
E/FirebaseMessaging( 7444):     at com.google.android.gms.tasks.zzf.run(Unknown Source:2)
E/FirebaseMessaging( 7444):     at java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1167)
E/FirebaseMessaging( 7444):     at java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:641)
E/FirebaseMessaging( 7444):     at com.google.android.gms.common.util.concurrent.zza.run(com.google.android.gms:play-services-basement@@17.1.0:6)
E/FirebaseMessaging( 7444):     at java.lang.Thread.run(Thread.java:919)
E/FirebaseMessaging( 7444): Caused by: com.google.firebase.installations.FirebaseInstallationsException: Firebase Installations Service is unavailable. Please try again later.
E/FirebaseMessaging( 7444):     at com.google.firebase.installations.remote.FirebaseInstallationServiceClient.createFirebaseInstallation(FirebaseInstallationServiceClient.java:158)
E/FirebaseMessaging( 7444):     at com.google.firebase.installations.FirebaseInstallations.registerFidWithServer(FirebaseInstallations.java:533)
E/FirebaseMessaging( 7444):     at com.google.firebase.installations.FirebaseInstallations.doNetworkCallIfNecessary(FirebaseInstallations.java:388)
E/FirebaseMessaging( 7444):     at com.google.firebase.installations.FirebaseInstallations.lambda$doRegistrationOrRefresh$2$FirebaseInstallations(FirebaseInstallations.java:377)
E/FirebaseMessaging( 7444):     at com.google.firebase.installations.-$$Lambda$FirebaseInstallations$VZq1h0TBcWNH8Y5yY86ujrFFyLo.run(Unknown Source:4)
E/FirebaseMessaging( 7444):     at java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1167)
E/FirebaseMessaging( 7444):     at java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:641)
E/FirebaseMessaging( 7444):     ... 1 more
E/FirebaseMessaging( 7444): Failed to sync topics. Won't retry sync. java.util.concurrent.ExecutionException: java.io.IOException: FIS_AUTH_ERROR

I saw Firebase API is also there in Google Cloud. Is it required somewhere in the app?

SamarpanCoder2002 commented 3 years ago

Do you done Gradle sync before running the project?? @agent515

agent515 commented 3 years ago

Do you done Gradle sync before running the project?? @agent515

Yes @SamarpanCoder2002 using command gradlew --refresh-dependencies in VS Code

SamarpanCoder2002 commented 3 years ago

Do you done Gradle sync before running the project?? @agent515

Yes @SamarpanCoder2002 using command gradlew --refresh-dependencies in VS Code

Take help from here https://flutterq.com/solved-e-firebaseinstanceid-failed-to-get-fis-auth-token/#:~:text=auth%20token%20Error%20%3F-,To%20Solve%20E%2FFirebaseInstanceId%3A%20Failed%20to%20get%20FIS%20auth%20token,from%20Firebase%20console%20%3E%20Project%20Settings%20.

Under the Android folder write gradlew clean build.

If the prb still persist, then open any build.gradle file in android studio and click on the option open editing in Android studio in new window and wait until gradle sync completed.

Hope it helps @agent515

agent515 commented 3 years ago

@SamarpanCoder2002 Sorry, I am still facing the same error. Also, I will be busy for the next 7-8 days.

So, if someone wants to give a try at solving the issue. You can assign it to them.