Example #1
0
        /**
         * Este método irá apresentar na tela as atuais mensagens cadastadas no cartão
         *
         * @param ndef = contém as informações do cartão que acabou de ser lido.
         *
         * @exception IOException
         * @exception FormatException
         * @exception Exception
         *
         * */
        private void ReadFromNFC(Ndef ndef)
        {
            string mensagem;
            string idCartao;
            long   tempoExecucao;

            try
            {
                // Recebe a leitura das atuais mensagens cadastradas no cartão
                mensagem = nfcLeituraGravacao.RetornaMensagemGravadaCartao(ndef);
                idCartao = nfcLeituraGravacao.IdCartaoHexadecimal();

                // Recebe o tempo total de execução da operação de leitura
                tempoExecucao = nfcLeituraGravacao.RetornaTempoDeExeculcaoSegundos();

                if (mensagem.Equals(""))
                {
                    mTvMessage.Text = "Não existe mensagem gravada no cartão";
                }
                else
                {
                    mTvMessage.Text = "ID Cartão: " + idCartao + "\n" + mensagem +
                                      "\n\nTempo de execução: " + tempoExecucao + " segundos";
                }
            }
            catch (IOException e) {
                Toast.MakeText(Activity, e.Message, ToastLength.Long).Show();
                //Toast.MakeText(this.ApplicationContext, "Tipo de cartão não suportado.", ToastLength.Short).Show();
            }catch (FormatException e) {
                Toast.MakeText(Activity, e.Message, ToastLength.Long).Show();
            }
            catch (Exception e) {
                Toast.MakeText(Activity, e.Message, ToastLength.Long).Show();
            }
        }
        /**
         * Este método irá grava uma nova mensagem no cartão.
         *
         * @param ndef = contém as informações do cartão que acabou de ser lido.
         * @param message  = mensagem que será gravada no cartão
         *
         * @exception IOException
         * @exception FormatException
         *
         * @return boolean = Sinalize que a mensagem foi gravada
         *
         * */
        private bool WriteToNfc(Ndef ndef, string message)
        {
            bool retorno = false;

            try
            {
                retorno = nfcLeituraGravacao.GavarMensagemCartao(ndef, message);

                if (retorno)
                {
                    editProcesso.Text = "Código ID:" + nfcLeituraGravacao.IdCartaoHexadecimal() +
                                        "\nCódigo gravado: " + message + "\n";
                }
                else
                {
                    editProcesso.Text = "Falha ao gravar mensagem";
                }
            }
            catch (FormatException e)
            {
                Toast.MakeText(Activity, e.Message, ToastLength.Long).Show();
            }
            catch (IOException e)
            {
                Toast.MakeText(Activity, e.Message, ToastLength.Long).Show();
            }
            catch (Exception e)
            {
                Toast.MakeText(Activity, e.Message, ToastLength.Long).Show();
            }
            finally
            {
                mProgress.Visibility = ViewStates.Gone;
            }
            return(retorno);
        }