Anais do Congresso de Sistemas Operacionais do CPoli da UCPEL, VOL. 1, NO. 1, O SO Android. Marcos B. Horner, UCPEL;



Documentos relacionados
Curso online de Fundamentos em Android. Plano de Estudo

Google smartphones tablets

Apresentação Introdução Ambiente de desenvolvimento Aplicativos. Minicurso Android. Dia 1. Adão Henrique R. Justo Filho UFC - DETI 16/10/2012

Linguagem Mobile Android

Escalonamento no Sistema Operacional Android

Introdução ao ANDROID Prof. Dr. Joaquim C. Assunção

Ferramenta de Desenvolvimento Rápido

Programação para Dispositivos Móveis

Descrição geral do Android

Programação para Dispositivos Móveis

Programação para Dispositivos Móveis

Introdução ao Desenvolvimento para Dispositivos Móveis

Por dentro da plataforma móvel mais popular do mundo Rodrigo Faria

Linguagens e Técnicas de Programação III Aula 01 Introdução ao Android

FRAMEWORK PARA GERENCIAMENTO E DISPONIBILIZAÇÃO DE INFORMAÇÕES MULTIMÍDIA GEOLOCALIZADAS NA PLATAFORMA ANDROID

Módulo I - Introdução. Faculdade Christus Sistemas de Informação 24/09/2010. Carlos Eugênio Torres Engenheiro de Informática

Sistemas Embarcados Android

Programação para dispositivos móveis. Cassio Diego cassiodiego.com/m

CLIPPING SERVICE. Clipping Service 2014 Todos direitos reservados

Desenvolvedor Android: Avançado. Plano de Estudo

Android MapBr. com foco na manipulação de mapas usando interfaces de programação de aplicativos do Google

Informática Sistemas Operacionais Aula 5. Cleverton Hentz

5 Infraestrutura de TI

Curso online de Aplicações. Híbridas. Plano de Estudo


Sistemas de Informação (SI) Infraestrutra de Tecnologia da Informação (TI): Software

Apps na prática 1 Aviso Legal: Este material foi produzido e desenvolvido pela Fábrica de Aplicativos S.A para o curso presencial e online.

Introdução Dalvik Linux 2.6. Android. Diogo de Campos, João Paulo Pizani Flor, Maurício Oliveira Haensch, Pedro Covolan Bachiega

PET GAME UM JOGO DE AUXÍLIO AO APRENDIZADO DA LINGUA INGLESA PARA SO ANDROID

Setembro de P90050

Introdução ao Desenvolvimento de Aplicativos Android

ISCED Mobile Direcção Académica, Junho/2017

AULA 1 INTRODUÇÃO AO JAVA

PAINÉIS INTELIGENTES NUNCA FORAM TÃO SIMPLES

DESENVOLVENDO APLICAÇÕES MULTIPLATAFORMA PARA DISPOSITIVOS MÓVEIS UTILIZANDO IONIC E PHONEGAP

Introdução à Programação Aula 01. Prof. Max Santana Rolemberg Farias Colegiado de Engenharia de Computação

Questões de testes, revisão para a prova. Correção será feita na aula que antecede a prova. Testes Android

Sistema Operacional. Prof. Leonardo Barreto Campos. 1/30

Introdução. A quem se destina este livro. Sobre o que este livro é (e não é)

O que é o Android? O que é o Android

DANIEL ESPIAO ESPIÃO NÚMERO 1 DO BRASIL

Programa Analítico de Disciplina INF311 Programação para dispositivos móveis

Afinal, o que é Android?

PROVA 03/07 Segunda-feira (semana que vem)

Visão geral Estrutura do sistema Ferramentas de desenvolvimento Uma aplicação. Android. Universidade Federal de Santa Catarina. 17 de dezembro de 2008

SUPER HELP (SMARTPHONE / INFORMÁTICA)

Android I N T R O D U Ç Ã O À P R O G R A M A Ç Ã O P R O F E S S O R L E O N A R D O C. R. S O A R E S - L A R B A C K

Brilliant Solutions for a Safe World

Android Faixa Branca Douglas Drumond

De Olho na Pista. Documento de Arquitetura. De Olho na Pista Documento de Arquitetura Data: 23/03/2013. AJA Software

Dispositivos móveis e o mercado Android Open Handset Alliance Informações sobre Android Arquitetura

Figura 1 QR Code para o download do Cata Ciência.

Requisitos do sistema para o Qlik Sense. Qlik Sense February 2018 Copyright QlikTech International AB. Todos os direitos reservados.

Uso da plataforma Ionic para Desenvolvimento de Aplicativo Móvel

