Skip to content

AgentVoice 1.0.5

Latest

Choose a tag to compare

@muratbaskicioglu muratbaskicioglu released this 29 Jul 17:43

AgentVoice 1.0.5 — çökme düzeltmesi (ADP-720)

Bu sürüm uygulamanın kendiliğinden kapanmasını durduruyor. 1.0.3 ve 1.0.4'te
AgentVoice açıldıktan kısa süre sonra — çoğu zaman ilk dikte denemenizde —
hiçbir hata göstermeden kapanıyordu. "Kapatınca çöküyor" gibi görünen şey aslında
"açılırken çöküyor, siz de tekrar açıyorsunuz" idi; tek bir günde beş kez yaşandı.

Sebep: klavye dinleyicisi, macOS'un yalnız ana iş parçacığından çağrılmasına izin
verdiği bir sistem fonksiyonunu (girdi kaynağı / klavye düzeni okuma) arka plandan
çağırıyordu. macOS bu ihlalde hata vermez — süreci doğrudan öldürür. Bu yüzden ne
uygulama içinde bir uyarı çıkıyordu ne de yakalanabilecek bir hata vardı.

Artık bu çağrılar tek bir ana-thread kapısından geçiyor: arka plan iş parçacıkları
o sistem fonksiyonlarına hiç dokunmuyor. Kapıyı atlayan bir yol kalırsa uygulama
ölmüyor, log'a yazıp zararsız bir değerle devam ediyor.

Ayrıca bu sürümde

  • Uygulama içi duyurular (ADP-716). Yeni sürüm ve önemli notlar artık
    uygulamanın içinde görünüyor: menü çubuğu simgesinde rozet, tıklayınca
    okunabilir bir kart. Duyuruyu okuduğunuzda rozet sönüyor.
  • Kapanış artık gerçekten temizlik yapıyor. Ölçüldü ki eski kapanış yolu
    temizlik kodunu hiç çalıştırmıyordu (uygulama kapanış sinyalini yaymadan
    ölüyordu). Artık dikte iş parçacıkları düzgün durduruluyor.
  • Klavye düzeni okunamazsa metin sessizce kaybolmuyor: panoya alınıyor ve
    size anlaşılır bir hata gösteriliyor.

Güncelledikten sonra

Ek bir adım yok — izinleriniz korunur. (İmza değişmediği için macOS mikrofon
iznini yeniden sormaz.)

Yayın kapısı — bu sürümden itibaren

1.0.3 felaketi (imzalı, notarize edilmiş, doğrulanmış ve mikrofonu hiç çalışmayan
paket) ve 1.0.4 (çöken paket) aynı kör noktadan doğdu: yayın hattındaki kapıların
hepsi "paket bozulmamış mı" diye soruyordu, "paket işini yapabiliyor mu" diye
soran yoktu. Artık paket yayınlanmadan önce gerçekten çalıştırılıyor:
açılıyor, dikte yolu koşuyor, temiz kapanıyor. Bu kapıdan geçmeyen bir paket
yayınlanamıyor.