You are currently browsing the tag archive for the ‘Phone 8’ tag.

Olá pessoal,

neste post vou falar um pouco mais dos bastidores do Windows Phone 8.

Quando falamos tecnicamente do Windows Phone 8, a primeira coisa que nos vem a cabeça é o Kernel compartilhado do Phone com o Windows 8. Já apresentei neste post http://aka.ms/kernel8 uma visão geral do Kernel compartilhado entre o Windows 8 e o Windows Phone.

Desta vez, vamos entrar um pouco mais a fundo na plataforma.

Quando a Microsoft criou a primeira versão do Windows Phone, o Windows Phone 7.0, ela utilizou o Kernel do Windows CE como fundamento para o novo Sistema Operacional para telefones. Então veio a versão 7.5 e nova funcionalidades foram implementadas, porém o núcleo do Sistema Operacional, continuava o mesmo, do Windows CE.

 

phone7

Windows Phone 7.X

Não há problema algum com o Phone 7.X ter sido desenvolvido sob o Kernel do Windows CE. A questão é que o Kernel do Windows CE é uma tecnologia muito estável, porém já tem mais de 15 anos. Por este motivo, existiam alguns limitadores de integração com hardwares de última geração, como sensores e multiplos núcleos de processadores.

Então, quando a Microsoft resolveu fazer a versão Windows Phone 8, aproveitou o momento da Plataforma Windows e unificou o Kernel nas 2 plataformas.

Mas o que mudou efetivamente?

Com a utilização do mesmo Kernel nas duas plataformas, várias coisas como drivers, modelo de desenvolvimento, classes portáveis passaram a ser compatíveis entre as duas plataformas de forma transparente.

Outra coisa que passou a estar presente no Windows Phone 8 é parte do conjunto de componentes do Windows Runtime, que no Phone chamado de Windows Phone Runtime. Este conjunto de componentes permite que boa parte do código que é utilizado em uma aplicação Windows 8 possa ser reaproveitado em uma App para Windows Phone 8 e vice versa.

phone8_01

Compatibilidade de aplicações Windows Phone 7.X com o Windows Phone 8

Bom, mas se o kernel do Windows Phone 8 não é compatível com o Kernel do Windows Phone 7.5, como as Apps do WP 7.5 rodam no Windows 8?

Uma das coisas que a Microsoft tem em seu DNA é a compatibilitade com versões anteriores dos seus sistemas operacionais.

Desta forma, a implementação do Windows Phone 8 vem com um modo conhecido como “Quirks Mode”. O Quirks Mode, é uma camada que faz com que as Apps WP 7.X sejam executadas no WP 8.0 com o comportamento que teriam em um WP 7.X sem que o desenvolvedor precise fazer alterações no código.

Então podemos imaginar que as Apps para WP 7.x rodam um pouco mais lento no WP 8.x, o que é verdade. Mas, por outro lado, como os hardwares que rodam o WP 8.x são bem mais rápidos que os que rodam o WP 7.x, isto é compensado.

Mas o ideal seriamos recompilhar nossas Apps para Windows Phone 8.

Para conhecer mais sobre o Quirks Mode, vejam este video http://channel9.msdn.com/Events/Build/2012/3-045

 

phone8_02

Aplicações Windows 7.X rodando em Windows Phone 8

 

Mudando o Target de sua App para Windows Phone 8

O Quirks Mode é algo que foge do controle do desenvolvedor, sendo utilizado pelo próprio Windows Phone Runtime.

Mudar o target do seu projeto para Windows Phone 8, faz com que sua App passe a ser executada de forma nativa para a nova versão do Windows Phone 8.

Mudar o target para WP 8.x é bem simples. Basta abrir o projeto no Visual Studio 2012+, right-click no projeto e selecionar a opção Upgrade to Windows Phone 8.0

__image_thumb_10

_image_thumb_11

 

Uma vez isto feito, sua App não utilizará mais o quirks mode, o que pode gerar algum problema de comportamento da App, caso alguma API tenha comportamento diferente do esperado no WP 8.0 comparado com o de WP 7.x.

Desta forma, será necessário que você teste sua App depois de recompila-la para WP 8.0.

 

Boas referências:

Windows Phone Versions