Sistemas Embarcados Android

PROGRAMAÇÃO PARA DISPOSITIVOS MÓVEIS

PROGRAMAÇÃO PARA INTERNET RICA RICH INTERNET APPLICATIONS

DESENVOLVIMENTO DE APLICATIVOS HÍBRIDOS BENEFÍCIOS E PROBLEMAS ENCONTRADOS NA UTILIZAÇÃO DESSAS TECNOLOGIAS

Paralelo Técnico Windows x Linux

Plataforma de desenvolvimento JAVA para terminal POS

INFORMÁTICA: Informação automática

PROGRAMAÇÃO PARA DISPOSITIVOS MÓVEIS

Introdução a Computação Móvel

Fundamentos de Sistemas Operacionais de Arquitetura Aberta. CST em Redes de Computadores

Curso online de. Formação em Front-End. Plano de Estudo

Aplicativo Mobile Férias - Manual de Treinamento. Fabio Mac Cormick Dezembro/2016

Requisitos do sistema para o Qlik Sense. Qlik Sense September 2017 Copyright QlikTech International AB. Todos os direitos reservados.

Introdução a Sistemas Operacionais. Carlos Eduardo Ba8sta

Microsoft Office 365 Acesso ao , calendário e contatos

Introdução a programação de dispositivos móveis. Prof. Me. Hélio Esperidião

O Sistema Operacional. Função

IFSC/Florianópolis - Programação Orientada a Objetos com Java - prof. Herval Daminelli

ORGANIZAÇÃO E ARQUITETURA DE COMPUTADORES I AULA 02: INTRODUÇÃO

Estratégias Móveis. O que toda empresa precisa saber

Introdução aos computadores, à Internet e à World Wide Web. Prof. Marcelo Roberto Zorzan

DESENVOLVIMENTO DE UM APLICATIVO MÓVEL E WEB PARA GERENCIAMENTO DE PEDIDOS DE DELIVERY, ENTREGAS E PAGAMENTOS

Fundamentos da Informática Aula 03 - Sistemas operacionais: Software em segundo plano Exercícios Professor: Danilo Giacobo

Índice. 1. Introdução Instalação: Eclipse e Android Primeira aplicação em Android... 11

SISTEMA OPERACIONAL - ios

Estruturas de Sistemas Operacionais

Algoritmos e Programação

Algoritmos e Programação

Aula 05. Infraestrutura de TI: hardware e software Pearson. Todos os direitos reservados.

A plataforma Android: Uma Introdução

Estrutura do Sistema Operacional

Sistemas Operacionais. Sistema de entrada e Saída

Ângelo Lovatto Éderson Ferreira Taiane Ramos

Prof: Ricardo Quintão Site:

Requisitos do sistema para o Qlik Sense. Qlik Sense 3.2 Copyright QlikTech International AB. Todos os direitos reservados.

Requisitos do sistema para o Qlik Sense. Qlik Sense June 2017 Copyright QlikTech International AB. Todos os direitos reservados.

Guia do usuário para Avaya Scopia Mobile do CFN

Introdução aos computadores, à Internet e à World Wide Web. Prof. Marcelo Roberto Zorzan

ESTUDO DE PLATAFORMAS PARA A CONSTRUÇÃO DE APLICAÇÕES MÓVEIS. Gabriel de Biasi¹; Nilton Cézar de Paula²

ATIVIDADE DE ESTUDO 03 FUNDAMENTOS E ARQUITETURA DE COMPUTADORES 2017A1

PROGRAMAÇÃO PARA DISPOSITIVOS MÓVEIS

Transcrição:

