Você está na página 1de 6

o de C Utilizac a odigos QR em Dispositivos M oveis para Cadastro e es Pessoais Compartilhamento Autom atico de Informac o

Izabela A. M. dos Santos, Luis Fernando D. do Amaral, Priscila H. Inoue, Aparecido Nilceu Marana e Andr e Marcelo Farina o - Faculdade de Ci Departamento de Computac a encias Universidade Estadual Paulista - UNESP Av. Eng. Luiz Edmundo Carrijo Coube, 14-01 17033-360, Bauru - SP Resumo
The use of mobile devices, such as smartphones and tablets, is growing rapidly in Brazil and around the world, often coming to replace the traditional portable computers. The resources available on a particular mobile device, as well its applications, are crucial to its success with the consumers. Among the many applications that have been recently proposed for mobile devices are those based on the QR codes, a technology that has gained much notoriety in the last few years. The goal of this work was to propose and develop a QR code application able to register and share automatically personal information through mobile devices. The application was developed and showed to be effective and able to help users to register and share their personal data among other people. um dos fatores que contriciais e enderec os eletr onicos e buiu para esse aumento no mercado, particularmente na ca o, que utiliza intensamente mada mais jovem da populac a esses dispositivos para estar conectada. O objetivo desse trabalho foi fazer uma revis ao da litera o em tura sobre os c odidos QR e seu potencial para utilizac a dispositivos m oveis, como tablets e smartphones, para ap os, es para esses tipos de disposipropor e desenvolver aplicac o es propostas e desenvolvidas, destivos. Dentre as aplicac o tacamos a destinada para facilitar o cadastro e o comparti es pessoais. Esta aplicac o pode ser lhamento de informac o a utilizada pelos usu arios de dispositivos m oveis que desejam divulgar seus dados pessoais para contatos posteriores ou para facilitar o acesso ao seu perl nas redes sociais, o de textos, tarefa esta dessem a necessidade de digitac a confort avel de ser realizada em dispositivos m oveis, devido aos tamanhos reduzidos dos teclados. Existem v arias plataformas para desenvolvimento de aplicativos para dispositivos m oveis, como Symbian, Sun JME e o Windows Mobile. Neste projeto opo tamos pelo uso da plataforma Android [2, 3]. A adoc a desta plataforma se deveu ao fato desse sistema operacional ser um software livre e de c odigo aberto, al em de estar sendo rapidamente adotado por v arios segmentos da sociedade, tais como a comunidade de desenvolvedores de es, a ind aplicac o ustria de dispositivos m oveis, os fornecedores de software, as empresas de telefonia m ovel, e muitos outros. Al em disso, a plataforma adota a lingua o Java que e robusta, de f gem de programac a acil sintaxe o a objee possui total suporte ao paradigma de orientac a tos. o desenvolvida tem como p A aplicac a ublico alvo a ex o que atualmente utiliza dispressiva parcela da populac a ` Internet e a ` s redes sociais, positivos m oveis para acesso a ou que simplesmente deseja manter atualizada a sua lista

o 1. Introduc a
um c O C odigo QR e odigo de barras bidimensional, criado em 1994 por uma empresa japonesa, a Denso Wave, uma empresa subsidi aria da Toyota. Seu nome vem de Quick Response (resposta r apida), pois seu c odigo pode ser interpretado rapidamente [1]. Al em de ter uma capacidade de armazenamento de es maior do que os c informac o odigos em barras tradicio tamb nais, o c odigo QR e em resistente a danos e sujeira, e o e sua a rea de impress peleg vel em qualquer direc a ao e quena. es de c Muitas aplicac o odigos QR desenvolvidas recentemente s ao destinados a dispositivos m oveis, como os ltimos anos o consumo de smartphosmartphones. Nos u nes cresceu de maneira signicativa, tanto no mercado bra mbito internacional. O acesso a redes sosileiro quanto no a

o tamb de contatos pessoais. A aplicac a em permite o registro e o compartilhamento f acil e moderno dos pr oprios dados pessoais do usu ario com outras pessoas do seu c rculo social.

