Para aqueles que desejam obter o santo Graal desenvolvendo para a App Store, escrevemos, abaixo, os 10 mandamentos que aprendemos depois de dar muita cabeçada atrás dele:

10 Mandamentos para se tornar um desenvolvedor oficial para iPhone

1 - Não serás impaciente: Espere períodos indeterminados para aprovação da sua aplicação e dos seus contratos. O nosso contrato de desenvolvimento de apps gratuitas esperou de 20 de janeiro até 20 de maio na fila, é mole?

2 - Não colocarás acento, til ou c-cedilha no nome da sua empresa: Colocamos e olha como ficou nosso nome, só depois de muito ligar pra Apple é que conseguimos mudar o "õ" pra "o" e o "ç" pra "c".

C cedilha e Til não rolam

3 - Tentarás acessar o iTunes Connect assim que obtiveres a licença de desenvolvedor: Depois de obter a licença, desenvolvemos nosso aplicativo completo e quando fomos colocar na App Store, recebemos o erro: Apple ID does not have permission to access iTunes Connect (saiba mais). A solução: ligar pra Apple.

4 - Ligarás para a Apple usando o Skype: Depois de fazer muiiito DDI, descobrimos que é possível ligar para a Apple, no número 18006332152, gratuitamente usando o Skype. Basta ter uma boa conexão à Internet e esperar uns 10 minutos na linha até alguém te atender.

5 - Enviarás uma aplicação o mais rápido possível para a Apple: Eles colocam o seu contrato com prioridade baixa até você enviar uma aplicação e esta ser aprovada, ficando Pending contract (saiba mais). Confira esse trecho de um email recebido da Apple que confirma isso: "However, if you have an approved app waiting to go live, your contract setup will be prioritized to get your app in the App Store as quickly as possible":

App Pending Contract

6 - Não enviarás email para devcontracts@apple.com: Esse é o email "oficial" da Apple para tratar as questões contratuais - enviamos dezenas de emails para lá e nunca foram respondidos. O pior é que a Apple nos força a cair nessa pegadinha mandando respostas como "Please contact devcontracts@apple.com with this inquiry regarding your contracts." Ao invés deste email, siga o link ‘Contact Us’ no iTunes Connect. O ‘devprograms’ deverá lhe assistir no processo.

7 - Não enviarás fax para 408-974-9105: Desesperados após não receber resposta do devcontracts@apple.com, partimos para o fax. Esse é o número "oficial" do devContracts - nunca fomos respondidos.

8 - Enviarás o W8-BEN e Banking Info assim que conseguir a licença de desenvolvedor: Não deixe para submeter os dados do seu contrato pago para a última hora (quando o aplicativo estiver pronto) - ele demora meses para ser aprovado. Também achamos que existe uma relação entre o contrato gratuito (Free Applications Contract) e o pago, pois o nosso gratuito ficou meses pra ser aprovado e só foi quando submetemos o pago.

Contratos pendendo infinitamente

9 - Pagarás 30% de imposto para o governo norte-americano: As aplicações pagas que são vendidas para os EUA pagam, além de todos os impostos do Brasil e dos 30% da Apple, 30% para os EUA (pelo menos as Pessoas Jurídicas). É isso mesmo, não existe acordo para evitar a duplicidade no pagamento desse imposto entre o Brasil e os Estados Unidos. O pior é que grande parte dos brasileiros não compra pela App Store do Brasil, mas sim pela Americana, devido à questão de não termos a seção de jogos aqui.

10 - Para obter uma licença in-house, arrume um endereço nos EUA: Pois é... essa não teve jeito, quando precisamos de uma licença para desenvolvimento in-house (de US$ 299) para nosso primeiro projeto para iPhone, tentamos por mais de 5 meses, mas só conseguimos quando nosso cliente usou os dados da sede norte-americana. Para esse contrato, eles pedem dados que só as empresas de lá possuem.

