Ir para conteúdo
Luis Felipe Rebecca

While para cadastrar no Firebase

Recommended Posts

Olá,

 

Estou fazendo um aplicativo em android e me deparei com uma duvida na hora de salvar e exibir em uma lista, os usuários de um sistema.

 

Basicamente o app por enquanto adiciona qualquer um que voce coloque o email correto e click para executar a ação de adicionar a contato, até ai ok! tudo funcionando.

 

Agora estou precisando fazer com quem alguns usuários sejam adicionados a contatos logo que o usuário abre o app, fiz isso colocando esse método abaixo dentro do onCreate da activity principal, novamente tudo ok!

 

Por algum motivo ele não cadastra os 3 usuários que pre-defini na variável, imagino que seja algo relacionado ao EventListener ou o while não esta rodando e executando todos os trechos.

 

Obrigado desde já, fico no aguardo de uma solução!

 

*Se o processor for feito manualmente, trocando o valor do contador manualmente para 1 ou 2 ou 3 e o while for trocado para "contador == 1 ou 2 ou 3 " o código executa com perfeição e cadastra os 3 contatos.

 

    private void abrirCadastroContato() {

        String emailContato;

        emailContato = "email";

        int contador = 1;

        while (contador <=3) {

        if (contador == 1) {

            emailContato = "email1@email1.com.br";

        }

        if (contador == 2) {

            emailContato = "email1@email1.com.br";

        }


        if (contador == 3) {

            emailContato = "email1@email1.com.br";

        }

            identificadorContato = Base64Custom.codificarBase64(emailContato);

            firebase = ConfiguracaoFirebase.getFirebase().child("usuarios").child(identificadorContato);

            firebase.addValueEventListener(new ValueEventListener() {
                @Override
                public void onDataChange(DataSnapshot dataSnapshot) {

                    if (dataSnapshot.getValue() != null) {

                        //Recuperar dados do contato a ser adicionado
                        Usuario usuarioContato = dataSnapshot.getValue(Usuario.class);

                        //Recuperar identificador usuario logado (base64)
                        Preferencias preferencias = new Preferencias(MainActivity.this);
                        String identificadorUsuarioLogado = preferencias.getIdentificador();

                        firebase = ConfiguracaoFirebase.getFirebase();
                        firebase = firebase.child("contatos")
                                .child(identificadorUsuarioLogado)
                                .child(identificadorContato);

                        Contato contato = new Contato();
                        contato.setIdentificadorUsuario(identificadorContato);
                        contato.setEmail(usuarioContato.getEmail());
                        contato.setNome(usuarioContato.getNome());

                        firebase.setValue(contato);

                    } else {

                        Toast.makeText(MainActivity.this, "Usuário não possui cadastro.", Toast.LENGTH_LONG).show();

                    }


                }

                @Override
                public void onCancelled(DatabaseError databaseError) {

                }
            });

            contador ++;

    }

    }

 

 

Compartilhar este post


Link para o post
Compartilhar em outros sites

Crie uma conta ou entre para comentar

Você precisar ser um membro para fazer um comentário

Criar uma conta

Crie uma nova conta em nossa comunidade. É fácil!

Crie uma nova conta

Entrar

Já tem uma conta? Faça o login.

