Erro ao recuperar uma LatLng através do Geocoder

Estou desenvolvendo meu tcc, onde insiro estabelecimentos de minha base de dados no mapa, e estou me baseando nos cursos do Alura para fazer essa pesquisa através do Geocoder que me trás a Latitude e Longitude de um endereço. Porém estou tendo um problema, esse Geocoder ao fazer o método getFromLocationName() está sempre me retornando nulo para todos os endereço. Antes esta parte estava ok, funcionando normal, não mexi em nada e começou a dar esse problema comigo. Estou quebrando a cabeça e já pesquisei muito para tentar resolver e nada. Segue código:

package br.com.alura.searchdrink.task;

import android.app.ProgressDialog;
import android.content.Context;
import android.location.Address;
import android.location.Geocoder;
import android.os.AsyncTask;
import android.support.annotation.NonNull;
import android.util.Log;
import android.widget.Toast;

import com.google.android.gms.maps.model.BitmapDescriptorFactory;
import com.google.android.gms.maps.model.LatLng;
import com.google.android.gms.maps.model.MarkerOptions;
import com.google.firebase.database.ChildEventListener;
import com.google.firebase.database.DataSnapshot;
import com.google.firebase.database.DatabaseError;
import com.google.firebase.database.DatabaseReference;
import com.google.firebase.database.ValueEventListener;

import java.io.IOException;
import java.util.ArrayList;
import java.util.HashMap;
import java.util.List;
import java.util.Map;

import br.com.alura.searchdrink.R;
import br.com.alura.searchdrink.fragment.MapaFragment;
import br.com.alura.searchdrink.modelo.Bar;

public class TarefaDownloadLocalizacaoBares extends AsyncTask<DatabaseReference, Void, List<Bar>> {

    private final Context context;

    private List<Estabelecimento> estabelecimentos;

    private ProgressDialog progresso;

    public TarefaDownloadLocalizacaoBares(Context context){
        this.context = context;
    }

    @Override
    protected void onPreExecute() {
        Log.i("AsyncTask", "Exibindo ProgressDialog na tela Thread: " + Thread.currentThread().getName());
        progresso = ProgressDialog.show(context, "Por favor aguarde ...",
                "Baixando Estabelecimentos...");
    }

    @Override
    protected List<Bar> doInBackground(DatabaseReference... dbs) {

        estabelecimentos = new ArrayList<>();

        ValueEventListener postListener = pegaEstabelecimentos();
        dbs[0].addValueEventListener(postListener);

        synchronized (estabelecimentos){
            try {
                estabelecimentos.wait();
            } catch (InterruptedException e) {e.printStackTrace();}
        }

        return estabelecimentos;
    }


    @Override
    protected void onPostExecute(List<Estabelecimento> e) {

        if (e.size() != 0) {
            for (Estabelecimento estabelecimento : e) {
                LatLng coordenada = pegaCoordenadaDoEndereco(estabelecimento.getEndereco());
                if (coordenada != null) {
                    MarkerOptions marcador = new MarkerOptions();
                    marcador.position(coordenada);
                    marcador.title(estabelecimento.getNome());
                    marcador.snippet(String.valueOf(estabelecimento.getTelefone()));
                    marcador.icon(BitmapDescriptorFactory.fromResource(R.drawable.copocheio_mapa));
                    MapaFragment.mapa.addMarker(marcador);

                }
            }
        }

        progresso.dismiss();

    }

    private LatLng pegaCoordenadaDoEndereco(String endereco) {

        try{
            Geocoder geocoder = new Geocoder(context);

            List<Address> resultados = geocoder.getFromLocationName(endereco, 1);

            if(!resultados.isEmpty()){
                LatLng posicao = new LatLng(resultados.get(0).getLatitude(),
                        resultados.get(0).getLongitude());
                return posicao;
            }

        }catch(IOException e){
            e.printStackTrace();
        }
        return null;
    }

    @NonNull
    private ValueEventListener pegaEstabelecimentos() {
        return new ValueEventListener() {
            @Override
            public void onDataChange(DataSnapshot dataSnapshot) {

                synchronized (estabelecimentos) {

                    for (DataSnapshot snapshot : dataSnapshot.getChildren()) {

                        Map<String, Object> map = (HashMap<String, Object>) snapshot.getValue();

                        String nome = String.valueOf(map.get("nome"));
                        String endereco = String.valueOf(map.get("endereco"));
                        String telefone = String.valueOf(map.get("telefone"));
                        String site = String.valueOf(map.get("site"));
                        String email = String.valueOf(map.get("email"));
                        String tipoBar = String.valueOf(map.get("tipoBar"));

                        if (endereco != null) {
                            Estabelecimento estabelecimento = new Estabelecimento(nome, endereco, telefone, site, email, tipoBar);
                            estabelecimentos.add(estabelecimento);
                        }
                    }

                    estabelecimentos.notifyAll();

                }
            }

            @Override
            public void onCancelled(DatabaseError databaseError) {
                // Getting Post failed, log a message
                Log.w("AsyncTask", "loadPost:onCancelled", databaseError.toException());
                // ...
            }
        };
    }
}