http://msdn.microsoft.com/en-us/library/windowsphone/develop/hh202996(v=vs.105).aspx

Windows Phone API reference

http://msdn.microsoft.com/en-us/library/windowsphone/develop/ff626516(v=vs.105).aspx

App platform compatibility for Windows Phone

http://msdn.microsoft.com/en-us/library/windowsphone/develop/jj206947(v=vs.105).aspx

De bonus, segue este poster!!!

image

 

Abs,

@daibert

Anúncios

Olá pessoal.

Hoje cedo um cliente me perguntou sobre o processo de instalação das Apps no Windows Phone 8. Ele queria saber o motivo da “demora” na barra de progresso da instalação da App.

Não é o objetivo deste singelo post explicar todo o processo de instalação da App no Windows Phone. Mas o importante aqui é entender os “momentos” em termos de percentual desta instalação.

A instalação da App começa quando a Windows Phone Store chama o método “InstallationManager.AddPackageAsync”. Quando este método é disparado, é iniciado o download do pacote e o processo de instalação.

Desta forma, o pacote da aplicação passa por 4 fases de instalação que são:

  1. 5% completed – Quando a loja mostra a janela perguntando se o usuário deseja instalar o App.
  2. 10% completed – Logo após o usuário aceitar a instalação do App

  3. 55% completed – Quando o pacote do aplicativo foi baixado

  4. 100% completed – Quando o aplicativo foi instalado com sucesso.

 

Bom, por enquanto é só.

 

Abs,

@daibert

http://twitter.com/daibert

Olá pessoal.

Hoje vou falar um pouco sobre o Secure Boot do Windows Phone 8. O Secure Boot é uma tecnologia que faz uma validação na imagem do Windows Phone que esta gravada no firmware do aparelho.

Desta forma, durante o boot é feita uma validação que garante que o sistema operacional que será carregado está integro.

Isto é um dos motivos que faz com que o Windows Phone 8 não tenha virus ou malwares instalados.

