Controllo appcast di Sparkle
Incolla l'appcast che la tua app legge da SUFeedURL. Viene letto qui, in questa pagina, e non viene recuperato né inviato nulla.
Prova un esempio:
Che cosa fa
Sparkle è il framework di aggiornamento che usa la maggior parte delle app Mac vendute fuori dal Mac App Store. La tua app legge un piccolo file RSS, l'appcast, e ogni <item> al suo interno è una versione. Questo strumento legge l'appcast che incolli e controlla ogni versione in base alla documentazione di Sparkle sulla pubblicazione: che abbia una versione che Sparkle possa confrontare, un download su https con dimensione e firma EdDSA, una versione minima di macOS e una data. Individua anche gli errori che rompono l'intero feed, come un namespace di Sparkle mancante o un & isolato in un indirizzo di download.
Come appare una buona versione
<item>
<title>Version 2.1</title>
<pubDate>Sat, 07 Nov 2026 09:30:00 +0000</pubDate>
<sparkle:version>210</sparkle:version>
<sparkle:shortVersionString>2.1</sparkle:shortVersionString>
<sparkle:minimumSystemVersion>14.0.0</sparkle:minimumSystemVersion>
<enclosure url="https://yourapp.com/YourApp-2.1.zip" length="8412337"
type="application/octet-stream" sparkle:edSignature="..."/>
</item>Il tag <rss> in alto ha bisogno di xmlns:sparkle="http://www.andymatuschak.org/xml-namespaces/sparkle". Lo strumento generate_appcast di Sparkle scrive gran parte di questo per te, compresa la firma e la length.
Cosa significa ogni risultato
| Voto | Che cosa significa |
|---|---|
| Correggi | Sparkle non riesce a leggere il feed, non riesce a confrontare la versione o non la installerà. |
| Aspetto | Funziona, ma la versione potrebbe arrivare a Mac che non possono eseguirla, oppure manca qualcosa che chiede la documentazione di Sparkle. |
| OK | Impostato come descrive la documentazione di Sparkle. |
| Nota | Un'impostazione da conoscere, come un canale o un aggiornamento critico. |
Fonti: Sparkle, pubblicare un aggiornamento, documentazione di Sparkle e Sparkle, migrazione a EdDSA, tutte lette il 8 novembre 2026.
Come funziona
Sono poche regole in testo semplice che girano in questa pagina. Non scarica il tuo aggiornamento, quindi non può verificare che la firma corrisponda alla tua chiave né che l'attributo length corrisponda al file: Sparkle fa entrambe le cose quando installa. Non recupera nemmeno il tuo feed, quindi incolla il testo invece dell'indirizzo. sparkle:hardwareRequirements richiede Sparkle 2.9 o successivo nella copia della tua app che le persone hanno già. Le copie più vecchie lo ignorano. Niente di ciò che incolli viene salvato o inviato.
Domande
Che cos'è un appcast di Sparkle?
Un file RSS sul tuo server che elenca le versioni della tua app Mac. Sparkle, dentro la tua app, lo legge dalla SUFeedURL nel tuo Info.plist e offre ogni versione più recente di quella installata.
Ogni aggiornamento di Sparkle ha bisogno di una firma EdDSA?
La documentazione di Sparkle dice che devi firmare i tuoi aggiornamenti, e generate_appcast li firma per te. Un'app con SUPublicEDKey nel suo Info.plist controlla la firma prima di installare qualsiasi cosa.
Come evito che un aggiornamento arrivi ai Mac che non possono eseguirlo?
Aggiungi sparkle:minimumSystemVersion alla versione, con tre parti come 14.0.0. Da Sparkle 2.9 puoi anche aggiungere sparkle:hardwareRequirements con arm64 per una build che gira solo su Apple silicon.
Quale numero di versione confronta Sparkle?
sparkle:version, confrontata con il CFBundleVersion dell'app che ha l'utente. sparkle:shortVersionString è solo ciò che vedono le persone.
Quello che incollo viene inviato da qualche parte?
No. Il testo viene letto in questa pagina e non viene recuperato, inviato né salvato nulla.