Leia também:

  1. Licença da Apple
  2. Cine Mobits para iPhone na app store!

Onde está meu cinema?

Escrito por Karin em 24/05/09 14:15

Deseja encontrar o seu cinema no Cine Mobits? Saiba como.

Olá pessoal,

após o lançamento do Cine Mobits para iPhone, muitas pessoas estão perguntando onde estão os cinemas da Barra da Tijuca - Rio de Janeiro, por exemplo. Por isso estou escrevendo este post para tirar essa dúvida.

A fonte dos cinemas do Cine Mobits é o Google e a sua busca é baseada por proximidade, ou seja, quando busco cinemas do Rio de Janeiro, é como se fosse "Rio de Janeiro, Centro". Logo, infelizmente, os cinemas da Barra da Tijuca não entram na listagem.

Contudo, há uma solução: na tela de escolha de localidades é possível adicionar novas e nelas usar o GPS (no caso do Cine Mobits iPhone) ou entrar manualmente para obter uma localidade mais precisa, ou seja "Rio de Janeiro, Barra da Tijuca". Assim será possível visualizar os cinemas que antes não eram listados.

Adicionando localidade no Cine Mobits iPhone

Eu dei como exemplo Barra da Tijuca, porém essa funcionalidade serve para qualquer "Cidade, Bairro" do Brasil.

Espero que vocês disfrutem bastante do Cine Mobits e todas as críticas, sugestões e elogios serão sempre bem-vindos!

Até :)

Leia também:

  1. Cine Mobits para iPhone na app store!
  2. Lançada a versão 0.5 do Cine Mobits em Java

Cine Mobits para iPhone na app store!

Escrito por Afonso Junior em 21/05/09 17:14

App Store

Depois de muita burocracia, espera, milhões de ligações e e-mails trocados entre o tal do iTunes Connect, hoje recebemos a feliz notícia de que o Cine Mobits versão iPhone está no ar.

Cinemobits disponível para download via iTunes

Tivemos muitas indas e vindas a blogs, forums, e muitos percalços para que ele fosse disponibilizado. Depois colocaremos um post falando sobre nossa Via Crucis até a liberação.

Para você que tem iPhone, sinta-se a vontade para baixar! O link é

http://itunes.apple.com/WebObjects/MZStore.woa/wa/viewSoftware?id=311992515&mt=8&s=143441

ou simplesmente

http://tinyurl.com/cinembts

Baixem, avaliem, mandem feedback para podermos melhorá-lo cada vez mais.

Leia também:

  1. Cine Mobits para iPhone - em breve na App Store

CineMobits fora do ar

Escrito por Felipe Barreto em 20/05/09 13:07

Serviço ficou fora na manhã do dia 20/5 mas já foi restabelecido

Constatamos que o CineMobits parou de funcionar durante as últimas horas. Depois de muita pesquisa, descobrimos que se trata de um problema no nosso host - a empresa que hospeda nossos sites e serviços.

Já entramos em contato com eles para solucionarem o problema e estamos aguardando uma resposta.

Pedimos desculpas a todos que tentaram acessar o CineMobits e não conseguiram nesta manhã. Assim que estiver tudo resolvido, avisaremos a todos. Atualização - o serviço já foi restabelecido.

Obrigado pela atenção e pela paciência.
Mobits

Para aqueles que desejam se aventurar pelo mundo ainda em formação de desenvolvimento para dispositivos móveis, sempre fica aquela dúvida: que linguagem aprender primeiro? Lógico que não estou falando em Java, a linguagem inicial para nove entre dez neófitos.

Há alguns meses atrás, quando nós da Mobits fizemos nossa escolha, pesou mais um misto de necessidade e oportunidade, e acabamos embarcando no iPhone. O sistema da Apple já era uma realidade, havia toda uma badalação em cima do aparelho, e o desejo de um cliente de se aventurar por essas bandas foi nossa mola propulsora. Mas e agora? O que o cenário vislumbra?

