Why is Firebase based app not working in Iran?

By my friends, I know that many things are filtered in Iran. Some filters are by government ( porn sites or some social media sites) and some are by sanctions ( some technological tools). This which you are facing now is a sanction.

For browsers: he has to go into incognito to avoid any previous caches and also Yes use a VPN.

As for the app: it depends, would firebase.google know about the IP address of where it was originated? if so then yes it won't be able to work and you must somehow think of some local service or somehow incorporate a VPN into your app.
I recommend you seek consultation from your client, it's really not your responsibility and I assure you that this isn't a huge problem, there must be plenty of workarounds that you just don't know of.

EDIT: It seems that there is an Iranian alternative to Firebase. It's called Pushe.


google does not provide their service to Iran,Cuba,North Korea,Syria and Crimea. in terms of Policy page

The Software is controlled by U.S. Export Regulations, and it may be not be exported to or used by embargoed countries or individuals.

so the Problem is USA Government


I have the same problem with FireBase (only in android)

This is the exact exception I'm getting:

signInWithEmail
                                                      com.google.firebase.FirebaseException: An internal error has occured. [ This service is not available from your country ]
                                                          at com.google.android.gms.internal.zzacq.zzbN(Unknown Source)
                                                          at com.google.android.gms.internal.zzacn$zzg.zza(Unknown Source)
                                                          at com.google.android.gms.internal.zzacy.zzbO(Unknown Source)
                                                          at com.google.android.gms.internal.zzacy$zza.onFailure(Unknown Source)
                                                          at com.google.android.gms.internal.zzact$zza.onTransact(Unknown Source)
                                                          at android.os.Binder.execTransact(Binder.java:446)                                       at com.google.android.gms.internal.zzact$zza.onTransact(Unknown Source)
                                                          at android.os.Binder.execTransact(Binder.java:446)

I guess it's clear that fire base won't work in Iran.

And here I thought it was going to be available for everyone!