Em outubro, a equipe do Pure Music Player alcançou progressos importantes na sincronização de acervos, na adaptação para novos formatos de dispositivos, na experiência de conexão com serviços e na confiabilidade do armazenamento subjacente. Confira a seguir os principais destaques deste relatório semanal.
🔄 Sincronização incremental do Subsonic: Economia de dados e atualização em segundos
Para tornar a sincronização de bibliotecas remotas muito mais eficiente e ágil, renovamos por completo o mecanismo de sincronização de fontes Subsonic:
- Mecanismo de busca incremental: Substituímos as antigas varreduras completas pela sincronização incremental, baixando apenas as faixas que sofreram alterações no servidor remoto, economizando dados e encurtando sensivelmente o tempo de espera.
- Cancelamento a qualquer momento e progresso unificado: A sincronização pode ser cancelada manualmente quando desejado; o centro de fontes e a linha de cada fonte exibem exatamente o mesmo progresso em tempo real.
- Preenchimento automático de capas e letras: Ao concluir a sincronização, o sistema recupera automaticamente em segundo plano as capas de álbuns e letras que estiverem faltando; as letras são gravadas localmente e podem ser lidas mesmo sem conexão à internet.
- Gravação separada de entidades com o mesmo nome: Álbuns e artistas homônimos provenientes de fontes distintas são cadastrados de modo independente, evitando sobrescritas acidentais.
- Status transparentes e suporte a múltiplos idiomas: A tela de informações da música indica expressamente a origem dos metadados no Subsonic; ao terminar, a biblioteca é atualizada de forma automática; estados não sincronizado, em sincronização, em preenchimento e com falha trazem mensagens claras em 9 idiomas.
📱 Interface de reprodução para iPhone dobrável: Tela adaptável a 5 posturas
Para receber as novas categorias de aparelhos, desenvolvemos uma interface de reprodução inédita para iPhone dobrável e dispositivos dobráveis de tela dupla:
- Diagramação inteligente em 5 posturas: O layout de reprodução adaptável escolhe automaticamente entre os formatos tenda, retrato, paisagem, desdobrado e livro de acordo com a posição do aparelho.
- Prevenção de vincos e áreas encobertas: Algoritmos de diagramação detectam com precisão o vinco físico e as áreas obstruídas pelo sistema. No formato desdobrado, a capa e os controles de reprodução ficam à esquerda, enquanto as letras ou a fila ocupam a direita; no estilo livro, as letras acomodam-se confortavelmente na metade inferior.
- Proteção cuidadosa de retorno: Há uma chave de duas etapas: é possível retornar à tela de reprodução tradicional com um único toque ou apenas desativar a exibição em duas colunas no modo desdobrado, para que o iPad na horizontal volte à diagramação empilhada tradicional.
- Acompanhamento das áreas seguras do sistema: Removemos antigas heurísticas baseadas em dimensões de tela ou tipos de aparelho, alinhando a interface diretamente às áreas seguras indicadas pelo sistema operacional. Os testes em aparelhos dobráveis físicos seguem em andamento, refinando animações e acessibilidade.
🔗 Configuração simplificada do PureStream: Conexão direta sem senha, clara e intuitiva
Reformulamos todo o fluxo de configuração para conexão com o servidor PureStream:
- Escolha intuitiva entre dois modos: Quando não configurado, exibe inicialmente uma breve descrição geral, seguida de dois cartões de modo: o «Cartão de vinculação», que esclarece a necessidade de assinatura do PureStream, e o «Cartão de conexão direta», explicando o suporte a servidores PureStream próprios ou a servidores Subsonic de terceiros.
- Autorização direta sem senha: Após a vinculação, o reprodutor obtém credenciais temporárias diretamente do servidor doméstico por meio da autorização do aparelho, dispensando a digitação de usuário e senha.
- Hierarquia visual limpa: Removemos exibições estáticas de endereços de servidor, bem como nomes de host e caminhos físicos de arquivos na área de diagnósticos. Quando configurado, organiza-se de modo lógico: «Resumo → Conexão/Sincronização → Progresso → Ação principal → Qualidade de áudio → Diagnósticos», com as opções de qualidade recolhidas por padrão.
⏱ Tranquilidade em redes sobrecarregadas: Novas tentativas inteligentes e recuo gradual
Diante de oscilações na rede ou picos de tráfego no servidor, o cliente opera com muito mais robustez:
- Tentativas conforme orientação do servidor: Quando o servidor retorna «Tente novamente mais tarde», o cliente aguarda o tempo recomendado pelo próprio servidor, em vez de insistir cegamente a cada 5 segundos e falhar após 6 tentativas.
- Aviso imediato de limite de requisições: Caso atinja o limite de taxa de requisições, o usuário é avisado prontamente para tentar mais tarde, sem esperas silenciosas e indefinidas.
- Tratamento diferenciado de falhas: Falhas comuns de rede utilizam recuo progressivo suave com limite fixo; erros definitivos como assinaturas inativas, divergência de residência ou autorizações expiradas interrompem tentativas imediatamente. Cada solicitação traz um identificador exclusivo para facilitar o rastreamento no servidor.
📚 Reformulação das opções do modo de grande biblioteca: Claro, conciso e intuitivo
Visando facilitar a administração de acervos com dezenas de milhares de músicas, reformulamos a tela de configuração do modo de grande biblioteca (Large Library Mode):
- Padronização na nomenclatura: Unificamos o nome sob «Modo de grande biblioteca / Large Library Mode», abandonando termos conflitantes como «Índice de lista rápida» e «Modo de alto desempenho».
- Fim das informações repetidas: Cada detalhe técnico surge apenas uma vez; tamanho da biblioteca, progresso de indexação e vantagens de assinatura ganham posições dedicadas, sem acúmulo desnecessário de cartões aninhados.
- Layout responsivo e adaptativo: A barra de progresso ocupa toda a largura da linha, eliminando cortes em telas compactas e evitando espaços vazios excessivos em telas grandes.
- Mensagens de status precisas: Os estados de pausa, falha, reparo e pronto contam com textos exclusivos; os avisos ao limpar o índice ajustam-se conforme o estado da chave, impedindo discrepâncias entre o texto e a ação real.
🛠 Correções de confiabilidade no armazenamento básico
Neste mês, solucionamos dois problemas estruturais de confiabilidade:
- Reconhecimento seguro de bibliotecas legadas: Se uma biblioteca antiga não puder ser lida por uma versão recente, o aplicativo tenta automaticamente uma migração leve e segura na inicialização; obtendo sucesso, pastas locais podem ser adicionadas normalmente, e em caso de falha, a biblioteca original permanece intacta para proteger os dados.
- Indexação incremental sem perda de músicas em grandes bibliotecas: Anteriormente, o índice de grandes bibliotecas podia deixar de fora faixas adicionadas após sua criação inicial; agora, o índice é atualizado em tempo real no salvamento e valida sua integridade ao abrir o app. Havendo divergências, retorna automaticamente à listagem padrão e recria o índice, garantindo que novas músicas apareçam normalmente nas seções de álbuns e artistas.
📌 Questões conhecidas e próximos passos
Na versão atual, continuamos trabalhando nos seguintes pontos:
- Algumas animações, o posicionamento de janelas suspensas e a ordem de leitura em leitores de tela no iPhone dobrável ainda estão sendo aperfeiçoados; o suporte a «Reduzir movimento» será adicionado nas próximas atualizações.
- As indicações de novas tentativas de rede serão aprimoradas: atualmente, toques rápidos repetidos em «Verificar conexão» podem disparar verificações duplicadas, e a contagem regressiva para a próxima tentativa ainda não é exibida.
- Um número muito pequeno de acervos de versões bem anteriores pode requerer recuperação manual; a maior parte das bibliotecas antigas já migra com segurança e de forma automática ao iniciar.
Em seguida, concluiremos as adaptações para telas dobráveis e acessibilidade, adicionaremos os avisos e contagens regressivas de novas tentativas e ampliaremos o suporte da migração automática para mais versões legadas de bibliotecas.
