Em nosso novo resumo, análises no estúdio, outra decepção no Google Play, estruturas de dados e exposição de magia, um relatório de fraude e (finalmente!) DOOM II para iOS e Android.

Se você é um desenvolvedor independente, o upload de seus aplicativos gratuitos para o Google Play agora não faz sentido - mais cedo ou mais tarde, você encontrará algum tipo de violação e será banido.
No primeiro, mostrarei como está organizado o departamento de análise de produtos, quem são seus funcionários, o que eles fazem e por que tudo é exatamente isso e não o contrário.
Este resumo está disponível como um boletim semanal. Notícias diárias que enviamos para  Canal de telegrama .
 Canal de telegrama .• 
 iOS
 iOS• 
(+43) De um armazém no Daguestão - para programadores: como me tornei um desenvolvedor iOS do zero• 
(+21) O que esperar se você quiser se tornar um desenvolvedor iOS• 
(+17) Estruturas de dados com exemplos em Swift. Parte um: lista vinculada• 
(+14) AppCode 2019.2: Swift 5.1, análise de cobertura de código por testes, exibição de código desmontado e muito mais• 
(+8) Apresentando o SwiftUI: Criando um aplicativo simples usando o TableView• A 
Apple está crescendo dispositivos e serviços portáteis• 
 Processamento de linguagem natural no Swift
 Processamento de linguagem natural no Swift• 
 UICollectionView com células de tamanho automático
 UICollectionView com células de tamanho automático• 
 Você paga o sistema errado quando compra algo no iOS
 Você paga o sistema errado quando compra algo no iOS• 
 Conectar o aplicativo iOS ao AWS IoT
 Conectar o aplicativo iOS ao AWS IoT• 
 Adicione um botão Entrar com a Apple ao aplicativo.
 Adicione um botão Entrar com a Apple ao aplicativo.• 
 MVC sem C: o que o SwiftUI mudou na arquitetura do aplicativo?
 MVC sem C: o que o SwiftUI mudou na arquitetura do aplicativo?• 
 SwiftUI: as coisas estão mudando
 SwiftUI: as coisas estão mudando• 
 GyroImageView: rolagem de imagens com um giroscópio
 GyroImageView: rolagem de imagens com um giroscópio Android
 Android• 
(+31) Exibir texto no Android• 
(+21) Exponha a magia do DiffUtil• 
(+18) Alternando o idioma no aplicativo Android• 
(+10) ViewPager 2 - nova funcionalidade no wrapper antigo• 
(+7) Temas e estilos em aplicativos Android• 
(+2) Java vs Kotlin para Android: opiniões dos desenvolvedores• 
Google fará seu Arcade com aplicativos e metade do preço• 
Android App Store: 5 alternativas à Google Play Store• 
 Android MVVM - o que fazer e o que não fazer
 Android MVVM - o que fazer e o que não fazer• 
 Exibindo imagens em um aplicativo Android: suportado, testável, indolor
 Exibindo imagens em um aplicativo Android: suportado, testável, indolor• 
 Como o Pandao acelera o processo de atualização de aplicativos para Android
 Como o Pandao acelera o processo de atualização de aplicativos para Android• 
 Namespacing em Kotlin
 Namespacing em Kotlin• 
 12 melhores maneiras de reduzir o tamanho de um aplicativo Android durante o ciclo de vida do desenvolvimento
 12 melhores maneiras de reduzir o tamanho de um aplicativo Android durante o ciclo de vida do desenvolvimento• 
 Adaga Kotlin: Bugs e otimizações
 Adaga Kotlin: Bugs e otimizações• 
 Bug Hunting - O histórico de depuração do pacote real de aplicativos
 Bug Hunting - O histórico de depuração do pacote real de aplicativos• 
 FAB animado com opções avançadas
 FAB animado com opções avançadas• 
 Melhores soluções com novos dados do console do Google Play
 Melhores soluções com novos dados do console do Google Play• 
 Finch: mostra o tráfego OkHttp
 Finch: mostra o tráfego OkHttp Desenvolvimento
 Desenvolvimento• 