Não há como discutir que o ano de 2008 foi o ano do iPhone. Seu lançamento, seu sucesso instantâneo, seu modelo de negócio inédito fez com que a Apple alavancasse e entrasse com força nesse cenário. Definitivamente, quem quisesse entrar nesse mercado, teria que seguir a rabeira da Apple, que indiscutivelmente saíra na frente.

Mas daí veio a crise. Não, não estou afirmando que a crise atrapalhou os negócios da companhia de Steve Jobs. Ela, na verdade, parece que não soube o que é (foi?) crise. Mas o problema é que as outras souberam. Ah, como souberam!

Se você pegar as manchetes, vai ver que a crise pegou em cheio as outras empresas de aparelhos. A Motorola anunciou queda de 26 por cento nas vendas no último trimestre do ano passado. Uma redução de US$3,6 bilhões que nenhuma empresa pode se dar ao luxo de ter. Outras empresas seguiram a mesma tendência, como era de se esperar em meio a uma crise econômica: Sony Ericsson, LG, Samsung também estão no mesmo barco.

E sabe quem ganha com isso? Android. O sistema, que na humilde opinião deste escriba teve um início tímido (pra não dizer decepcionante), tem começado a dar sinais de uma reviravolta vindo a caminho. Um estudo aponta que o sistema operacional do Google irá suplantar o iPhone OS em vendas em 2012. Isso graças às empresas que, a cada mês, anunciam que irão lançar seus celulares com Android. A Samsung já tem o seu aparelho pronto, a Motorola já anunciou que irá lançar um no segundo semestre, a LG está desenvolvendo os seus, enquanto a Sony Ericsson faz parte do consórcio que mantém o Android.

Android

Eu sempre questionei que no início as empresas que estavam lançando mão do Android não eram fortes aqui no Brasil. T-Mobile, HTC, não é algo que vejamos muito por aqui. Por isso eu era reticente sobre o sucesso dele. Agora perceba todas que estão no título deste post. Vai, me diga, não é o que todo mundo tem por aqui? Não é o que sua mãe, seu vizinho, seu professor sua namorada tem? Preciso dizer mais alguma coisa?

Mesmo não precisando, vale dizer: acho que tá na hora de você começar com o seu Hello World...

Leia também

  1. Aplicações JavaMe portadas para Android: é possível?
  2. Palm lança sua loja de aplicativos
  3. Lançada a versão 0.5 do Cine Mobits em Java

Cine Mobits no site do LWUIT da Sun

Escrito por Hildi em 07/05/09 19:29

Cine Mobits acabou de ganhar referência na sessão de featured apps no site do LWUIT da Sun.

O Cine Mobits foi referenciado recentemente no site do LWUIT. Toda a interface do Cine Mobits foi construída usando este framework.

Para aqueles que não conhecem, o LWUIT é o framework oficial da Sun para construção de interfaces gráficas em Java ME. Ele representa uma alternativa ao LCDUI (LCD User Interface) já presente no Java ME.

O LWUIT traz diversos recursos capazes de tornar a interface dos aplicativos em Java ME mais agradável, bonita e simples de usar.

Vantagens:

  • Arquitetura MVC;
  • Layouts;
  • Estilos e temas;
  • Fontes;
  • Suporte touch screen;
  • Animações e transições;
  • Integração 3D;
  • Internacionalização;
  • Performance moderada e baixo footprint;
  • Multi-plataforma (MIDP/CDC/FP/PBP);
  • Compatibilidade com SVG (scalable vector graphics);

Leia também:

  1. Lançada a versão 0.5 do Cine Mobits em Java

Inté!

Formatador Automático para Objective C

Escrito por Felipe Barreto em 04/05/09 19:55

Uma das coisas que me incomodam na hora de programar pra iPhone é que o XCode não possui um mecanismo para formatar automaticamente o código como há no Eclipse ou no NetBeans. O máximo que a IDE da Apple permite é tabular automaticamente um trecho de código selecionado. Muito fraco.

