Program aşağıdaki gibi çalışır: kullanıcının, telefon sisteminin başka bir sistem genelinde herhangi bir titreşim sağlamayacağı durumlarda gelen bir çağrı üzerine titreşebileceği bir telefon numarası listesi vardır. sessiz modda olduğu gibi). Bunun bir şekilde kurallara aykırı olduğunu biliyorum, bunun için uygulamanın kullanıcı ayarlarına saygı göstermesi gerekir, ancak uygulama bu ihtiyacı olan bazı kullanıcılar tarafından sınırlandırılmıştır. Ben iki yol denedi ama ikisi de tatmin edici şunlardır:Belirli gelen çağrılar için özelleştirilmiş titreşim nasıl sağlanır
telefon durumuna dinle doğrudan (
Vibrator.vibrate()
ile) kendi desenle titreşim hizmeti tetikler. Bu yöntem, telefonCALL_STATE_RINGING
durumdayken rastgele etkili olmayan gelen çağrılar ile etkilidir ve sanırım bunun, gelen çağrı üzerine titreşimi gerçekten işleyen sistem genelindeki uygulama ile çakışmasıdır.Hakim cep telefonu (
AudioManager.shouldVibrate()
ile) gelen bir arama üzerine titreşimli ve (AudioManager.setRingerMode()
veAudioManager.setVibrateSetting()
ile) titreşim ayarlarını değiştirmek için karar olup olmadığını. Titreşim ayarları uygulamam tarafından değiştirilirse, cep telefonuCALL_STATE_IDLE
durumuna döndükten sonra geri yüklenir. Bununla birlikte, bu yöntem, bazen herhangi bir neden belirtmeksizin, bazen çalışmıyor.
Umarım bu konuda bazı önerilerde bulunabilir. Bu iki yolla veya başka bir öneriyle ilgili yorumlar kabul edilir.
bu konuda herhangi bir ilerleme: Eğer titreşim ayarları ile çalışmalıdır ve mod aşağıdaki bağlantıda bakmak nasıl
tamamen anlamak için? – Rizon
@Rizon Ne yazık ki hayır, ve bu soru bana bir tomar rozetini kazandırıyor. – peter
Bu aynı değil ama birisi gelen aramalarda titreşimi devre dışı bırakmayı denedi ve imkansız olduğunu kanıtladı, ancak bulgular sizin için ilginç: http://stackoverflow.com/q/8065862/969325 – Warpzit