(+41) Timlid ou Lá e volta• 
(+27) Como diagnosticar problemas de integração do SDK. A experiência da equipe de desenvolvimento do Yandex Mobile Ads SDK• 
(+19) Como reconhecer imagens e textos no telefone usando o ML Kit• 
(+8) Jogo AirAttack! - nossa primeira experiência de desenvolvimento de VR• 
(+7) Desenvolvimento de uma interface de jogo para várias proporções de telas• 
(+7) Contribuição do designer para o desenvolvimento de aplicativos móveis• 
(+6) Trabalhar com navegação ao refatorar o projeto legado no React Native• 
Recursos para jogos 2D no Humble Bundle• 
AppsCast # 11: engenharia do caos• 
Podlodka # 122: Python• 
Projeto e uso de CI e CD• 
Lottiefiles: loja de animação• 
Desenvolvimento de jogos a uma velocidade de 0,1 jogos por hora• 
Dívida técnica e como reembolsá-la• 
Introduzido o padrão Unificado de Realidade Aumentada OpenXR• 
Roteiro do Teamlead: mapa de habilidades e modelo de desenvolvimento de equipes• 
Magic Leap lançou o primeiro jogo como parte do Programa de Criador Independente• 
Flutter Dev Podcast # 6: assíncrono• 
Meows.app - cliente para Apple Music• 
WeChat está assistindo você• 
Como mudamos a fase de teste no desenvolvimento de aplicativos• 
 O Conto de um Programador Brilhante
 O Conto de um Programador Brilhante• 
 30 coisas que gostaria de saber no início de uma aula de programação
 30 coisas que gostaria de saber no início de uma aula de programação• 
 Posso aprender programação no telefone?
 Posso aprender programação no telefone?• 
 Promoção de Atividades de Museus - Pesquisa UX
 Promoção de Atividades de Museus - Pesquisa UX• 
 gRPC e como ele pode economizar tempo de desenvolvimento
 gRPC e como ele pode economizar tempo de desenvolvimento• 
 Maneiras de criar comutadores de conta e alternadores de aplicativos
 Maneiras de criar comutadores de conta e alternadores de aplicativos• 
 Desenvolvedores mais que macacos
 Desenvolvedores mais que macacos• 
 Crie seu Google Firebase + Heroku no Kubernetes por US $ 30 com o Space Cloud
 Crie seu Google Firebase + Heroku no Kubernetes por US $ 30 com o Space Cloud• 
 Lançamento do Unity 2019.2
 Lançamento do Unity 2019.2• 
 Ionic não é a única estrutura para orientar todos
 Ionic não é a única estrutura para orientar todos• 
 Rozental como serviço: procure erros de digitação na fonte
 Rozental como serviço: procure erros de digitação na fonte Análise, marketing e monetização
 Análise, marketing e monetização• 
(+18) Os fabricantes de smartphones americanos em 2019 sofreram um declínio significativo na receita devido a novos mecanismos para combatê-los• 
(+9) Abordagens para segmentação de players móveis• 
(+9) Usabilidade móvel no comércio eletrônico: análise das 20 principais lojas online da Rússia• 
(+3) Estatísticas a serviço de uma empresa. Metodologia de cálculo de múltiplas experiências• 
DOOM e DOOM II lançados no iOS e Android• 
Os aplicativos chineses mais baixados do mundo• 
Muzmatch: namoro para muçulmanos• O 
Google lançou publicidade de aplicativos no Discover• 
Lightricks se tornou um unicórnio• 
Relatório sobre fraudes em redes móveis para 2019• 
Experiência na promoção do jogo no PornHub: CPC $ 0,018 e 0 instalações• 
Personalização: 3 estratégias que garantem o sucesso da sua aplicação• 
Principais países por downloads no 2º trimestre de 2019• 
Seu jogo pode melhorar: como encontrar problemas e pontos de crescimento• 
 Iniciando seu aplicativo independente
 Iniciando seu aplicativo independente• 
 Melhore seus ativos na loja de aplicativos e trabalhe com ele usando essas ferramentas
 Melhore seus ativos na loja de aplicativos e trabalhe com ele usando essas ferramentas AI, Dispositivos, IoT
 AI, Dispositivos, IoT• 
(+35) visualização de notícias de Runet• 
(+22) Como implementamos o ML em um aplicativo com quase 50 milhões de usuários. Experiência Sberbank• 
(+5) Chaleiras e assistentes de voz. O começo de uma grande amizade• 
(+5) Identificação de dispositivos IoT do ponto de vista do desenvolvedor• 
ByteDance faz seu próprio smartphone• 
 Placa de espera própria no Raspberry Pi
 Placa de espera própria no Raspberry Pi← Resumo 
anterior . Se você tiver outros materiais interessantes ou se encontrar algum erro, envie-o para o 
correio .