React Academy · Ders

Masaüstü Platformları için Paketleme ve Dağıtım

Kod imzalama ve otomatik güncellemeyle electron-builder kullanarak macOS, Windows ve Linux için yükleyiciler oluşturun.

4. ders / 413 adım

Masaüstü Platformları için Paketleme ve Dağıtım, CoddyKit'te ücretsiz bir React Academy dersidir. Bu, 4 dersinin 4. dersidir. Aşağıdan dersin tamamını ücretsiz okuyabilir, sonra tarayıcıda yerleşik kod editörü ve 7/24 yapay zeka koçu ile uygulamalı olarak pratik yapabilirsin. Bu, React Academy öğrenme yolunun bir parçasıdır ve ilerlemeniz web ve CoddyKit uygulaması arasında senkronize olur. React Academy kursu toplamda 4 dersten oluşur.

electron-builder Yapılandırması

electron-builder, Electron uygulamalarını dağıtılabilir yükleyiciler halinde paketlemek için kullanılan standart araçtır. Yapılandırması, package.json dosyasında "build" anahtarı altında bulunur ve uygulama üst verilerini (appId, productName), simge yollarını ve platforma özel hedef biçimleri belirtir.

Platformlara Göre Derleme Hedefleri

electron-builder; macOS'u (dmg ve zip), Windows'u (NSIS yükleyicisi) ve Linux'u (AppImage ve deb) destekler. Tek bir derleme komutuyla birden çok platformu hedefleyebilir veya en iyi uyumluluk için CI'ı her platformda kendi yerel çalıştırıcısında derleme yapacak şekilde yapılandırabilirsiniz.

macOS için Kod İmzalama

Gatekeeper'ın kullanıcıların uygulamayı güvenlik uyarısı olmadan açmasına izin vermesi için macOS, bir Apple Developer sertifikasıyla kod imzalanmasını gerektirir. electron-builder, derleme işlemi sırasında sertifikanızı macOS Keychain'den okur ve tüm ikili dosyaları otomatik olarak imzalar.

macOS için Notarizasyon

Kod imzalamanın yanı sıra modern macOS, uygulamanın kötü amaçlı yazılım taraması yapan ve bir bilet veren Apple notarizasyon hizmetine gönderilmesini de gerektirir. electron-builder, electron-notarize aracılığıyla notarizasyonu otomatikleştirebilir; macOS 10.15 ve sonraki sürümlerdeki kullanıcılar bu işlem olmadan uygulamayı açamaz.

Windows için Kod İmzalama

SmartScreen'in yükleyicinize güvenmesi için Windows, güvenilir bir Sertifika Yetkilisinden (CA) alınmış bir Authenticode sertifikası gerektirir. İmzalama yapılmazsa kullanıcılar "Windows protected your PC" uyarısını görür. Genişletilmiş Doğrulama (EV) sertifikaları uyarıyı hemen kaldırırken standart OV sertifikaları zaman içinde güven oluşturur.

Derleme Çıktısının Yapısı

Başarılı bir derlemeden sonra electron-builder, platforma özel yükleyicileri dist/ dizinine yazar. macOS için DMG veya zip dosyasını, Windows için NSIS .exe dosyasını ve Linux için AppImage veya .deb dosyasını, ayrıca bir latest.yml (veya latest-mac.yml) otomatik güncelleme bildirim dosyasını burada bulabilirsiniz.

Uygulama Simgeleri

Electron uygulamaları platforma özel biçimlerde simgelere ihtiyaç duyar: Linux için 512x512 PNG, macOS için bir ICNS dosyası (çok çözünürlüklü) ve Windows için bir ICO dosyası (çok çözünürlüklü). electron-builder, --icon seçeneğini kullanarak tek bir 1024x1024 PNG dosyasından tüm biçimleri oluşturabilir.

electron-updater ile Otomatik Güncelleme

electron-updater paketi, otomatik güncellemeler sağlamak için electron-builder ile bütünleşir. Derlemelerinizi GitHub Releases'a veya S3'e yayımlayın; electron-updater başlangıçta güncellemeleri denetleyebilir, artımlı güncellemeyi arka planda indirebilir ve kullanıcıdan uygulamayı yeniden başlatmasını isteyebilir.

Başlangıçta Güncellemeleri Denetleme

