Anúncio fechado

Em sua última palestra na WWDC em 2011, Steve Jobs apresentou um serviço que ainda aterroriza muitos desenvolvedores. Não é outro senão o iCloud, o sucessor salutar do problemático MobileMe. No entanto, mesmo o iCloud apresenta erros. E os desenvolvedores estão revoltados…

Steve Jobs demonstrou o iCloud pela primeira vez em junho de 2011, o serviço foi lançado quatro meses depois e já está em operação há cerca de um ano e meio. Superficialmente, um serviço relativamente tranquilo que, nas palavras do lendário visionário, "simplesmente funciona" (ou pelo menos deveria), mas por dentro, um mecanismo indomável que muitas vezes faz o que quer, e os desenvolvedores não têm nenhuma arma eficaz contra isto.

“Tudo acontece automaticamente e é muito fácil conectar seus aplicativos ao sistema de armazenamento iCloud”, Jobs disse na época. Quando os desenvolvedores se lembrarem de suas palavras agora, eles provavelmente ficarão irritados. “O iCloud simplesmente não funcionou para nós. Nós realmente gastamos muito tempo nisso, mas a sincronização do iCloud e do Core Data teve esses problemas que não conseguimos resolver.” ele admitiu o chefe do estúdio Black Pixel, responsável, por exemplo, pelo conhecido leitor RSS NetNewsWire. Para ela, o iCloud deveria ter sido a solução ideal para sincronização, principalmente num momento em que o Google está prestes a fechar o seu Google Reader, mas a aposta no serviço da maçã não deu certo.

Nada funciona

É surpreendente que um serviço que tem mais de 250 milhões de utilizadores e é, portanto, um dos maiores do género no mundo, tenha tais problemas. Olhando rapidamente para o assunto, alguém poderia apontar o dedo para os desenvolvedores, mas eles são inocentes nisso no momento. O iCloud tenta implementar muitos deles em seus aplicativos, mas suas tentativas geralmente fracassam. Porque o iCloud tem sérios problemas de sincronização.

[do action=”quote”]Não consigo nem contar todos os desenvolvedores que tiveram problemas e acabaram desistindo.[/do]

“Reescrevi meu código do iCloud várias vezes na esperança de encontrar uma solução funcional” ele escreveu desenvolvedor Michael Göbel. Porém, ele não encontrou uma solução e, portanto, ainda não pode comercializar seus aplicativos, ou melhor, a App Store. “Não consigo nem contar todos os desenvolvedores e empresas que enfrentaram os mesmos problemas que eu e acabaram desistindo. Depois de perder centenas de milhares de dados de usuários, eles simplesmente abandonaram completamente o iCloud.”

O maior problema da Apple com o iCloud é a sincronização de banco de dados (Core Data). Os outros dois tipos de dados que podem ser sincronizados via nuvem da Apple – configurações e arquivos – funcionam dentro de limites sem problemas. No entanto, o Core Data se comporta de forma totalmente imprevisível. É uma estrutura de alto nível que permite sincronizar vários bancos de dados entre dispositivos. “O iCloud prometeu resolver todos os problemas de sincronização de banco de dados com suporte Core Data, mas simplesmente não funciona”, disse um dos desenvolvedores proeminentes, que não quis ser identificado para manter boas relações com a Apple.

Ao mesmo tempo, a Apple ignora completamente esses problemas, o iCloud continua a anunciar como uma solução simples e os usuários exigem isso dos desenvolvedores. Mas, apesar dos melhores esforços do desenvolvedor, os dados dos usuários desaparecem incontrolavelmente e os dispositivos param de sincronizar. “Esses problemas geralmente levam horas para serem resolvidos e alguns podem danificar permanentemente suas contas”, outro desenvolvedor líder recorre à Apple e acrescenta: “Além disso, a AppleCare não consegue resolver esses problemas com os clientes.”

“Lutamos o tempo todo com a combinação do Core Data e do iCloud. Todo este sistema é imprevisível e o desenvolvedor muitas vezes tem opções limitadas para influenciar o seu funcionamento." descreve o estúdio de desenvolvimento tcheco Toque em Arte, que nos confirmou que devido a problemas persistentes, está abandonando esta solução e trabalhando por conta própria, na qual utilizará a sincronização de arquivos em vez da sincronização de banco de dados propriamente dita. Ele poderá então utilizar o iCloud para isso, pois a sincronização dos arquivos ocorre por meio dele sem problemas. Afinal, isso também foi confirmado pelos desenvolvedores da Jumsoft: "O iCloud é sem dúvida uma ótima ferramenta para armazenamento direto de arquivos." No entanto, a Jumsoft, infelizmente, precisa do Core Data para seu conhecido aplicativo Money, e isso é um obstáculo.