Anais do Congresso de Sistemas Operacionais do CPoli da UCPEL, VOL. 1, NO. 1, 2016 1 O SO Android Marcos B. Horner, UCPEL; Resumo O Sistema Operacional Android, possui algumas características peculiares, os quais diferenciam de outros sistemas embarcados, procurei separar algumas mais importantes e de fácil entendimento, mostrado que o Android é, e sempre foi uma plataforma aberta e livre, além de possuir sua arquitetura bem complexa, a qual é composta por pilhas e agrupadas em camadas, divididas em níveis, possui diversas características comuns e específicas, além de sua interface gráfica ser muito moderna, a qual sempre o diferenciou de seu maior concorrente o ios. Palavras-Chave Android, Sistema Operacional, Arquitetura, Vs ios, Características Android. 1 Introdução O desenvolvimento de aplicações para dispositivos móveis tem evoluído exponencialmente com o tempo e já se tornou um padrão de desenvolvimento quase onipresente no sentido de que muitas empresas estão escalonando ou recrutando novos desenvolvedores para formarem seus grupos de desenvolvimento para sistemas móveis a fim de criar novas ou adaptar soluções de serviços existentes para suprir a demanda do mercado (empresas bancárias disponibilizando serviços de operações financeiras pelo celular, controle de estoque de materiais e outros) Várias são as plataformas hoje para desenvolvimento de aplicações para dispositivos móveis. As tecnologias existentes para desenvolvimento são: Symbian, Brew, JavaME, Embedded-Linux,.NET Compact Framework e Flash Lite. E depois de muitos rumores informando que a gigantesca Google entraria também no ramo de desenvolvimento de dispositivos móveis por meio do lançamento do tão aclamado GPhone (o qual seria mais um para a lista dos concorrentes do minimalista iphone da Apple), o mesmo foi muito mais além. Em 05 de novembro de 2007, a empresa tornou pública a primeira plataforma Open Source de desenvolvimento para dispositivos móveis baseada Marcos Brasil Horner: Engenharia de Computação, Centro de Politécnico - CPoli. Universidade Católica de Pelotas - UCPEL. E-mail: pachola@gmail.com na plataforma Java com sistema operacional Linux, a qual foi chamada de Android. Esse artigo tem como objetivo destacar algumas caracteristicas do Sistema Operacional Android, mostrando sua plataforma e suas divisões, a arquiterura e seus níveis, interface gráfica e layouts, e uma breve comparação com o seu maior concorrente o ios. [1] [2] [3] [4] [5]. 2 Histórico das Versões do Android Figura 1. História 1.5 - Cupcake- Introduziu a correção automática nos textos e também os famosos widgets. 1.6 - Donut- Trouxe a busca online partir da página principal; Sistemas Operacionais II c SOII

Anais do Congresso de Sistemas Operacionais do CPoli da UCPEL, VOL. 1, NO. 1, 2016 2 2.0 - Éclair- Uso de múltiplas contas do Google; 2.1 - Éclair Busca por voz; 2.2- Froyo- Transformar o dispositivo em um ponto de acesso via wi-fi usando a rede 3G e introdução do Flash no navegador; 2.3 - Gingerbread-trouxe pela primeiravez o suporte a voz sobre IP; 3.0- Honeycomb- Primeiro a operar em telas maiores egerenciamento de aplicativos abertos; 4.0 - Ice Cream Sandwich- Reformulou toda a interface da plataforma,novidade foi a criação de pastas na tela principal do aparelho e agora é possível; 4.1 / 4.2 - Jelly Bean Melhora na funcionalidade e desempenho da interface 4.4 KitKat Inteligente e simples, com design mais refinado e melhor desempenho, com novos recursos. 5.0 Lollipop Mais intuitivo nas respostas ao toque, elegância do Android tanto em telas grandes como nas pequenas, com informações na hora certa. 6.0 Mashmallow - Respostas rápidas com apenas um toque. O atalho mais inteligente para as informações que você quer. O Now antecipa suas buscas. [6]. 3 A plataforma Android A plataforma Android hoje em dia é mantida pelo Open Handset Alliance, que é um grupo formado por mais de 30 empresas (de tecnologias de dispositivos móveis, provedoras de serviços móveis, fabricantes, etc) as quais se uniram para inovar e acelerar o desenvolvimento de aplicações, serviços, trazendo aos consumidores uma experiência mais rica em termos de recursos, menos dispendiosa em termos financeiros para o mercado móvel. Pode-se dizer que a plataforma Android é a primeira plataforma móvel completa, aberta e livre. É uma plataforma desenvolvida utilizando o sistema operacional Linux. Sendo assim, todas as características intrínsecas deste sistema foram incorporadas, bem como sistema de arquivos, kernel, servidores de terminais (X server), etc. [4]. 4 A arquitetura A arquitetura do sistema operacional Android é uma pilha de programas agrupados em camadas. Podemos dividir essas camadas em níveis zero, um, dois e três, conforme figura abaixo. Figura 2. Arquitetura 4.1 Nível zero No nível zero, temos a base da pilha, ou seja, o Kernel (Linux Kernel), para desenvolvê-la foi utilizado à versão 2.6 do Sistema Operacional Linux. Nele encontraremos os programas de gerenciamento de memória, configurações de segurança e vários drivers de hardware. 4.2 Nível um No nível um, temos as camadas de bibliotecas (Libraries) e tempo de execução (Android Run- Time). A camada de biblioteca é um conjunto de instruções que dizem ao dispositivo como lidar com diferentes tipos de dados, incluindo um conjunto de biblioteca C / C + + usadas por diversos componentes do sistema e são expostas a desenvolvedores através da estrutura de aplicativo Android. A camada de tempo de execução inclui um conjunto de bibliotecas do núcleo Java (Core Libraries). Para desenvolver aplicações para o Android, os programadores utiliza a linguagem de programação Java, nesta camada encontraremos a Máquina Virtual Dalvik (DVM). O Android usa a máquinas virtuais Dalvik para rodar cada aplicação com seu próprio processo. Isso é importante por algumas razões: nenhuma aplicação é dependente de outra e se uma aplicação parar,