2. C odigos QR
Os c odigos QR, tamb em conhecidos como 2D Codes, ou o dos QR Codes, podem ser considerados como a evoluc a c odigos de barras comuns. Diferentemente desses, que possuem somente uma dimens ao, os c odigos QR s ao c odigos de 2 dimens oes, representados por matrizes. Apesar do seu desenvolvimento em 1994, foi apenas em 2002 que um celular com leitor de c odigo QR foi lanc ado. De uso comum em pa ses como Jap ao, os c odigos QR t em uma capacidade es muito maior do que os de armazenamento de informac o c odigos de barras. Na Figura 1 pode-se observar um exemplo de c odigo QR.

Figura 2. Estrutura do codigo QR (Adaptado de [1].

o de distorc es Alignment pattern: Permite a correc a o locais; Quiet Zone: S ao as margens de folga presentes nos quatro lados do c odigo QR. Auxilia no reconhecimento r apido e preciso da imagem. Os outros tr es elementos presentes nos c odigos QR rea de codicac o [1]: comp oem a a a Format Information: Indica a vers ao do c odigo, o o de erro e a m n vel de correc a ascara de padr ao. es Separator information: separador das informac o contidas no c odigo QR;

Figura 1. Exemplo de codigo QR

Data area: onde efetivamente os dados originais s ao dispostos de maneira codicada.

o do C 2.2. Codicac a odigo QR 2.1. Estrutura do C odigo QR


Os c odigos QR possuem sete elementos em sua estrutura: nder pattern, timing pattern, alignment pattern, quiet zone, format information, separator information e data area [1]. o de cada um Na Figura 2 pode-se visualizar a localizac a dos sete elementos dentro do c odigo QR. Dentre os sete elementos que comp oem o c odigo QR, es espec quatro possuem func o cas [1]: Finder pattern: constitui uma das caracter sticas que mais distinguem os c odigos QR. Essa regi ao possibi ngulo. A velolita a leitura do c odigo em qualquer a o do c cidade na decodicac a odigo se deve a esse elemento; Timing pattern: S ao linhas pontilhadas que ligam os nder patterns tanto na horizontal quanto na vertical. Permitem que c odigos QR provenientes de imagens es no tom ou com distorc es possam ser com alterac o o reconhecidos; o do c As primeiras etapas na codicac a odigo QR s ao: o de erro e o tipo determinar a vers ao, o n vel de correc a de dados que ser ao armazenados, tais como, caracteres num ericos e alfanum ericos. A capacidade de armazena es. mento depende dessas informac o a determinac o dos tipos de daA primeira etapa e a dos que ser ao armazenados. S ao utilizados 4 bits para a o bin o. Seguem abaixo os representac a aria dessa informac a c odigos correspondentes [4]: Caracteres num ericos: 0001 Caracteres alfanum ericos: 0010 Bytes: 0100 Caracteres japoneses: 1000 armazenado um indicador de contaPosteriormente, e gem de caractere que varia conforme o tipo de dados contidos no c odigo como descrito abaixo [4]: Caracteres n umericos: 10 bits Caracteres alfan umericos: 9 bits

Bytes: 8 bits Caracteres japoneses: 8 bits a codicac o dos dados em uma A pr oxima etapa e a o bin representac a aria. Com caracteres num ericos os dados codicado em s ao agrupados a cada 3 d gitos e cada bloco e o bin uma representac a aria de 10 bits. converCom caracteres alfanum ericos, cada caractere e tido em um valor de acordo com a Figura 3. Ent ao os dados s ao agrupados a cada dois caracteres, o primeiro valor multiplicado por 45 e somado ao segundo valor e o ree armazenado em uma representac o bin sultado e a aria de 11 bits [4].

o da largura do c Determinac a odigo QR; o do format information para o descobri Decodicac a es referentes a ` vers mento das informac o ao do c odigo, o de erro e o padr o n vel de correc a ao de m ascara; Os dados s ao decodicados de acordo com o n vel de o de erros a m correc a ascara de padr ao presente no for o texto armat information. O resultado do processo e mazenado no c odigo QR apresentado de maneira decodicada [1]. Nesse trabalho, a biblioteca Processing QR Code o do c Library foi utilizada para a decodic a odigo QR. Esta biblioteca suporta desenvolvimento para Java (J2SE, o J2ME MIDP2.0/CLDC1.0) e possui capacidade de correc a de erros por c odigos Reed- Solomon e c odigos BCH [6].

3. Android
ltimos anos surgiram v Nos u arias plataformas destinadas es para dispositivos m ao desenvolvimento de aplicac o oveis, dentre as quais destacam-se: Symbian, Sun JME, Windows Mobile e o Android. O Android foi escolhido neste trabalho es devido ao seu SDK para o desenvolvimento das aplicac o (Software Development Kit), que facilita o trabalho dos desenvolvedores junto com as API (Application Programming Interface), e ao fato de ser open source e possuir um mercado aquecido. Trata-se de um sistema operacional para dis es como uma plapositivos m oveis que proporciona aplicac o taforma de trabalho. Inicialmente produzido pela Google, mantido pela OHA (Open Handset Allihoje, o Android e ance), um grupo que conta com mais de 30 empresas. O Android inclui um sistema operacional, um middleware e um conjunto de aplicativos importantes. Diversos fabricantes de aparelhos est ao aderindo ao Android, o caso da HTC, Motorola, Samsung e Sony Ericscomo e son; isso se deve ao fato do Android ser visto como o melhor para todos os tipos de usu arios, tanto aqueles com pouca experi encia de uso, como para os que es e conhecem a platausam a maior parte de suas func o forma a fundo a ponto de conseguirem desenvolver novas es. aplicac o O desenvolvimento para dispositivos que utilizem o Sis facilitado pela exist tema Operacional Android e encia do Android SDK, um kit de desenvolvimento com APIs e fer o de aplicativos em ramentas necess arias para a construc a Linguagem Java. O Android SDK pode ser executado em linha de comando, utilizando VI ou Imax, como pode ser executado em IDEs como Eclipse, Netbeans, Intellije, dentre outras [2]. Atualmente, a maior parte dos desenvolvedores utiliza o ` exist Eclipse, devido a encia de um plugin customizado chamado Android Development Tool. A IDE Motodev, desenvolvida pela Motorola, foi utilizada no presente trabalho

de valores Figura 3. Tabela de conversao para gerac ao de codigo QR [4].

agrupado de oito em oito bits. Se a quantiO c odigo e dade de bits n ao for m ultiplo de oito s ao adicionados zeros. usado o algoritmo Reed-Solomon [5] No c odigo QR e o de erros. Depois de aplicado o algoritmo e para correc a o dos dados que depende da vers realizada a alocac a ao do o de erros. c odigo e do n vel de correc a a selec o da m A pr oxima etapa e a ascara a ser utilizada. Existem oito poss veis m ascaras que geram, consequentemente, oito c odigos QR diferentes. es contidas Para nalizar s ao adicionadas as informac o o de no format information que incluem o n vel de correc a erro e um indicador da m ascara utilizada.

o do C 2.3. Decodicac a odigo QR


o A seguir s ao apresentados os passos para a decodicac a de um c odigo QR ap os a captura da imagem: o dos nder patterns e posterior c Localizac a alculo de suas coordenadas centrais;

o dos aplicativos por possuir uma inpara a implementac a terface semelhante ao da IDE Eclipse, al em de j a vir congurada para o desenvolvimento para a plataforma Android, o para iniciantes. o que facilita a programac a

com auxilio de bibliotecas j a dispon veis no ambiente de o. Na Figura 4 est programac a a ilustrado o funcionamento o do XML e da codicac o, atrav de cadastro, gerac a a es de um diagrama de atividades.

o Proposta e Desenvolvida 4. Aplicac a


Para facilitar o armazenamento e o compartilhamento es pessoais de uma pessoa, via dispositide informac o vos m oveis, foi criado um aplicativo que permite inserir es e transferi-las a um C informac o odigo QR. o para o desenvolvimento desta aplicac o A motivac a a o de cartazes, yers e an surgiu a partir da observac a uncios existentes nas universidades, empresas, com ercio, etc. Mui es relatos an uncios de compra e venda cont em informac o tivas ao anunciante, tais como nome, enderec o, telefone, email. Na maioria das vezes, ao se deparar com essas es, as pessoas est informac o ao sem tempo e sentem-se desestimuladas para registr a-las, pois demorariam muito para digit a-las, tendo em vista o desconforto dos teclados reduzidos dos dispositivos m oveis, ou mesmo pela falta de costume. Outro fator que inuenciou a proposta desse aplicativo foi o uso cada vez mais intenso das redes sociais, principalmente no ambiente universit ario, onde esses sites s ao utili o. zados como ferramenta de comunicac a Com base nesses dois cen arios, pensou-se em uma o pr soluc a atica e moderna para o problema. Se es es fossem armazenadas em uma imagem sas informac o o usu ario poderia simplesmente fotograf a-la, utilizando as c ameras dispon veis na imensa maioria dos smartphones, ao inv es de ter que digit a-las. O armazenamento des es em um C sas informac o odigo QR foi uma proposta que se adequou perfeitamente, uma vez que tais c odidos permitem o armazenamento de uma quantidade signicativa de dados em uma imagem. Al em do m odulo que gera o c odigo QR contendo as es pessoais de um indiv informac o duo, o sistema desenvolvido possui um m odulo para decodicar o c odigo QR e direcionar o usu ario para o perl daquele indiv duo na rede social escolhida, ou, ent ao, para adicionar aquelas es aos seus contatos, bastando para isso fotograinformac o far o c odigo QR. Embora um c odigo QR seja capaz de armazenar um es, esses n umero consideravelmente grande de informac o dados cam dispostos de forma n ao organizada e semanticamente invi avel para serem analisados posteriormente. O impasse inicial do desenvolvimento foi determinar a forma de organizar esses dados de forma que fosse poss vel uma o an alise mais simplicada por um interpretador. A soluc a encontrada foi armazenar esses dados em um documento formato XML [7] e codic a-lo. Dessa maneira o aplicativo poderia trabalhar com dados de forma simplicada,

Figura 4. Diagrama de atividades de gerac do Codigo Aplicac ao ao QR.

da

o pode ser acessada atrav A aplicac a es do menu principal em um dispositivo m ovel, na plataforma Android, conforme est a ilustrado na Figura 5. Foi criada uma interface es inicial do sistema para permitir o cadastro das informac o pessoais dos indiv duos. Para tal, foi utilizada uma API da linguagem Java chamada ZXing (disponibilizada pelo Google). Selecionando o aplicativo, o usu ario deve entrar com es conforme a tela que est suas informac o a ilustrada na Figura 6. No campo nome ele deve entrar com seu nome completo, no campo telefone seu celular ou telefone xo, em Fa necess cebook e ario adicionar a URL de seu perl no site,

do Aplicativo no Aparelho Figura 5. Selec ao Android.

em Id Twitter necessita-se do nome de usu ario utilizado no Twitter e no campo email preenche-se com seu enderec o de email.

Figura 6. Tela de Cadastro de Informac oes.

no campo nome. Conclu das essas etapas, o usu ario pode acessar seu c odigo QR pessoal entrando no diret orio exibido na mensagem. Essa imagem pode ser enviada por email, mensao e gem, Bluetooth ou impressa para posterior decodicac a acesso a seus dados. o de um A etapa seguinte do projeto consistiu na criac a aplicativo para decodicar o c odigo QR e exportar os dados ` lista de contatos do dispositivo m a ovel do usu ario, de modo que ele s o precise salv a-lo. Al em disso, o aplicativo cont em es que tornam mais f o do usu opc o acil a navegac a ario em redes sociais, para acessar o perl da pessoa cujos dados est ao es armazenados no c odigo QR. Para tal, foram criadas opc o que o redirecionassem ao perl do Facebook ou que mos ltimas postagens do Twitter. trassem as u ` aplicac o de criac o do C De modo contr ario a a a odigo QR, o e respons essa aplicac a avel por criar um arquivo XML a partir de uma imagem codicada. Esse XML facilita a o dos dados cadastrados. Podemos visualizar o manipulac a funcionamento do aplicativo atrav es do diagrama de atividades que est a ilustrado na Figura 7. o e poss Nessa aplicac a vel obter imagem da c amera ou obter imagem do SDCard. Caso o usu ario escolha a pri o ele deve fotografar um C meira opc a odigo QR gerado pelo o. Se selecionar a opc o de obter aplicativo de codicac a a imagem do SDCard ele necessitar a digitar o nome da imagem, s o ent ao ela ser a aberta. o do C Ap os escolher o modo de obtenc a odigo QR, a decodicada e o usu redirecionado a uma imagem e ario e es. tela com tr es opc o o o usu Escolhendo a primeira opc a ario ser a redirecionado ao browser e a url com o perl de conta do Facebook o os dados conser a carregado. Caso escolha a segunda opc a tidos no c odigo QR ser ao exportados para a agenda de contatos do celular. Selecionando a terceira, uma nova tela do ltimas postagens aplicativo ser a apresentada mostrando as u importante ressaltar que para que a do usu ario no Twitter. E o funcionem adequadamente e neprimeira e segunda opc a ` internet. cess ario estar conectado a ` s propostas Aplicativos com funcionalidades parecidas a neste trabalho foram desenvolvidos recentemente. Dentre os de maior import ancia destaca-se o Social QR Code [8]. poss Atrav es do site e vel se cadastrar e gerar C odigos QR com conte udo que redireciona a sites pessoais como Facebook ou Youtube. O aplicativo tem grande apelo comercial, o de pois seu foco s ao as empresas que buscam a divulgac a seus produtos.

es Finais 5. Considerac o
o Gerar, uma mensaQuando o usu ario escolhe a opc a exibida indicando o local onde a imagem gem de sucesso e a pasta Meus Arquivos do aparefoi salva, que por padr ao e o cadastrado lho, e o nome da imagem com o C odigo QR e Neste artigo apresentamos os detalhes de um sistema de vis ao computacional que foi projetado e desenvolvido para permitir o cadastro e o compartilhamento f acil de

ter. Com o uso desse aplicativo espera-se propiciar uma maior praticidade ao cotidiano das pessoas de um modo ge es, de pessoas ral, pois o compartilhamento de informac o f sicas ou jur dicas, pode ser facilitado e pode apresentar uma menor incid encia de erros. O uso do aplicativo pode es privadas, que podem compartrazer benef cio a instituic o o e informac es de contato de tilhar p aginas de divulgac a o maneira interativa e simplicada por meio de an uncios. importante ressaltar ainda a utilidade do aplicativo E para pessoas n ao familiarizadas com os diferentes teclados de dispositivos m oveis e tamb em para aquelas pessoas com deci encias f sicas ou motoras, que teriam muita dicul o de textos. Portanto, em nossa avaliac o, dade na digitac a a til e pr o sistema, al em de u atico, contribui tamb em para au` s novas tecmentar a assessibilidade e inclus ao das pessoas a nologias.

Refer encias
[1] Kato, H., Tan, K. T. and Chai, D. Barcodes for Mobile Devices. Cambridge University Press, 2010. ISBN:9789521888394. [2] Pereira, L. C. O.; Silva, M. L. Android para desenvolvedores. Rio de Janeiro: Brasport, 2009. ISBN-10: 8574524050 [3] Android. Android Developer Guide. Dispon vel em: http://developer.android.com/guide/index.html. Acesso em 05/05/2012. [4] Swetake, Y. How to create QRCode. 4 fev. 2007. Dispon vel em: http://swetake.com/qr/qr1 en.html. Acesso em 08/05/2011. [5] Reed, I. S. and Solomon, G., Polynomial codes over certain nite elds, Joint Society of Industrial and Applied Mathematics Journal 8 (1960), no. 2, 300-304. [6] Open Source QR Code Library, 2007. Dispon vel em: http://qrcode.sourceforge.jp/index.html.en. Acesso em 02/06/2011. [7] Hunter, D. Beginning XML: Programmer to Programmer, o, 2004. ISBN 9780764570773. Editora Wiley, 3a. Edic a [8] SOCIAL QR CODE, 2011. Dispon vel em: http://www.socialqrcode.com/. Acesso em 30/04/2012.

Figura 7. Diagrama do funcionamento da de Decodicac Aplicac ao ao.

es pessoais entre indiv informac o duos usu arios de dispositivos m oveis, como smartphones e tablets, por meio de o do sistema implementado, emc odigos QR. A utilizac a bora tenha sido realizada apenas em car ater experimental, j a nos permite concluir que os objetivos trac ados foram o autom alcanc ados, pois o sistema permite a gerac a atica dos es pessoais de indiv c odigos QR contendo informac o duos o dos c e, ap os, possibilita a decodicac a odigos QR, com a o de armazenamento nos registros de contato do disopc a positivo m ovel do usu ario ou de acesso f acil e autom atico ao perl do indiv duo nas redes sociais Facebook ou Twit-

Você também pode gostar