Durante a pesquisa, foi difícil escolher o termo certo para encontrar o que eu queria, pois existem diversas variações: code beautifier, formatter, code styler, entre outras.

Finalmente, encontrei o tal do Uncrustify que é um programa de terminal para UNIX - logo, para MAC - e que permite configurar uma série de parâmetros de formatação e aplicar sobre um arquivo de código de diversas linguagens baseadas em C - inclusive Objective C.

"Estou no caminho certo", pensei eu. "Agora só falta aprender a instalar, configurar e fazer o XCode usar o programinha". Depois de penar um pouco, cheguei ao artigo que me colocou na direção que eu esperava. Nem tudo o que foi dito nele funcionou 100% ou está completo, mas foi de grande ajuda para conseguir alcançar o que vou apresentar abaixo.

Baixando e instalando o Uncrustify

  • Faça o download do uncrustify e extraia em qualquer lugar;
  • Abra o arquivo uncrustify.xcodeproj no XCode e dê um Build (Command-B);
  • Volte à pasta onde extraiu o Uncrustify e procure o executável no caminho build/ppc.

Agora, como meu conhecimento de UNIX é meio tosco, não garanto que o passo seguinte seja o mais correto, mas funcionou. :D

  • Copie o executável para a pasta /usr/bin (pode ser necessário se autenticar como admin).

Pronto! O Uncrustify está disponível para ser usado por qualquer usuário da máquina.

Criando o arquivo de configuração

Na pasta do Uncrustify, você vai encontrar o arquivo etc/defaults.cfg que possui praticamente todos os parâmetros disponíveis acompanhado de comentários bem explicativos. Mas eles são muitos e configurá-los um por um sem ver o efeito que causam sobre o código é impensável para alguém preguiçoso como eu.

Felizmente, alguém teve a bondade de criar um configurador para diversas ferramentas como o Uncrustify, inclusive o próprio: UniversalIndentGUI.

Esta ferramenta, apesar de ter a interface um pouco tosca e com usabilidade mediana, facilita muito o trabalho, pois permite editar os parâmetros e ver imediatamente o resultado sobre um trecho de código que você pode fornecer e manipular durante a fase de configuração.

Não vou me aprofundar sobre os detalhes desta fase, mas se você não estiver interessado em passar por ela, compartilho aqui o arquivo - ainda em desenvolvimento - com o padrão de código da Mobits.

Usando o arquivo acima, ou gerando o seu próprio, recomendo salvá-lo em /etc/uncrustify/qualquer_coisa.cfg para que esteja disponível para todos os usuários.

Colocando no XCode

Embora o XCode não possua diversas ferramentas comuns em outras IDEs, ele tem um mecanismo simples para adicionar funcionalidades sem muito esforço: os User Scripts.

Uncrustify oara ObjectiveC no XCode

  • Abra a tela de edição dos User Scripts e adicione um Shell Script com nome tipo "Auto Format";
  • Sugiro definir um atalho de teclado, como command-shift-A;
  • Copie o código abaixo para o seu script (renomeie o arquivo de configuração se necessário):
#!/bin/sh
echo -n "%%%{PBXSelection}%%%"
uncrustify -q -l OC -c /etc/uncrustify/mobits-uncrustify.cfg
echo -n "%%%{PBXSelection}%%%"
  • Configure os parâmetros de entrada e saída
    • Input: Entire Document
    • Directory: Selection
    • Output: Replace Document Contents
    • Errors: Display in Alert

Pronto. Agora basta executar o script sobre o código que estiver aberto no momento e apreciar sua beleza. :D

Até a próxima.

Leia também:

  1. Saiba como customizar sua UITableView
  2. Comparação entre as soluções ORM para iPhone
  3. Teste automático de interface para suas Apps de iPhone