ImageCreator foi descontinuada: o que quebra no iOS 27
A Apple publicou hoje um aviso de descontinuação que precisa de atenção antes do outono: a classe ImageCreator, a API do Image Playground para gerar imagens programaticamente sem UI, “está sendo descontinuada e deixará de funcionar no iOS 27, iPadOS 27, macOS 27 e visionOS 27 ou posterior.”1 O aviso é incomumente concreto sobre como a quebra se desenrola. Durante os lançamentos beta do sistema operacional, o código que usa ImageCreator ainda compila com avisos do Xcode, mas os apps “não funcionarão em builds do TestFlight e causarão um erro de runtime.”1 Nos lançamentos públicos do sistema operacional, o código deixa de compilar por completo.1 Uma API que chegou no iOS 18.4 desaparece uma versão principal depois, e a sessão da WWDC que explica o porquê também percorre o caminho de migração.
O anúncio da descontinuação aos 4:34 da sessão 375.
TL;DR
- A Apple está descontinuando a
ImageCreator, a API de geração programática de imagens no framework Image Playground. Ela deixa de funcionar no iOS 27, iPadOS 27, macOS 27 e visionOS 27.1 A documentação da Apple marca a descontinuação na 27.0 em cinco plataformas, incluindo o Mac Catalyst.2 - A quebra é em etapas: os lançamentos beta compilam com avisos, mas falham em runtime no TestFlight; os lançamentos públicos se recusam a compilar.1 A instrução da Apple é migrar “antes do lançamento público.”1
- A razão é arquitetural. Os modelos do Image Playground migraram para o Private Cloud Compute neste ano e, como a sessão coloca, “Mover os modelos para o Private Cloud Compute também significou repensar a API.”3
- A substituição é a UI do sistema: o modificador SwiftUI
imagePlaygroundSheet, ou oImagePlaygroundViewControllerpara apps UIKit e AppKit.3 A sugestão alternativa da Apple é direta: integrar “outro serviço de geração de imagens de sua escolha.”1 - O novo sheet é mais capaz do que o antigo: estilos fotorrealistas, semeadura com conceitos, desenhos e imagens de origem, configuração de tamanho e estilo, e um estilo opcional
externalProviderque expõe um provedor de terceiros como o ChatGPT.3
O que a Apple anunciou, com precisão
O aviso de 11 de junho no feed de notícias para desenvolvedores da Apple apresenta um cronograma de duas etapas.1 Nos lançamentos beta do sistema operacional, seu código continua a compilar, o Xcode começa a emitir avisos, e os apps que chamam ImageCreator encontram um erro de runtime em builds do TestFlight. Nos lançamentos públicos do sistema operacional, o código que referencia a classe deixa de compilar, e qualquer recurso construído sobre ela para de funcionar para os usuários. O item de ação da Apple nomeia o prazo: atualize sua implementação “antes do lançamento público do iOS 27, iPadOS 27, macOS 27 e visionOS 27.”1
A documentação conta a mesma história em formato de referência de API. A ImageCreator chegou no iOS e iPadOS 18.4, macOS 15.4 e visionOS 2.4, e cada linha de plataforma agora carrega uma descontinuação na 27.0, com o Mac Catalyst se juntando às quatro plataformas que o post de notícias nomeia.2 O resumo da classe descreve exatamente o que está sendo perdido: ela “gera imagens programaticamente a partir da descrição e das informações de estilo que você especifica.”2 Não há substituição programática. Apps que geravam imagens de forma headless, sem apresentar UI, não têm equivalente direto no framework. Um passo a passo anterior da API do Image Playground mostra a chamada images(for:style:limit:) da qual esses apps dependiam.
Para desenvolvedores que já abandonaram a classe, o aviso fecha o ciclo: “Nenhuma ação adicional é necessária.”1
Por quê: os modelos migraram para o Private Cloud Compute
A sessão 375, “Create high quality images using Image Playground”, declara a razão de forma oficial. O Image Playground foi reconstruído neste ano em torno de modelos de imagem mais potentes que produzem “imagens de alta qualidade em praticamente qualquer estilo, até mesmo os fotorrealistas”, e esses modelos rodam no Private Cloud Compute, a infraestrutura de nuvem que preserva a privacidade da Apple, em vez de no dispositivo.3 Então a sessão conecta os pontos: “Mover os modelos para o Private Cloud Compute também significou repensar a API. A ImageCreator, a API sem UI para gerar imagens diretamente no seu código, está descontinuada.”3
A economia explica a escolha de design. O Image Playground agora tem um limite de uso “porque depende de modelos de servidor potentes”, com acesso ampliado disponível por meio da maioria dos planos de assinatura do iCloud+.3 O sistema gerencia esses limites em nome do usuário, e a sessão é explícita ao afirmar que o desenvolvedor nunca constrói uma UI relacionada ao uso.3 Uma API headless que os apps poderiam chamar em loop se encaixa de forma desconfortável dentro desse modelo; um sheet apresentado pelo sistema e conduzido pelo usuário não. Qualquer que seja o raciocínio interno, o resultado entregue é que a geração de imagens no framework agora passa pela experiência do sistema.
Um efeito colateral que vale nomear: a ImageCreator executava a geração no dispositivo, enquanto a nova experiência roda no Private Cloud Compute, com a garantia da sessão de que “seus dados nunca são armazenados ou compartilhados, nem mesmo com a Apple.”3 Apps com um requisito rígido de geração de imagens no dispositivo são aqueles que o framework não atende mais.
A migração: um único view modifier
Para apps SwiftUI, a adoção da substituição é pequena. O app de demonstração da sessão anexa .imagePlaygroundSheet a um botão com um binding a um booleano @State; quando o binding muda para true, o sheet aparece, e o closure de conclusão recebe uma URL para o arquivo gerado.3 A URL aponta para um local temporário dentro do contêiner do app, então a sessão avisa para salvá-la em outro lugar antes do fim da sessão.3 Apps UIKit e AppKit obtêm a mesma experiência por meio do ImagePlaygroundViewController, definindo conceitos e opções como propriedades e recebendo o resultado por um método de delegate.3
O que o sheet perde em programabilidade ele recupera em parte na semeadura. O ImagePlaygroundConcept leva o contexto do app para dentro do sheet: text envolve uma descrição direta, extracted recebe um texto mais longo e deixa o sistema extrair as ideias relevantes, e drawing aceita um PKDrawing do PencilKit como sugestão visual.3 Um parâmetro sourceImage semeia o sheet com qualquer Image do SwiftUI como inspiração.3 ImagePlaygroundOptions e ImagePlaygroundStyle configuram o resto: uma solicitação de tamanho closest(to:) mapeia qualquer CGSize para a resolução e proporção suportadas mais próximas, e o estilo de geração recebe um padrão mais uma lista permitida, travando o seletor em um único estilo quando a lista tem uma entrada.3
Dois recursos mais novos adoçam a troca. O estilo externalProvider é uma entrada opcional que expõe qualquer provedor de terceiros que o usuário tenha configurado nos Ajustes, o ChatGPT por exemplo, com o sistema cuidando da configuração quando nenhum provedor existe.3 E o estilo de emoji dispara uma conclusão separada que devolve um NSAdaptiveImageGlyph, incorporável inline com o texto como um emoji.3
O tratamento de disponibilidade permanece simples: o environment value supportsImageGeneration retorna true apenas quando o dispositivo tem a capacidade, o idioma e a região são suportados, e o usuário tem a geração de imagens habilitada, então uma única condicional cobre o caminho de fallback.3
A decisão para os apps afetados
O aviso oferece duas opções de migração, e a sessão fornece o material de julgamento. Apps cuja geração de imagens era um recurso criativo voltado ao usuário devem adotar o sheet: os novos modelos são mais fortes do que aquilo que a ImageCreator invocava, a API de semeadura leva o contexto do app para dentro, e o sistema absorve limites de uso, seletores de estilo e personalização de pessoas de graça.3 Apps que dependiam da geração headless, produzindo imagens em um fluxo em segundo plano sem interação do usuário, não têm caminho dentro do framework; para eles, a segunda opção da Apple, integrar “outro serviço de geração de imagens de sua escolha”, é a resposta honesta.1
A descontinuação também se encaixa em um padrão deste ciclo. A Apple marcou o MXMetricManager como descontinuado na 27.0 na mesma semana em que entregou as APIs de relatório substitutas, abordadas em Relatório de estado do iOS 27 com o MetricKit. A plataforma está podando APIs um ciclo após a chegada de suas substitutas, e o período beta é a janela de migração. O On Demand Resources segue o mesmo ritmo: o Background Assets gerenciado que o substitui chegou no iOS 26.0, uma versão antes.
FAQ
Quando exatamente a ImageCreator para de funcionar?
Em etapas.1 Durante os betas do iOS 27, iPadOS 27, macOS 27 e visionOS 27, o código compila com avisos do Xcode, mas os builds do TestFlight encontram um erro de runtime. Nos lançamentos públicos deste outono, o código deixa de compilar e os recursos param de funcionar para os usuários. A documentação da Apple marca a descontinuação na 27.0 em iOS, iPadOS, macOS, Mac Catalyst e visionOS.2
Por que a Apple removeu a geração programática de imagens?
A sessão atribui isso à mudança de arquitetura: os modelos do Image Playground migraram para o Private Cloud Compute, e “mover os modelos para o Private Cloud Compute também significou repensar a API.”3 O novo sistema gerencia os limites de uso do modelo de servidor em nome do usuário, com acesso ampliado por meio dos planos do iCloud+, um modelo que se encaixa melhor em um sheet conduzido pelo usuário do que em uma API headless.3
O que a substitui?
A UI do sistema: o modificador imagePlaygroundSheet no SwiftUI ou o ImagePlaygroundViewController no UIKit e AppKit.3 Você pode semeá-la com conceitos de texto, texto extraído, desenhos do PencilKit e uma imagem de origem, e configurar tamanho, estilos e personalização. Para a geração headless, a alternativa indicada pela Apple é um serviço de geração de imagens de terceiros.1
Algo gerado ainda é feito no dispositivo?
A sessão descreve a nova geração de imagens como rodando no Private Cloud Compute, com a garantia de que os dados “nunca são armazenados ou compartilhados, nem mesmo com a Apple.”3 Apps que exigem geração de imagens estritamente no dispositivo não têm mais um caminho no framework para isso.
A transição para o Private Cloud Compute que impulsiona a mudança é a mesma que está remodelando o lado de texto do Apple Intelligence, abordada em Foundation Models e Private Cloud Compute. Para a outra descontinuação que a Apple entregou neste ciclo junto com uma substituta, veja Relatório de estado do iOS 27 com o MetricKit. O hub completo da série é a Série Apple Ecosystem.
Referências
-
Apple, Deprecation of the ImageCreator class, Apple Developer News, 11 de junho de 2026. Fonte para a descontinuação (“the ImageCreator class is being discontinued and will no longer work in iOS 27, iPadOS 27, macOS 27, and visionOS 27 or later”), o cronograma em etapas (lançamentos beta: o código compila com avisos do Xcode, os apps “will not function in TestFlight builds and will cause a runtime error”; lançamentos públicos: o código não compila e os recursos param de funcionar), a instrução de atualizar antes do lançamento público, as duas opções de migração (o sheet do Image Playground, ou “another image generation service of your choice”), e a nota de que apps já migrados não precisam de ação adicional. ↩↩↩↩↩↩↩↩↩↩↩↩↩
-
Apple, ImageCreator documentation, Apple Developer Documentation. Fonte para a matriz de disponibilidade de plataformas (introduzida no iOS 18.4, iPadOS 18.4, macOS 15.4, visionOS 2.4; descontinuada na 27.0 em iOS, iPadOS, macOS, Mac Catalyst e visionOS) e o resumo da classe (“Generates images programmatically from the description and style information you specify”). ↩↩↩↩
-
Apple, WWDC 2026 sessão 375, Create high quality images using Image Playground. Transcrição oficial. Fonte para a declaração e justificativa da descontinuação (“Moving the models to Private Cloud Compute also meant rethinking the API. ImageCreator, the non-UI API for generating images directly in your code, is deprecated”), as novas capacidades do modelo (“high quality images in virtually any style, even photorealistic ones”), a execução no Private Cloud Compute com a garantia de privacidade (“your data is never stored or shared, even with Apple”), os limites de uso e o acesso ao iCloud+ com UI de limite gerenciada pelo sistema, o fluxo de adoção do
imagePlaygroundSheet(apresentação conduzida por binding, URL de conclusão em um local temporário do contêiner do app), oImagePlaygroundViewControllerpara UIKit e AppKit com resultados baseados em delegate, a semeadura doImagePlaygroundConcept(text,extracted,drawingcom PencilKit), o parâmetrosourceImage, oImagePlaygroundOptionscom mapeamento de tamanhoclosest(to:), os padrões de estilo e listas permitidas incluindo o travamento em um único estilo, o estilo opcionalexternalProvidercom o ChatGPT como exemplo e a configuração tratada pelo sistema, a conclusão doNSAdaptiveImageGlyphdo estilo de emoji, e o environment valuesupportsImageGenerationcobrindo capacidade, idioma e região, e a configuração do usuário. ↩↩↩↩↩↩↩↩↩↩↩↩↩↩↩↩↩↩↩↩↩↩