Anais do Congresso de Sistemas Operacionais do CPoli da UCPEL, VOL. 1, NO. 1, 2016 3 ela não afeta quaisquer outras aplicações rodando no dispositivo e isso simplifica o gerenciamento de memória, pois a máquina virtual está baseada em registradores e desenvolvida de forma otimizada para requerer pouca memória e permitir que múltiplas instâncias executem ao mesmo tempo. Ao contrário do que se afirma, que a Dalvik é uma máquina virtual Java, isso não é verdadeiro, pois ela executa seu próprio tipo de bytecodes. 4.3 Nível dois No nível dois, temos a camada de framework de aplicação (Application Framework), programas que gerenciam as aplicações básicas do telefone. Os desenvolvedores têm acesso total ao framework como um conjunto de ferramentas básicas com o qual poderá construir ferramentas mais complexas. 4.4 Nível três No nível três, temos a camada de aplicações e as funções básicas do dispositivo. Esta é a camada de interação entre o usuário e o dispositivo móvel, nela encontramos aplicativos cliente de e-mail, programa de SMS, calendário, mapas, navegador, contatos entre outros. [1] [5]. 5 Características comuns É da Google; Gratuito; Código aberto; Não está preso a um hardware específico; O seu Kernel é Linux. Uma versão personalizada para dispositivos móveis; Seus aplicativos são desenvolvidos em Java; Possui uma quantidade imensa de aplicativos disponíveis, tanto gratuíto, como pagos; [6]. 6 Características Específicas Handset Layouts: A plataforma é adaptada tanto para dispositivos VGA maiores, gráficos 2D, bibliotecas gráficas 3D baseadas em OpenGL ES especificação 2.0 e os layouts mais tradicionais de smartphones. Armazenamento: É utilizado SQLite para armazenamento de dados; Mensagens: Tanto SMS como MMS são formas disponíveis de envio de mensagem; Navegador: O navegador disponível no sistema é baseado no framework de código aberto conhecido como WebKit; Máquina virtual Dalvik: aplicações escritas em Java são compiladas em bvtecodes Dalvik e executadas usando a Máquina Virtual Dalvik, que é uma máquina virtual especializada desenvolvida para uso em dispositivos móveis, o que permite que programas sejam distribuídos em formato binário (bytecode) e possam ser executados em qualquer dispositivo Android, independentemente do processador utilizado. Apesar das aplicações Android serem escritas na linguagem Java, ela não é uma máquina virtual Java, já que não executa bytecode JVM. Multimídia: o sistema irá suportar formatos de áudio e vídeo como: MPEG-4, H.264, MP3, e AAC. Suporte adicional a Hardware: o Android é totalmente capaz de fazer uso de câmeras de vídeo, tela sensível ao toque, GPS, acelerômetros, e aceleração de gráficos 3D. Ambiente de desenvolvimento (SDK): o Android é totalmente capaz de fazer uso de câmeras de vídeo, tela sensível ao toque, GPS, acelerômetros, e aceleração de gráficos 3D.[6]. 7 Interface gráficas e layouts Os principais componentes que fazem parte da interface gráfica com o usuário (GUI) da plataforma Android foram denominados de Views e Viewgroups. Um View é representdo pela classe android.view.view. Este componente nada mais é do que uma estrutura de dados que representa área retangular limitada pela tela do dispositivo. Por meio dele é possível obter informações como medidas de largura e altura, desenho, mudança de foco, capacidade de rolagem e captura de comandos percebida pela área específica. O outro componente é representado pela classe android.view.viewsgroup. (que pode ser considerado um layout, isto é, um container de Views (e também de Viewsgroups) que pode ser utilizado para criar estruturas mais complexas, ricas e robusta. Viewgroups por sua vez, é considerado a classe base para outros layouts (LinearLayout, RelativeLayout, etc). No momento em que o

Anais do Congresso de Sistemas Operacionais do CPoli da UCPEL, VOL. 1, NO. 1, 2016 4 método setcontentview() é chamado, o mesmo recebe uma referência para o nó raiz da árvore que representa o layout a ser mostrado. Sendo assim o mesmo informa a seus filhos para que eles possam se desenhar, validar, etc. [3]. usuário se acostumar com ela, que não se importará com a outra. Já nas notificações, existem uma forte concorrência entre os controles de voz Siri (Apple) e Google Now (Android), A Siri é mais forte no controle por voz, enviar informações com a sua voz e usar seu smartphone sem as mãos, enquanto o Google Now, tem seus comandos de voz com foco principal para informações a e-mails, histórico de busca, viagens recentes, etc. Figura 3. Interface Gráfica 8 Android Vs ios Em primeiro podemos caracterizar que já é de aceitamento de todos, ios é um software da Apple, ou você aceita ou devemos ir atrás de outro smartphone. Já o Android permite que possamos personalizar praticamente tudo dele, desde o app do discador ou de SMS, suporte a Widgets na tela inicial e permite até instalação de launchers alternativos se você quiser. Outra grande diferença é que os apps do Google vivem tranquilamente no ios, enquanto programas da Apple não são encontrados no Android, não se aplicando somente na aplicativos, mas em transferir emais, contatos, músicas, filmes, fotos e sobre documentos do Android para ios é muito mais fácil do que do ios para Android. 8.1 Interface e notificações A Apple a pouco trouxe suas interfaces com designer mais moderno. Já o Android a tempos (desde o Android 5.0) traz uma interface gráfica visual mais colorida e com um designer mais moderno. Ambos possuem uma interface mais sofisticada, porém mais simples para o usuário usufruir, cada uma com seu estilo. Basta cada 8.2 Estabilidade, segurança e desempenho O Touch ID é uma grande vantagem do ios e melhorou bastante a experiência de desbloquear o telefone para autorizar compras. Vários serviços tentam oferecer o mesmo no Android, mas sem muito sucesso, a Samsung é a única fabricante a colocar sensor de impressão digital em dispositivos Android. Com a versão Lollipop tem a possibilidade de definir áreas e até dispositivos confiáveis com os quais o código PIN é automaticamente desativado, trazendo mais segurança com códigos criptografados por padrão, coisa que o ios sempre possuiu em seus smartphones. Em matéria de segurança, não há dúvida de que o Android não é tão fechado quanto ao ios, sendo mais fácil instalar softwares não-autorizados no dispositivos, porém se mantendo fielmente a Google Play Store, os riscos são mínimos. Em relação a estabilidade e desempenho, a comparação fica mais complicada, devido a variedade de dispositivos antigos com as duas plataformas no mercado, mas o que se pode concluir é que ambos com hardware de ponta possuem baixa taxa de falha, e que os hardware mais antigos, são mais suscetível a travas do dispositivos. [2]. 9 Considerações Finais Por se tratar de uma plataforma totalmente livre, o Android logo se popularizou, se tornando o Sistema Operacional mais vendido do mundo. Além disso, é um sistema muito complexo para o desenvolvedor, porém muito simples para o usuário. Não podemos citar qual o SO é melhor, pois se deixa a desejar em um quesito ganha em outro, o que podemos dizer é que cada vez mais os fabricantes estão aperfeiçoando mais seus antigos problemas, e sendo assim, o que vai sempre decidir será a estética e qualidade final dos aparelhos.

Anais do Congresso de Sistemas Operacionais do CPoli da UCPEL, VOL. 1, NO. 1, 2016 5 Referências [1] Ricardo R Lecheta. Google Android-3 a Edição: Aprenda a criar aplicações para dispositivos móveis com o Android SDK. Novatec Editora, 2013. [2] N. David. ios x android: edição 2015. http://gizmodo.uol.com.br/ios-x-android-edicao-2015/, 2015. Accessed: 2016-05-21, published: Abril, 2015. [3] Danielle Dias Simões 1 and Júlio César Pereira. Sistemas operacionais móveis-android x ios. [4] Ramon Ribeiro RABELLO. Android: um novo paradigma de desenvolvimento móvel. Revista WebMobile Magazine, Rio de Janeiro, 18(1):07 12, 2008. [5] Vinicius C. Ferreira Rafael C. Gomes, Jean A. R. Fernandes. Sistema operacional android. http://www.midiacom.uff.br/ natalia/2012-1- sisop/tgrupo1.pdf, 2012. Accessed: 2016-05-20, published: Junho, 2012. [6] Guilherme Alarcão. Sistema operacional android. http://pt.slideshare.net/guilhermealarcao/apr-android, 2013. Marcos Brasil Horner Técnico em Telecomunicações no Instituto Federal do Rio Grande do Sul - IFSUL-PELOTAS/RS, Graduando em Engenhraria da Computação, na Universidade Católica de Pelotas/RS