[do action="quote"]iCloud e Core Data são o pior pesadelo de todo desenvolvedor.[/do]

Muitos problemas também resultam de situações inesperadas que podem ocorrer facilmente, como quando um usuário efetua logout de um ID Apple em seu dispositivo e faz login por meio de outro. A Apple não conta com eles. “Como resolver o problema quando o usuário, que não está logado no iCloud, liga o aplicativo, depois se conecta ao iCloud e inicia o aplicativo novamente?” ele perguntou com um desenvolvedor nos fóruns da Apple.

Todos os problemas com o iCloud culminam na insatisfação dos usuários do aplicativo que perdem dados, enquanto os desenvolvedores muitas vezes apenas assistem impotentes. “Os usuários reclamam comigo e classificam os aplicativos com uma estrela” ele reclamou nos fóruns da Apple, o desenvolvedor Brian Arnold, que ainda não recebeu uma explicação da Apple sobre o que fazer com problemas semelhantes, ou por que eles acontecem. E os fóruns estão cheios de reclamações sobre a sincronização do iCloud.

Alguns desenvolvedores já estão perdendo a paciência com o iCloud, e não é à toa. “iCloud e Core Data são o pior pesadelo de todo desenvolvedor”, declarado para The Verge desenvolvedor sem nome. "É frustrante, às vezes enlouquecedor e vale horas intermináveis ​​de solução de problemas."

A Apple está em silêncio. Ele mesmo contorna os problemas

Talvez não seja de admirar que os problemas da Apple com o iCloud passem como se nada tivesse acontecido. A Apple praticamente não utiliza o problemático Core Data em seus aplicativos. Na verdade, existem dois iClouds – um que alimenta os serviços da Apple e outro que é oferecido aos desenvolvedores. Aplicativos e serviços como iMessage, Mail, backup do iCloud, iTunes, Photo Stream e outros são desenvolvidos com tecnologia completamente diferente daquela disponível para desenvolvedores terceirizados. Ou seja, aquele com quem existem problemas constantes. Os aplicativos do pacote iWork (Keynote, Pages, Numbers) usam a mesma API que os aplicativos de terceiros, mas apenas para uma sincronização de documentos muito mais simples, que a Apple toma muito cuidado para fazer funcionar. Quando eles permitem o iCloud e o Core Data em seu aplicativo em Cupertino, eles não são melhores em termos de confiabilidade do que os desenvolvedores terceirizados. O aplicativo Trailers, que usa Core Data para sincronização, fala por si, e os usuários perdem regularmente alguns registros.

No entanto, com os Trailers, que não são tão populares, esses problemas são relativamente fáceis de perder. Mas então o que os desenvolvedores dos aplicativos mais populares deveriam dizer aos seus usuários, que simplesmente dependem dos problemáticos Core Data do iCloud, mas muitas vezes não conseguem garantir o tipo de funcionalidade que a Apple anuncia constantemente em seus anúncios? A Apple certamente não os ajudará. “Alguém da Apple pode comentar esta situação?” ele perguntou sem sucesso no fórum, o desenvolvedor Justin Driscoll, que foi forçado a encerrar seu próximo aplicativo devido ao iCloud não confiável.

Durante o ano, a Apple não ajuda os desenvolvedores, então todos esperavam que algo fosse resolvido pelo menos na WWDC do ano passado, ou seja, uma conferência destinada a desenvolvedores, mas mesmo aqui a Apple não trouxe muita ajuda sob a enorme pressão dos desenvolvedores. Por exemplo, ele forneceu um código de exemplo que pode ser usado para sincronizar Core Data, mas estava longe de estar completo. Novamente, nenhuma ajuda significativa. Além disso, os engenheiros da Apple pediram aos desenvolvedores que esperassem pelo iOS 6. "Mudar do iOS 5 para o iOS 6 tornou as coisas XNUMX% melhores" confirmado por um desenvolvedor não identificado, "mas ainda está longe do ideal." Segundo outras fontes, a Apple tinha apenas quatro funcionários cuidando dos Core Data no ano passado, o que mostraria claramente que a Apple não está interessada nesta área. No entanto, a empresa recusou-se a comentar esta informação.