Uygulama hazır olduktan sonra main.js içinde autoUpdater.checkForUpdatesAndNotify() çağrısını yapın. electron-updater, yayımlama hedefinizden latest.yml bildirim dosyasını alır, sürümleri karşılaştırır ve bir güncelleme varsa güncellemeyi indirip yüklenmeye hazır olduğunda yerel bir bildirim gösterir.

ASAR Arşivi

electron-builder, dağıtım için uygulamanızın JavaScript dosyalarını tek bir ASAR arşivinde (tar dosyasına benzer) birleştirir. Bu, dosya sistemi aramalarını azaltarak başlangıç performansını artırır ve kaynak kodunuzu doğrudan incelemeyi zorlaştırır (ancak imkânsız hâle getirmez).

Yerel Modülleri ASAR'dan Çıkarma

Yerel Node.js modülleri (.node dosyaları) bir ASAR arşivinin içinden yüklenemez; dosya sistemine çıkarılmaları gerekir. electron-builder içinde asarUnpack yapılandırmasını kullanarak yerel modül desenlerini listeleyin; bu işlem onları arşivin yanında bulunan app.asar.unpacked dizinine yerleştirir.

macOS Notarizasyon Gereksinimi

Kod imzalamanın ötesinde macOS dağıtımı için notarizasyon neden gereklidir?

Ders Özeti

Bir Electron uygulamasını dağıtmak; electron-builder hedeflerini yapılandırmayı, hem macOS (notarizasyonla) hem de Windows (Authenticode ile) için kodu imzalamayı ve isteğe bağlı olarak electron-updater ile otomatik güncellemeleri ayarlamayı içerir. ASAR arşivi uygulamanızı dağıtım için birleştirir; yerel modüller ayrıca arşivden çıkarılır. Sağlam bir CI/CD işlem hattı bu adımları her platform için otomatik olarak gerçekleştirir.

Başlamak ücretsiz

Yapay zeka eğitmeniyle React öğren — ücretsiz

Tarayıcında gerçek kod yaz ve çalıştır, 7/24 yapay zeka eğitmeninden anında yardım al; web'de ya da uygulamada kaldığın yerden devam et.

Kurslar
88
Dersler
324

Sıkça Sorulan Sorular

“Masaüstü Platformları için Paketleme ve Dağıtım” dersi ücretsiz mi?

Evet — “Masaüstü Platformları için Paketleme ve Dağıtım” dersin tüm metni burada web'de ücretsiz olarak okunabilir. Etkileşimli olarak pratik yapmak (yerleşik kod editörü ve 7/24 yapay zeka koçu) ve React Academy kursunun geri kalanını açmak için CoddyKit PRO'ya yükselt. React Academy kursu toplamda 4 dersten oluşur.

“Masaüstü Platformları için Paketleme ve Dağıtım” dersinde ne öğreneceğim?

Kod imzalama ve otomatik güncellemeyle electron-builder kullanarak macOS, Windows ve Linux için yükleyiciler oluşturun. React Academy ile uygulamalı kodu tarayıcıda doğrudan çalıştırarak pratik yaparsın ve 7/24 yapay zeka koçu dersi çalışırken sorularını yanıtlar.

React Academy öğrenmeye başlamak için deneyim gerekli mi?

Önceden deneyim gerekmez. CoddyKit'te React Academy, başlangıçtan ileri seviyeye kadar yapılandırıldığı için buradan başlayabilir veya başından başlayıp kendi hızında ilerleme yapabilirsin. Bu, 4 dersinin 4. dersidir.

“Masaüstü Platformları için Paketleme ve Dağıtım” dersi ne kadar sürer?

Çoğu CoddyKit dersi yaklaşık 5–10 dakika sürer. Her biri kısa ve etkileşimli olduğu için sabit ilerleme yaparsın ve web ile uygulama arasında tam olarak bıraktığın yerden devam edebilirsin.

Bu React Academy dersinde kod yazıp çalıştırabilir miyim?

Evet. Her React Academy dersi yerleşik bir kod editörü içerir, bu sayede tarayıcıda gerçek kod yazıp çalıştırabilir ve anlık yapay zeka geri bildirimi alırsın — yerel kurulum gerekli değildir.

Bu kursun tüm dersleri

  1. Electron Mimarisi: Ana ve Görüntüleyici Süreçleri
  2. React'i Electron ile Kurma
  3. Süreçler Arası IPC İletişimi
  4. Masaüstü Platformları için Paketleme ve Dağıtım
← React Academy Sayfasına Dön