Entrar Agora

  • Conteúdo Similar

    • Por MarKteus
      Olá

      Ao tentar subir a aplicação recebo a msg a seguir:
      Consider defining a bean of type 'com.ern.impl.GenericDaoImpl' in your configuration.

      Alguém sabe o que pode ser? Ou como fazer?
    • Por Kelven
      Bom dia galera tudo bem?
      Eu to com um problema, vejam o código 
      if($vencimento_carne != "") { for($i=1; $i<=$parcela; $i++){ $data_vencida = date('Y-m-d', strtotime("+1 month", strtotime($vencimento_carne))); echo $data_vencida; $sql_carne = "INSERT INTO carnes(valor, data_vencimento, valor_juros, status) VALUES ('$valor_carne', '$data_vencida', 'testet', 'Pendente')"; $query_carne = mysql_query($sql_carne); } } Minha intenção é q o mês dessa variável data vencida seja + 1 para cada linha que inserir do BD, porém desse jeito que acima eles estão ficando todos iguais com a mesma data, alguém pode me ajudar a resolver isso??
    • Por scapedzn
      Olá pessoas! Estou com a seguinte dúvida. Estou fazendo um sistema que é um site onde será possível o cadastro de cursos online. O meu problema é o seguinte. O meu usuário logado salva junto com o nome do curso que ele enviou para o banco dados sua id única de cadastro. Portanto sempre quando ele adicionar qualquer curso, exemplo: aula 1 , junto com isso salva a mesma id de quando ele criou a conta dele, exemplo: 33. Sempre quando ele adicionar novo curso essa id é salva junto para eu saber qual usuário adicionou o novo curso. Porém eu gostaria de listar todos os cursos que o usuário cadastrou para ele mesmo ver. Ou seja, tenho de usar essa ID única dele para pegar todos os nomes de curso que ele adicionou. Não posso dar Select em toda a tabela pois se não ele irá trazer informações que outros usuários adicionaram. Gostaria de listar apenas as informações relacionadas diretamente com o id dele. Não sei se ficou Claro. Mas me ajudem por favor
    • Por lucas.sardelari
      Olá
      Estou tendo um problema ao compilar uma biblioteca no Android Studio pelo NDK Quando executo o comando ndk-build, um problema é lançado:
       
      Android NDK: Found platform level in ./project.properties. Setting APP_PLATFORM to android-19. Android NDK: WARNING: APP_PLATFORM android-19 is higher than android:minSdkVersion 1 in ./AndroidManifest.xml. NDK binaries will *not* be compatible with devices older than android-19. See https://android.googlesource.com/platform/ndk/+/master/docs/user/common_p roblems.md for more information. [arm64-v8a] Compile : FerrugemLib <= FerrugemLib.c In file included from jni/FerrugemLib.c:15: In file included from jni\CL/cl.h:32: jni\CL/cl_version.h:34:9: warning: cl_version.h: CL_TARGET_OPENCL_VERSION is not defined. Defaulting to 220 (OpenCL 2.2) [-W#pragma-messages] #pragma message("cl_version.h: CL_TARGET_OPENCL_VERSION is not defined. Defaulting to 220 (OpenCL 2.2)") ^ jni/FerrugemLib.c:346:1: warning: control reaches end of non-void function [-Wreturn-type] } ^ jni/FerrugemLib.c:535:1: warning: control reaches end of non-void function [-Wreturn-type] } ^ jni/FerrugemLib.c:733:25: warning: 'clCreateCommandQueue' is deprecated [-Wdeprecated-declarations] openCLObjects->queue = clCreateCommandQueue(openCLObjects->context, openCLObjects->device, 0, &err); ^ jni\CL/cl.h:1760:72: note: 'clCreateCommandQueue' has been explicitly marked deprecated here cl_int * /* errcode_ret */) CL_EXT_SUFFIX__VERSION_1_2_DEPRECATED; ^ jni\CL/cl_platform.h:91:70: note: expanded from macro 'CL_EXT_SUFFIX__VERSION_1_2_DEPRECATED' #define CL_EXT_SUFFIX__VERSION_1_2_DEPRECATED __attribute__((deprecated)) ^ jni/FerrugemLib.c:839:1: warning: control reaches end of non-void function [-Wreturn-type] } ^ jni/FerrugemLib.c:944:1: warning: control reaches end of non-void function [-Wreturn-type] } ^ jni/FerrugemLib.c:1977:1: warning: control reaches end of non-void function [-Wreturn-type] } ^ jni/FerrugemLib.c:2034:1: warning: control reaches end of non-void function [-Wreturn-type] } ^ 8 warnings generated. [arm64-v8a] SharedLibrary : libFerrugemLib.so C:/Android/Sdk/ndk-bundle/build//../toolchains/aarch64-linux-android-4.9/prebuilt/windows-x86_64/lib/gcc/aarch64-linux-android/4.9.x/../../../../aarch64-linux-android/bin\ld: cannot find OpenCL: No such file or directory clang++.exe: error: linker command failed with exit code 1 (use -v to see invocation) make: *** [obj/local/arm64-v8a/libFerrugemLib.so] Error 1 Meu Android.mk
      LOCAL_PATH := $(call my-dir)
      LOCAL_C_INCLUDES += PATH_TO_CL_FOLDER
       
      include $(CLEAR_VARS) LOCAL_MODULE := decodeYUV420SP LOCAL_SRC_FILES := decodeYUV420SP.c LOCAL_LDLIBS := -llog -ljnigraphics include $(BUILD_SHARED_LIBRARY) include $(CLEAR_VARS) LOCAL_MODULE := FerrugemLib LOCAL_SRC_FILES := FerrugemLib.c LOCAL_LDLIBS := -lOpenCL LOCAL_LDLIBS += -llog -ljnigraphics LOCAL_ALLOW_UNDEFINED_SYMBOLS := true include $(BUILD_SHARED_LIBRARY) APP_OPTIM := debug LOCAL_CFLAGS := $(call my-dir) Alguem poderia ajudar em como eu conseguir fazer dar o build com este comando: -lOpenCL
      Me propuseram a trocar o -lOpenCL por -framework OpenCL porem sem sucesso.
      Obrigado.
    • Por Solo
      estou aprendendo css e html ainda,  estou fazendo um site para praticar, porem to apanhando muito.
       
       
      Estou puxando do meu banco de dados o nome dos meus produtos juntamente com as suas imagens, para fazer uma lista visual simples ao usuario do que esta no banco.
       
      porem quando eu diminuo a tela para simular o site em um smarthphone todos os elementos ficam distorcidos...... alguem poderia me ajudar ??????? so falta isso para terminar....
       
       
      LISTA & PHP:
       
            
                      <main>
                      
                          
          <div id="listagem_produtos2">
            <?php while($linha=mysqli_fetch_assoc($resultado)) {   ?>
                          
                      <ul>
                          
                          <li><?php echo $linha["nome_produto"]?></li>
                          <li>
                              
                              <img  class="img-responsive"  height="200" width="200" src="<?php echo $linha["imagem_produto"]?>          "  >
                                   
                                   
                                      </li>
                          
                          </ul>
                      
                  <?php } ?>
                      
                      
                      
                    </div>
                      
                      </main>
                   
       
       
       
       
       
       
       
       
       
       
       
      CSS:
       
                /* estilos da listagem */
      main div#listagem_produtos2 {
          width:860px;
          margin:0 auto;
          grid-template-columns: auto;
      }
      main div#listagem_produtos2 ul {
          float:left;
          margin:5px 1px 1px;
          padding:30px;
          width:210px;
          height: 300px;
      }
      main div#listagem_produtos2 li {
          font-family: sans-serif;
          font-size: 12px;
          list-style: none;
      }
      main div#listagem_produtos2 li.imagem {
          float:left;
          margin-right: 100px;
      }
      main div#listagem_produtos2 li h3 {
          margin:10;   
      }
      main div#listagem_produtos2 li img {
          border:1px solid #ddd;   
      }
        
       
       

×

Informação importante

Ao usar o fórum, você concorda com nossos Termos e condições.