Adeus e lenço

Depois de todas as vicissitudes mencionadas, não é surpreendente que muitos desenvolvedores tenham dito não ao iCloud, embora provavelmente com o coração pesado. Era o iCloud quem deveria finalmente trazer algo que os desenvolvedores ansiavam - uma solução simples que garantisse bancos de dados idênticos e sua sincronização constante em dois ou mais dispositivos. Infelizmente, a realidade é diferente. “Quando olhamos para o iCloud e o Core Data como uma solução para nosso aplicativo, percebemos que não poderíamos usá-los porque nada funcionaria”, disse o desenvolvedor de alguns dos aplicativos mais vendidos para iPhone e Mac.

Outra razão pela qual o iCloud não é facilmente abandonado é o fato de a Apple perceber os aplicativos que utilizam seus serviços (iCloud, Game Center), e ignorar completamente aqueles que não possuem nada Apple na App Store. O iCloud também é uma boa solução do ponto de vista de marketing.

O Dropbox, por exemplo, é oferecido como uma alternativa possível, mas não é mais tão fácil de usar. Por um lado, o usuário deve configurar outra conta (o iCloud fica disponível automaticamente na compra de um novo dispositivo) e, por outro lado, é necessária autorização para que o aplicativo possa funcionar, o que também falha com o iCloud. E finalmente – o Dropbox oferece sincronização de documentos, o que simplesmente não é o que os desenvolvedores procuram. Eles querem sincronizar bancos de dados. “O Dropbox, que é o mais usado no momento, provou seu valor na sincronização de dados. Mas quando se trata de sincronizar o banco de dados, dependemos do iCloud", admite Roman Maštalíř da Touch Art.

[do action="quote"]Gostaria de dizer à Apple que eles consertaram tudo no iOS 7, mas não acredito muito nisso.[/do]

Porém, os desenvolvedores do aplicativo 2Do não tiveram paciência, devido às inúmeras experiências negativas com o iCloud, eles nem experimentaram o serviço apple e imediatamente criaram sua própria solução. “Não usamos o iCloud por causa de todos os problemas. É um sistema muito fechado sobre o qual não poderíamos ter tanto controle quanto gostaríamos", afirmou. o desenvolvedor Fahad Gillani nos contou. “Escolhemos o Dropbox para sincronização. No entanto, não usamos a sincronização de documentos, escrevemos nossa própria solução de sincronização para isso."

Outro estúdio tcheco, Madfinger Games, também não possui iCloud em seus jogos. No entanto, o criador dos populares títulos Dead Trigger e Shadowgun não utiliza o serviço da Apple por motivos ligeiramente diferentes. “Temos nosso próprio sistema baseado em nuvem para salvar posições no jogo, porque queríamos poder transferir o progresso do jogo entre plataformas”. David Kolečkář revelou-nos que devido ao desenvolvimento de jogos tanto para iOS como para Android para Madfinger Games, o iCloud nunca foi uma solução.

Haverá uma solução?

Com o passar do tempo, muitos desenvolvedores estão perdendo lentamente a esperança de que a Apple encontre uma solução. Por exemplo, a próxima WWDC está chegando, mas como a Apple praticamente não se comunica com os desenvolvedores até agora, não se espera que ela venha para a WWDC de braços abertos, cheia de conselhos e respostas. “Tudo o que podemos fazer é continuar enviando relatórios de bugs para a Apple e esperar que eles os resolvam”, lamentou um desenvolvedor iOS não identificado, com outro ecoando seus sentimentos: “Eu adoraria dizer à Apple que eles consertaram tudo no iOS 7 e que o iCloud pode finalmente ser usado sem problemas depois de dois anos, mas eu realmente não acredito nisso.” Mas será o iOS 7 que deverá ser o tema central da WWDC deste ano, para que os desenvolvedores possam pelo menos ter esperança.

Se a Apple não oferecer uma solução para os problemas do iCloud em uma nova versão de seu sistema operacional, poderá ser um prego virtual no caixão para alguns projetos. Um dos desenvolvedores, que tem apoiado fortemente o iCloud até agora, diz: "Se a Apple não consertar isso no iOS 7, teremos que abandonar o navio."

Zdroj: TheVerge.com, TheNextWeb. com
.