Logo tr.androidermagazine.com
Logo tr.androidermagazine.com

Replay: Bluetooth üzerinden çalma kontrollerinin artan mücadelesi

Anonim

İşyerinde, evde, yatakta, duşta ve aralarında beni aklı başında ve mutlu tutmak için kullandığım şey bu. Müzik beni daha iyi hale getiriyor ve müzik Android deneyimimin çok büyük bir parçası olduğu için, son birkaç yıl boyunca ve özellikle de son birkaç ay boyunca acıdan haberdar olduğumda yavaş bir düşüş yaşandı.

Bazen Bluetooth kulaklıklarımı açarım, çalmaya başladım ve hiçbir şey olmuyor. Ve hiçbir şey eskisinden daha fazla olmaz.

İlk Android günlerimde, ceplerimde Soarin (evet, Samsung Captivate Glide adını verdim) ve boynumun etrafındaki ilk Kinivo Bluetooth kulaklık çiftim, Google Play Müzik'i açmak zorunda değildim, sadece vurmam gerekiyordu. kulaklıklarımda çal Aslında bir Samsung Galaxy SII cihazını çekmeceden çıkardım, aylarca ilk kez açtım, Bluetooth kulaklıklarını eşleştirdim ve oynat düğmesine bastım. Ve müzik çaldı.

Ahırdaki mevcut cihazlarda fazla değil.

HTC 10, bazen Bluetooth kontrollerine uymamakta, müzik uygulaması için sürekli bildirimde bulunmakta veya yapılmamaktadır. Moto 360'ımda ya da telefonun kendisinde oyun oynamayı tercih ederdim. HTC A9 da titiz. Nexus 5X bazen sürekli bildirimde bulunarak müziği yedeklemeye başlamaz, ancak bazen bir tane olmadan da yapar. Samsung S6 edge'I çalacak, ancak bazen en son aktif olan müzik uygulamasını oynamak yerine, önceden yüklenmiş olan Müzik uygulamasına geri dönecektir.

Burada tekrarlayan bir kelime var: bazen. Bunun nedeni, çok fazla değişken içeren bir problemdir: Hangi Android cihazını kullanıyorsunuz, hangi Bluetooth cihazını kullanıyorsunuz, hangi Android cihazını ve Bluetooth sürümünü kullanıyorsunuz, hangi müzik uygulamasını kullanmaya çalışıyorsunuz? Hangi çevrede olduğunuzu, vb. Bu, her basışınızda çalışmaz gibi görünen basit bir düğme sorununa katkıda bulunmak için çok şey var.

Peki aslında burada neler oluyor? Peki, cevap biraz alır - tamam, çok - teknik.

Düğmeye bastığınızda, Android tarafından yorumlanır ve sistemde KeyEvents aracılığıyla yayınlanır. Kulaklığınızdaki bir sonraki düğme, bir KeyEvent aracılığıyla yorumlanır ve KEYCODE_MEDIA_NEXT olarak sunulur. Farklı düğmeler için ve hatta aynı düğme için elde edilebilecek çok çeşitli değerler vardır. Çoğu kulaklıktaki çalma düğmesi de duraklatma düğmesidir, bu nedenle anahtar, KEYCODE_MEDIA_PAUSE, KEYCODE_MEDIA_PLAY veya cihaz ve mevcut durumuna bağlı olarak daha muhtemel KEYCODE_MEDIA_PLAY_PAUSE düğmesini döndürebilir. Bu arada, duraklattıysanız ve müzik dinlerken izlediğiniz / dinlerken duraklattığınız müzik başka bir yerde başlarsa, bu iki uygulama tarafından alındığı ve oynadığı için suçlanacak KeyEvent.

