Dev

Distribuindo um app macOS por conta própria (3): Hospedando o feed de atualizações e configurações de build

A última peça — onde colocar as atualizações Na Parte 1 preparamos o certificado Developer ID e a notarização, e na Parte 2 preparamos a chave de assinatura do Sparkle. Isso significa que agora temos uma forma de assinar o app, notarizá-lo e verificar a autenticidade das atualizações. Mas o local apontado pelo SUFeedURL (https://updates.example.com/appcast.xml), que escrevemos no Info.plist do app na Parte 2, ainda não tem nada. Nesta parte final, vamos hospedar o feed de atualizações que vai naquele local e finalizar as configurações de build, completando toda a configuração inicial. ...

16 de maio de 2026 · 8 minutos · 1550 palavras · Juhyun Lee
English 한국어 日本語 简体中文 Bahasa Indonesia Español Français Tiếng Việt 繁體中文
Dev

Distribuindo um app macOS por conta própria (2): Criando a chave de assinatura do Sparkle para atualizações automáticas

Atualizações automáticas e por que você precisa de mais uma camada de assinatura Na Parte 1, concluímos a configuração do certificado Developer ID e da notarização. Com isso, você está pronto para entregar o app aos usuários pela primeira vez. Mas um app não termina após um único lançamento — você precisa continuar enviando novas versões que corrigem bugs e adicionam funcionalidades. Para um app da Mac App Store, a App Store trata as atualizações para você. Um app distribuído diretamente não tem esse benefício, então você precisa incluir um recurso de atualização automática no próprio app. No macOS, o padrão de fato para esse papel é o framework de código aberto Sparkle. Com o Sparkle configurado, o app verifica periodicamente um “feed de atualizações (appcast)” e, se existir uma nova versão, notifica o usuário, faz o download e a instala. ...

15 de maio de 2026 · 7 minutos · 1420 palavras · Juhyun Lee
English 한국어 日本語 简体中文 Bahasa Indonesia Español Français Tiếng Việt 繁體中文
Dev

Distribuindo um app macOS por conta própria (1): Certificado Developer ID e preparação para notarização

O que significa distribuir diretamente com o Developer ID Há basicamente dois caminhos para entregar um app macOS aos usuários. Um é pela Mac App Store (MAS), e o outro é a distribuição direta (direct distribution) — permitir que os usuários baixem um arquivo .dmg (ou .app) criado por você mesmo a partir de um site, do GitHub ou similar. A distribuição direta tem vantagens claras. Você não precisa esperar pela revisão da App Store, não há comissões de pagamento e pode publicar atualizações quando e como quiser. Em troca, as tarefas que a App Store costumava fazer por você — assinatura de código, notarização (notarization) e atualizações automáticas — passam a ser responsabilidade sua. ...

14 de maio de 2026 · 9 minutos · 1875 palavras · Juhyun Lee
English 한국어 日本語 简体中文 Bahasa Indonesia Español Français Tiếng Việt 繁體中文
Dev

Converter texto em nome de arquivo usando o Automator no macOS

Visão geral O procedimento descrito neste relatório orientará você na criação de uma Ação Rápida usando o Automator no macOS. Essa Ação Rápida pode ser usada para converter texto em um formato mais adequado para nomes de arquivos. O processo de conversão remove caracteres especiais, transforma o texto em letras minúsculas e substitui espaços por hifens. Procedimento Abra o Automator Pressione Cmd + Espaço para abrir o Spotlight, digite “Automator” e pressione Enter. Crie um novo serviço No aplicativo Automator, selecione “Quick Action” (anteriormente chamado de “Service”) e clique em “Choose” (Escolher). Configure a Ação Rápida Na parte superior da nova janela, altere o menu suspenso “Workflow receives current” para “text” (texto). Certifique-se de que o menu suspenso “in” esteja definido como “any application” (qualquer aplicativo). Adicione uma ação “Run Shell Script” Na barra de pesquisa à esquerda, digite “Run Shell Script” e arraste a ação para o painel da direita. Configure a ação “Run Shell Script” Altere “Pass input” para “as arguments” (como argumentos). Cole o seguinte script na caixa de texto: for text_input in "$@" do echo "$text_input" | sed 's/[^a-zA-Z0-9 ]//g' | tr '[:upper:]' '[:lower:]' | sed 's/ /-/g' done Adicione uma ação “Copy to Clipboard” Na barra de pesquisa à esquerda, digite “Copy to Clipboard” e arraste a ação para o painel da direita, abaixo da ação “Run Shell Script”. Salve a Ação Rápida Pressione Cmd + S e dê um nome à sua Ação Rápida, por exemplo, “Converter Texto para nome de arquivo” Agora, seu script deve estar pronto para ser usado a partir do menu de contexto do botão direito do mouse em qualquer editor de texto que suporte os Serviços do macOS. ...

6 de abril de 2023 · 2 minutos · 415 palavras · Juhyun Lee
English 한국어 日本語 简体中文 Bahasa Indonesia Español Français Tiếng Việt 繁體中文
Dev

Pytrends 11: Descobrindo Pesquisas em Tempo Real para Insights Atualizados Minuto a Minuto

Visão geral A função realtime_trending_searches() da biblioteca pytrends permite que você recupere pesquisas em tempo real no Google. Ao analisar esses dados, você pode obter insights sobre as últimas tendências e tópicos que estão capturando a atenção do seu público, ajudando você a criar conteúdo atual, relevante e envolvente. Neste tutorial, abordaremos: Importar as bibliotecas necessárias Configurando a solicitação pytrends Recuperando dados de pesquisas em tempo real Analisando os resultados Recuperar Dados de Pesquisas em Tempo Real Primeiro, precisamos importar as bibliotecas necessárias e configurar nossa solicitação pytrends. ...

5 de abril de 2023 · 2 minutos · 310 palavras · Juhyun Lee
English 한국어 日本語 简体中文 Bahasa Indonesia Español Français Tiếng Việt 繁體中文