Todos os componentes do sistema operacional possuem uma assinatura digital que é validada pelo chamado pre-UEFI (http://msdn.microsoft.com/en-us/library/windows/hardware/gg463075.aspx). Esta é a garantia que só estes componentes autorizados pelo UEFI podem ser carregados.

Para saber mais sobre este assunto, recomendo a leitura dos links abaixo:

System on a Chip http://blogs.windows.com/windows/b/bloggingwindows/archive/2011/01/05/next-version-of-windows-to-run-on-system-on-a-chip-architectures.aspx 

UEFI e o Windows 
http://msdn.microsoft.com/en-us/windows/hardware/gg463149.aspx

Abraços,

@daibert

http://twitter.com/daibert

Olá pessoal.

Nesta segunda edição do Windows Talks, o convidado é o Danilo “Cobrinha” Perez.

O Danilo é um desenvolvedor que criou o jogo chamado Snake, para Windows Phone. O Snake é uma versão moderna para o antigo jogo da cobrinha da Nokia.

A grande sacada do Danilo para monetizar a App, foi colocar o ADK – Advertising Development Kit http://www.microsoft.com/en-us/download/details.aspx?id=8729.

E o Danilo focou seu desenvolvimento para Plataforma Windows, pois conseguiu perceber o verdadeiro valor da maior plataforma de Sistemas Operacionais do Mundo, o Windows (http://aka.ms/Mercado01)

 

Monetizando sua App com Advertising com o Danilo “Cobrinha” Perez

 

Mais informações sobre advertising você encontra aqui: http://advertising.microsoft.com/mobile-apps

Abs,

@daibert

http://twitter.com/daibert

Olá pessoal!

Neste outro post http://aka.ms/PhoneNFC  falei um pouco sobre o NFC. Hoje vou falar sobre o Wallet, ou a Carteira Eletrônica, que é uma tecnologia nativa presente em todos os dispositivos Windows Phone 8.

Muitas vezes, o NFC e o Wallet são confundidos um com o outro, por muitas soluções utilizarem um misto entre eles.

Mas agora vamos entender o que é o Wallet.

A Wallet é uma tecnologia implementada nativamente pelo Sistema Operacional do Windows Phone 8. Ela serve como um repositório para aplicações guardarem, de forma segura, informações simples ou transacionais para utilização em serviços de pagamento.

Com a Wallet você pode: image

  • Armazenar no seu telefone cupons, cartões de crédito, programas de fidelidade.
  • Gerenciar e fazer pagamentos em web sites ou na xbox music
  • Utilizar a Wallet para fazer compras em Apps no seu telefone
  • Integrar a Wallet com NFC para fazer trazações entre o seu telefone e um dispositivo externo, como uma máquina de crédito ou débito.

 

Outra questão importante a saber sobre a Wallet, é que cada aplicativo possui uma instancia de sua própria Wallet. Desta forma, cada aplicativo só consegue interagir com os itens e transações criados por eles próprios.

Alguns cenários são fortes candidatos a utilizarem a Wallet, NFC e um misto das tecnologias. No quadro abaixo, apresento alguns cenários e as tecnologias que são fortes candidatas a implementa-los.

Cenário

Wallet

NFC

Cartões de fidelidade

X

 
Promoções de cupons online

X

 
Transações bancarias online

X

 
Transações bancarias em terminais ATM

X

X

Trasnferência de informações entre dispositivos  

X

Trasnferência de música e videos entre dispositivos  

X

 

Outro cenário a ser pensado, é a utilização de um misto entre Apps + NFC + Wallet.

Imagine a seguinte situação:

Você entra em uma App de uma loja que existe fisicamente e recebe um cupom de desconto para compra na loja física. Você salva este cupom na sua Wallet do seu Windows Phone 8.

Então, na hora do seu almoço, você se dirige a loja física, pega o produto e vai ao caixa. Ao chegar no caixa, você abre a sua Wallet no seu Windows Phone 8 e passa o telefone sobre um leitor NFC. Este leitor lê o seu cupom, o remove de sua Wallet e aplica o desconto ao produto.

Wallet01      Wallet02

Esta foi só uma introdução ao que é o Wallet no Windows Phone 8. Em outros posts vou entrar na questão do desenvolvimento de Apps utilizando Wallet.

Para saber mais sobre a Wallet no Windows Phone 8, acesse aqui ó: http://msdn.microsoft.com/en-us/library/windowsphone/develop/jj207032(v=vs.105).aspx

Abs,

@daibert

http://twitter.com/daibert

Olá pessoal, esta é só uma rapidinha do dia.

No Windows Phone 8, temos agora 3 tipos de Live Tiles. São eles:

FlipTileData:

image

CycleTileData:

image

IconicTileData:

image

Para saber mais sobre os novos Live Tiles, acesse: Tiles for Windows Phone

Abs,

@daibert

http://twitter.com/daibert

Olá pessoal!

Este post é só para apresentar a vocês as 8 principais novidades do Windows Phone 8. Lá vai:

 

1 – Os melhores hardwares dos melhores fabricantes

  • Nokia / HTC / Samsumg

 

2 – O novo Internet Explorer 10

  • Performance 4x mais rápida na execução de JavaScript

 

3 – Código nativo para desenvolvimento de jogos

  • Desenvolvedores escrevem o mesmo código para jogos Windows 8 e Phone 8 em C++

 

4 – Speech / Reconhecimento de voz

  • APIs de reconhecimento de voz->texto / texto->voz

 

5 – APIs de carteira eletrônica (Wallet)

  • Suporte a gravação e leitura

 

6 – Nokia Map Technology

  • Download dos mapas para utilização offline

 

7 – Pictures and Lenses

  • Aplicações “Lens” que se integram diretamente a camera

 

8 – Novas APIs para interagir com a Start Screen

  • Sua aplicação pode mandar informações para tela de bloqueio do Windows Phone 8

Abraços,
Daibert

Olá pessoal, no post desta semana, vou falar sobre o NFC no Windows Phone 8.

O Near Field Communication (NFC) é um padrão internacional para troca de informações entre dispositivos em curtissima dstância, de forma segura.

As principais caracteristicas do NFC no Windows Phone 8 são:

  • A comunicação ocorre quando os dispositivos estão a cerca de 3-4 centímetros um do outro.
  • A transferencia de dados, diferente de outros tipos de rede como wireless, é bem especializada, trafegando somente os dados necessários para a transação que será efetuada (por exemplo, não existe uma transação para autenticação entre os dispositivos). Isto se deve ao fato de, como a distância entre os dispositivos são extremamente curtos, presumir-se que os dispositivos foram encostados um ao outro de forma intencional.
  • A taxa de transferência máxima de dados é 424 kbits/s, mas a média fica entre 30 e 60 kbits /s
  • A comunicação pode ser feita entre dois dispositivos eletrônicos, como dois Windows Phone 8, ou um dispositivo eletrônico e um dispositivo “não eletrônico”, como um cartão tipo o de crédito ou TAG.

 

Alguns cenários para utilização do NFC

A utilização do NFC deve ser pensada sempre para troca de pouca quantidade de dados em cenários específicos. Como o NFC se integra com outras tecnologias como Bluetooth e Wallet, os cenários mais comuns de sua utilização seriam:

 

Conectar dispositivos: Encostando dois Windows Phone 8, podemos iniciar uma conexão bluetooth ou wireless entre estes dispositivos e iniciar a troca de informações entre um aplicativo em dois dispositivos diferentes.

Receber conteúdo: Por exemplo, posso utilizar meu telefone para receber um conteúdo digital de um poster de um filme que tenha uma TAG NFC.

Trocar “objetos” digitais: Encostando dois Windows Phone 8, ou um WP8 e um cartão físico do tipo TAG NFC, pode-se receber cartões virtuais no padrão vCard por exemplo.

 

Utilizando o NFC em seu aplicativo

Tecnicamente, existem duas maneiras de se utilizar o NCF em sua aplicação.

A primeira é a transferência de mensagens simples de um dispositivo para outro.

Uma App pode subscrever para receber eventos de trocas de mensagens ou receber uma mensagem de um tipo específico.

A classe utilizada para troca de mensagens simples entre dispositivos é a ProximityDevice (http://msdn.microsoft.com/library/windows/apps/BR241212).

Na API do ProximityDevice, você já tem um formato padrão de mensagem messagetype, o que tornam muito simples a troca de mensagens.

Enviando uma mensagem (dispositivo de origem):

image

 

Recebendo uma mensagem (dispositivo de destino):

image

 

Esta foi só uma introdução básica de como começar a utilizar o NFC em uma aplicação Windows Phone 8. Para conhecer mais sobre o assunto, recomento baixar e dar uma olhada na aplicação PixPresenter  disponível no SDK do Windows Phone 8 ou no link http://code.msdn.microsoft.com/wpapps/PixPresenter-Code-sharing-39ed631f

 

Abs,

@daibert

Olá pessoal.

Como apresentado no post da semana passada, o Windows 8 e o Windows Phone 8 compartilham o mesmo Kernel, porém no Windows 8 as aplicações rodam em cima do Windows Runtime e no Windows Phone 8 as aplicações rodam em cima do Windows Phone Runtime – WinPRT.

Isto significa que as aplicações feitas para Windows 8 não rodam no Windows Phone 8 e vice versa. Mas podemos aproveitar grande parte do código e tornar o processo de criação das Apps multiplataforma bem simples.

Para que possamos criar Apps que aproveitem o código uma da outra, precisamos trabalhar com o padrão de desenvolvimento de software MVVM (Model / View / View Model) e uma tecnologia de desenvolvimento do .Net, no caso deste post vamos utilizar Portable Class Library, ou PCL.

Sobre o MVVM vou falar em outro post, mas só para recaptular:  (Caso queira se aprofundar um pouco mais, dá uma olhada aqui ó: http://aka.ms/mvvm)

“MVVM é um padrão de design de software para aplicações orientadas a dados (data driven) aonde temos, de forma bem simplista:

Model

  • Contém os dados

ViewModel

  • Apresenta os dados para VIEW de forma que estes dados possam ser consumidos e apresentados na interface visual

View

  • Apresenta os dados em um interface para o usuário (User Interface)
  • Recebe dados que o usuário informou em uma interface visual “

Existem outras maneiras de se fazer projetos multi plataforma, como por exemplo utilizar expressões condicionais de compilação como:

#if NETFX_CORE

using Windows.UI.Xaml.Media.Imaging;

#else

using System.Windows.Media.Imaging;

#endif"

Mas vou falar disto em outro post também.

Um projeto do tipo Portable Class Library no Visual Studio suporta um sub conjunto de assemblies .NET Framework, Silverlight, .NET for Windows Store apps, Windows Phone, e Xbox 360.

Projetos PCL possuem prós e contras, como qualquer tecnologia. O principal ponto positivo de se utilizar a PCL, é poder aproveitar a mesma DLL multi plataforma, bastando apenas adiciona-la como referência nos projetos Windows 8 e Windows Phone 8.

Já como o principal contra da PCL, é que ela disponibiliza somente as classes que realmente são multi plataforma, deixando a PCL um pouco limitada do ponto de vista de conjunto de componentes.

 

Definindo a Arquitetura de Software das aplicações:

Para criarmos uma mesma aplicação para Windows 8 e Windows Phone 8, devemos primeiramente identificar os itens comuns entre elas.

Sabemos que as telas dos dispositivos Windows 8 são bem diferentes dos dispositivos Windows Phone 8.

Windows Phone 8
image
 
Windows 8
image

Resoluções: 800×480, 1280×720, 1280×768

Modos: Portrait, Landscape

Resoluções: 1024×768+

Modos: Landscape, Portrait, Snapped, Filled

 

Desta forma, o código feito para a tela da aplicação (View), não poderá ser reaproveitado entre as plataformas por alguns motivos, como:

  • Espaço da tela
  • Orientação da tela e Page Layout
  • XAML Namespaces
    • Windows.UI.Xaml.Controls contém os controles Windows 8
    • Microsoft.Phone.Controls e Microsoft.Phone.Shell contém os controles Windows Phone
    • System.Windows.Controls também contém controles Windows 8, mas contém controles compartilhados entre as plataformas
  • Controles XAML diferentes

Mais informações sobre este assunto, você encontra aqui.

Já a lógica das aplicações será a mesma. Vamos utilizar a PCL para encapsular nosso Model e nosso ViewModel em uma única DLL multi plataforma.

Então, do ponto de vista de arquitetura de software, nossas aplicações compatilharão uma mesma PCL.

 

image

 

Criando a Portable Class Library PCL:

Uma vez o projeto PCL compilado, você terá uma DLL. Esta DLL será adicionada como referência ao seu projeto de Windows 8 e Windows Phone 8.

Para criar a PCL, abra o Visual Studio 2012 (Professional ou superior) e selecione o Portable Class Library project em C# ou VB.NET:

image

 

Uma vez selecionado o projeto do tipo PCL, devemos escolher com quais plataformas esta DLL será compatível:

 

image

* IMPORTANTE: Para aparecer a opção de Windows Phone 8, você precisa instalar o Windows Phone 8 SDK

Pronto, sua PCL esta criada. Podemos ver que a única referência que existe neste projeto é um sub conjunto do .Net, chamado de .NET Portable Subset

image

 

Bom, em um próximo post vou continuar este projeto, e adicionar a esta PCL nosso Model e o ViewModel para ser compartilhado com as aplicações Windows 8 e Windows Phone 8. Fiquem ligados aqui no blog e no meu twitter http://twitter.com/daibert

Abraços,

@daibert

Outras referências para você conhecer melhor do assunto estão nos links no post http://aka.ms/SharedCodeDicas

Olá pessoal, segue uma lista para ajuda-los na capacitação em desenvolvimento em Windows Phone 8:

  • Treinamentos Online:

Absolute Beginners

http://wpdev.ms/beginvids

Jump Start

http://aka.ms/wp8js

Design Boot Camp

http://aka.ms/wp8designbootcamp

Training Kit

http://aka.ms/wp8hol

  • Documentos no MSDN:

Design

http://aka.ms/wp8devdesign

Develop

http://aka.ms/wp8devdoc

Test

http://aka.ms/wp8testing

Publish

http://aka.ms/wp8publishing

Samples

http://aka.ms/wp8samples

 

  • Últimas novidades da Plataforma:

Portal

http://dev.windowsphone.com

Blog

http://wpdev.ms/developerblog

Channel 9

http://wpdev.ms/insidewp

Twitter

http:/twitter.com/wpdev

 

Abs,

Daibert

Atualizações Twitter