KeyEvents yorumlandıktan sonra, BroadcastReceiver hedefi aracılığıyla medya düğmelerini dinleyen bir müzik uygulaması tarafından duyulmaları gerekir. Sonuçta, bir uygulama göremiyorsa bir KeyEvent üzerinde hareket edemez. Bir uygulamadaki bir alıcının düğmeye basmasını engelliyorsa, yukarıda açıklanan aralıklı sorunu da dahil olmak üzere oynatma kontrollerini çeşitli şekillerde bozabilir. Bir uygulama Ses Odağını kaybettiğinde (Android'in hangi uygulamaların belirli bir zamanda ses çalacağını belirleme yöntemi olduğunu) yayınladığında BroadcastReceiver'ı çok hızlı bir şekilde kaldırırsa, o zaman müziğinizi duraklattığınızda, dinlemeyi durdurabilir ve düğmeye basıldığını duymaz. tekrar oynamaya başlamak için. Bu nedenle, medya uygulamalarının hem Ses Odağı hem de BroadcastReceiver'larını doğru bir şekilde kullanmaları önemlidir, böylece bir cihaz eskisini kaybettiğinde bile, ikincisini kaybetmez.

Bunların çoğu, müzik uygulamanızın ne kadar iyi programlandığına ve kulaklığınızdaki bir düğmeye bastığınızda hangi medya düğmelerinin cihazınız tarafından yayınlandığına bağlı. Bu ayrıca, bir cihaz satın aldığınızda oynatma kontrolleri tutarlı olsa bile, uygulama güncellemeleri veya dinlemeyi ne kadar çabuk durduracaklarını değiştiren sistem güncellemeleri nedeniyle kırılabileceği anlamına gelir.

Google Play Müzik gibi uygulamalar söz konusu olduğunda, güncellemeleri bozan şeyler gittikçe sıklaşıyor gibi görünüyor. Araların çoğu hızlı bir şekilde sabitlenirken, diğerlerinin düzeltilmesi aylar alabilir. Müziğinizin Bluetooth üzerinden düzgün şekilde başlamaması gibi kesintili sorunları günlüğe kaydetmek ve doğru bir şekilde belirlemek zorlaşabilir ve olası bir düzeltmeyi daha da yavaşlatır.

Müzik uygulamalarının ses odağı yoksa ve ön plan hizmetleri olarak çalışmıyorsa (medya oynatıcı için sürekli bildirim orada değilse), Android sisteminin (daha özel olarak Doze) veya "kaynak" denilen bir olasılık vardır. kaydetme "uygulamalar diğer etkinlikler için belleği boşaltmak için uygulamayı öldürebilir. Bu olduğunda, oyuna girmek hiçbir şey yapamayabilir, çünkü açık ve komutları dinleyen herhangi bir alıcı yoktur.

Şimdi, kayıttan yürütme denetimlerinizi kırabilecek birçok şey olduğu gibi, düzeltmeyi denemek için de seçenekler var.

İlk çözüm biraz aşırı olsa da, kullanıcıların yazılımda herhangi bir değişiklik yapmadan bugünkü telefonlarına uygulayabildiği çok az kişiden biri. Tasker ve AutoInput gibi uygulamaları kullanarak, tuşa basmayı tespit edebilir, orijinal KeyEvent eylemini bastırabilir, sonra doğrudan tek bir uygulamaya yönelik daha uzmanlaşmış (ve daha tutarlı) bir komut uygulayabiliriz. Örneğin, oynatma düğmesinin düzinelerce medya servisi tarafından alınabilen veya göz ardı edilebilecek genel bir yürütme medyası komutu yerine, Google Play Müzik’e özgü bir oynatma / duraklatma geçiş komutu olarak yeniden eşleştirebiliriz; onun yerine başla.

Bu programlamak için can sıkıcı olabilir ve orijinal eylemi bastırarak ve değiştirerek, YouTube veya Netflix gibi diğer uygulamalarda kullanmak isteyebileceğimiz yerel duraklatma düğmesini kırabiliriz. Kısacası, teknik olmayan kullanıcılar veya çeşitli medya uygulamaları kullanan kullanıcılar için pek bir çözüm değil.

Telefonların çoğu, Ayarlar'da açıp kapatabileceğiniz, kamera için uyanmak için iki kez basmak veya Ana sayfa / güç düğmesine iki kez basmak gibi, ayarlarınızı açıp kapatabileceğiniz çok sayıda jest ve düğme eylemi içerir. Bu listeye Bluetooth kontrolleri eklemek, onu uzatabilir ve karmaşıklaştırabilirken, eğer Android sistemi ne alırsa dinlemesin (ya da dinlemiyorsanız) genel bir sinyal yayınlamak yerine KeyEvent'i belirli bir uygulamaya yönlendirmek ve yönlendirmek için tutarlılık sağlayabiliriz. Bunu daha önce cihazlarda yaptığını gördük, örneğin, otomobilinizin Bluetooth'una bağlandığında belirlenmiş bir müzik uygulamasını açarken Moto Assist'i açmak.

Android'in medya düğmelerini kullanma biçimini değiştirme - ve Bluetooth denetleyicileri ve klavyeler kendi sorunlarıyla karşılaştığı için genel olarak düğme girişleriyle ilgileniyor - çözdükleri kadar yeni sorunlar yaratabiliyor, ancak işlerin yapabileceği yerlerin sayısını düşünebilir mevcut sistemde yanlış, yeni bir omlet yapmak için yumurtaları kırmaya değer olabilir.

Günün sonunda, günlük kullanıcılar kilit komutlara, alıcılara ve hangi uygulamanın şu anda ses odağına sahip olduğunu bilmek istemezler. Odağımızın müziğin kendisinde ve bizi nereye götürdüğünü istiyoruz. Ve beni ilk denemede gürültülü, kalabalık yerlerde aklı başında tutan müziği açamıyorsam, mutlu bir kız değilim. Ve bahse girerim ki ben tek değilim.

Bağlantılarımızı kullanarak satın alımlar için komisyon kazanabiliriz. Daha fazla bilgi edin.