quinta-feira, 28 de junho de 2012

iOS: Cuidando do erro "object file format invalid or unsuitable" e outros problemas com Certificado Digital da Apple

Um dos problemas mais terríveis que já passei desenvolvendo para iOS foi esse: no Emulador tudo certinho, mas quando tento rodar no aparelho: Compilação OK, assinando o aplicativo FAIL: "/usr/bin/codesign failed with exit code 1". Clico para ver mais detalhes e aparece a seguinte mensagem: "object file format invalid or unsuitable".

terça-feira, 5 de junho de 2012

iOS: Aplicativos em Tela Cheia (Full Screen)

No iOS, é simples de configurar com que o aplicativo fique totalmente em tela cheia, ou seja, sem a barra de status na parte de cima. Para configurar a tela cheia:

  • Abra o arquivo Info.plist do projeto;
  • Procure o campo "UIStatusBarHidden" se tiver usando um Xcode antigo, ou  "Status bar is initially hidden" nos mais atuais;
  • Caso o campo ainda não foi definido, crie mais uma linha contendo o campo;
  • Esse campo vai ter uma caixa checkbox. Assinale ela para fazer com que o programa entre no modo Tela cheia.
Campo do info.plist que vai ser alterado

segunda-feira, 28 de maio de 2012

iOS: Localização: Fazendo um Aplicativo Para Vários Idiomas

Mais um tutorial para iOS. Vamos ver como fazer com que o aplicativo altere o idioma para o idioma do sistema. Para quem quer vender internacionalmente, é fundamental que o aplicativo esteja disponível em maior números de idiomas possíveis.

Para começar, abrindo a pasta do projeto no Finder, vamos criar as pastas onde os arquivos localizados (no sentido de tradução) vão ser colocados. O nome da pasta vai ser o código do idioma, sendo que deve estar no formato ISO 639-1 ou  ISO 639-2, com uma extensão *.lproj. Por exemplo: quero que meu aplicativo tenha o idioma em Português, Inglês e Espanhol, serão criadas três pastas:
  • pt.lproj: para o português;
  • en.lproj: para o inglês;
  • es.lproj: para o espanhol;

quinta-feira, 17 de maio de 2012

iOS: O iPhone começa a tocar - Tratando interrupções no iOS

Você está lá, usando um aplicativo ou jogando quando seu iPhone toca.Você atende o telefone e quando volta a jogar, FUUUUU! Você está na tela de Game Over porque o aplicativo continuou executando em background. Ou pior, você não consegue falar com o seu interlocutor porque a música do jogo continuou sendo executado.

Esses problemas são muito comum e muito negligenciado. Primeiro porque muitos desenvolvedores nem passa pela cabeça em receber ligação ou que o sistema operacional pode mandar alguma mensagem de aviso. E quando passa pela cabeça, temos que se matar na documentação mal-organizada da Apple.

Por isso, estou fazendo esse tutorial. Depois de esbarrar na documentação e ter que interpretar o que eles quiseram falar:

quinta-feira, 8 de dezembro de 2011

iOS: Problemas com UIScrollView do Interface Builder?

Pois é gente, esse é um problema que estava tendo quando fui utilizar o UIScrollView a partir de um nib. Estava todo o conteúdo dentro, mas não fazia a rolagem.

Descobri que o problema é que o Interface Builder não ajusta o contentSize do UIScrollView. Então é necessário fazer isso no código manualmente para ter o efeito desejado. Vou mostrar um exemplo, o nosso View que está dentro do UIScrollView tem o tamanho 300x800 e foi vinculado ao objeto scrollView, então o código ficaria assim:

segunda-feira, 28 de novembro de 2011

iOS: Adicionando AdWhirl no projeto

[ADWHIRL FOI DESATIVADO DESDE 31 DE SETEMBRO DE 2013]

Criando esse tutorial porque é vergonhoso a forma que o tutorial oficial foi escrito. Enfim, hoje adicionaremos o AdWhril num projeto para iPhone. AdWhirl gerência as propagandas que você deseja inserir nos aplicativos além de permitir até o gerenciamento de suas próprias advertises e o melhor: OpenSource e gratuito. Então, para inserir o AdWhirl, tem que fazer o seguinte:

1. Cadastrar seu aplicativo no site:  Faça o login e clique em "Add Application" e preencha o formulário com o nome, site, plataforma e a configuração das propagandas.

terça-feira, 22 de novembro de 2011

Android: Personalizando o botão "Back" para o seu Aplicativo

Por padrão, ao pressionar o botão Back nos aparelhos Android, o aplicativo entra no estado de destruição e é finalizado. Entretanto, algumas vezes você não vai querer que o seu aplicativo feche imediato, por exemplo, vai exibir uma mensagem de confirmação. Nesses casos, o que você deverá fazer é sobrescrever o evento de apertar o botão Back.