Dokunsal sabitler ve temel öğeler, vibratör donanım soyutlama katmanı tarafından tanımlanır ve Android çerçevesi tarafından herkese açık API'lerle eşlenir. Cihazınızın dokunsal geri bildirim uygulamak için minimum gereksinimleri karşılayıp karşılamadığını belirlemek üzere aşağıdaki kontrolleri yapın:
Şekil 2. Efektleri uygulama
3.Şekil Temel öğeleri uygulama
Sabit değerleri uygulama
VibrationEffect'teki dokunsal sabitler, geliştiriciler tarafından VibrationEffect.createPredefined() aracılığıyla kullanılabilir. Aşağıdaki dokunsal sabitlerin uygulanma durumunu kontrol edin.
Dokunma teknolojisi sabitleri | Konumlar ve özetler |
---|---|
EFFECT_TICK , EFFECT_CLICK ,
EFFECT_HEAVY_CLICK ,
EFFECT_DOUBLE_CLICK |
VibrationEffect
classVibrationEffect içindeki dokunsal sabitler, giriş etkinlikleriyle ilgili herhangi bir kavram içermez ve kullanıcı arayüzü öğeleri yoktur. Sabitler, EFFECT_CLICK ve EFFECT_HEAVY_CLICK gibi enerji seviyeleri kavramını içerir. Bunlar
createPredefined() tarafından çağrılır. |
Aşağıda açıklanan alternatif titreşimler, VibrationEffect
sabitlerini uygulamayan cihazlarda gerçekleştirilir. Bu yapılandırmaların, söz konusu cihazlarda en iyi performansı sağlayacak şekilde güncellenmesi önerilir.
EFFECT_CLICK
VibrationEffect.createWaveform
ile oluşturulan titreşim veframeworks/base/core/res/res/values/config.xml##config_virtualKeyVibePattern
'de yapılandırılan zamanlamalar.EFFECT_HEAVY_CLICK
VibrationEffect.createWaveform
ile oluşturulan veframeworks/base/core/res/res/values/config.xml##config_longPressVibePattern
'de yapılandırılan zamanlamalara sahip dalga biçimli titreşim.EFFECT_DOUBLE_CLICK
VibrationEffect.createWaveform
ile oluşturulan dalga biçimli titreşim ve zamanlamalar (0, 30, 100, 30).EFFECT_TICK
VibrationEffect.createWaveform
ile oluşturulan titreşim veframeworks/base/core/res/res/values/config.xml##config_clockTickVibePattern
'de yapılandırılan zamanlamalar.
Şekil 4. Geri bildirim sabitlerini uygulama
HapticFeedbackConstants içindeki dokunsal sabitler, geliştiriciler tarafından View.performHapticFeedback() aracılığıyla kullanılabilir. Aşağıdaki herkese açık geri bildirim sabitlerinin durumunu kontrol edin.
Dokunma teknolojisi sabitleri | Konumlar ve özetler |
---|---|
CLOCK_TICK , CONTEXT_CLICK , KEYBOARD_PRESS ,
KEYBOARD_RELEASE , KEYBOARD_TAP , LONG_PRESS ,
TEXT_HANDLE_MOVE , VIRTUAL_KEY ,
VIRTUAL_KEY_RELEASE , CONFIRM , REJECT ,
GESTURE_START , GESTURE_END |
HapticFeedbackConstants classHaptic constants in HapticFeedbackConstants assist input events
with certain UI elements, such as KEYBOARD_PRESS and
KEYBOARD_RELEASE , which are called by
performHapticFeedback() . |
Temel öğeleri uygulama
VibrationEffect.Composition
içindeki dokunsal öğeler, geliştiricilerin addPrimitive(int primitiveId, float scale, int delay)
aracılığıyla kullanabileceği ölçeklenebilir yoğunluğa sahiptir.
Temel öğeler iki kategoriye ayrılabilir:
Kısa temel öğeler: Genellikle 20 ms'den kısa süren temel öğelerdir. Bunlar
CLICK
,TICK
veLOW_TICK
'dir.Chirp temel öğeleri: Genliği ve sıklığı değişen, genellikle kısa temel öğelerden daha uzun süren temel öğeler. Bunlar
SLOW_RISE
,QUICK_RISE
,QUCK_FALL
,THUD
veSPIN
'dir.
Shorts temel öğeleri
Kısa titreşimler, titreşim motorunun çıkış ivmesi profiliyle tanımlanabilir. Kullanılan mutlak sıklık, aktüatörün rezonans sıklığına bağlı olarak her bir öğe için değişir. Donanım kurulumu ve çıkışı ölçmeye yönelik araçlar hakkında daha fazla bilgi için Test ekipmanını kurma başlıklı makaleyi inceleyin.
Kısa titreşimler için değerli bir kalite metriği, Şekil 5'te gösterilen zil çalma oranıdır (PRR). PRR, genliğin zirve genliğin% 10'una düştüğü süre penceresindeki sinyalle tanımlanan ana darbe ile genliğin zirve genliğin% 10'undan zirve genliğin% 1'inden daha azına düştüğü sinyalle tanımlanan çınlama darbesi arasındaki oran olarak tanımlanır. PRR formülü şöyledir:
PRR hakkında daha fazla bilgi için Dalga biçimini analiz etme başlıklı makaleyi, sonuçları analiz etme ve karşılaştırma hakkında daha fazla bilgi için ise Performans haritasını kullanarak sonuçları karşılaştırma başlıklı makaleyi inceleyin.
5.şekil Çalma oranı tanımı
Yumuşak dokular oluşturmak için kısa temel öğeleri kullanıcı girişi geri bildirimi olarak veya daha uzun kompozisyonlarda çalınan öğeler olarak uygulayın. Bu nedenle, genellikle sık sık tetiklenirler ve hızlı bir şekilde oynatılırlar. Tek bir kısa ilkelin algılanan yoğunluğu, daha büyük efekt yoğunluğunu artırabilir. Bu nedenle, tek bir tik veya düşük tik ilkelini daha büyük bir kompozisyonla (örneğin, 100 ardışık tik) kalibre edin.
Tıklama temel öğesi
Tıklama ilkel birimi, kısa sürede maksimum çıkışa ulaşmak için genellikle bir cihazın rezonans frekansına yakın çalışan güçlü ve net bir efekt oluşturur. Diğer ilkel öğelerden daha güçlü ve derin olup maksimum yoğunlukta çalışır.
Kısa bir motor yükselme ve düşme süresi elde etmek için varsa başlangıçta motor aşırı hızını, sonunda ise aktif frenlemeyi kullanın. Bazı motorlarda, sinüs dalgası yerine kare dalga kullanmak daha hızlı ivme elde etmenizi sağlayabilir. Şekil 6'da tıklama bileşeni için örnek bir çıkış hızlandırma profili gösterilmektedir:
6.şekil Tıklama öğesi için çıkış hızlandırma profili örneği
Parametre | Yönerge |
---|---|
Süre |
Hedef: 12 ms Sınır: < 30 ms |
En yüksek çıkış ivmesi |
Hedef: 2G Sınır: > 1 GB |
Sıklık | Yaklaşık olarak rezonans frekansında |
Tick primitive (light tick)
Tık sesi, genellikle daha yüksek bir frekans aralığında çalışan keskin ve kısa bir efekttir. Bu temel öğe, kısa kuyruklu ve daha yüksek sıklıkta orta yoğunluklu bir tıklama olarak da tanımlanabilir. Aynı kılavuz, motor aşırı yüklemesi veya başlangıç için kare dalga kullanarak kısa bir yükselme süresi elde etme ve ofsette aktif frenleme için de geçerlidir. Şekil 7'de, tik ilkel öğesi için örnek bir çıkış hızlanma profili gösterilmektedir:
Şekil 7. İşaret ilkel öğesi için çıkış hızlandırma profili örneği
Parametre | Yönerge |
---|---|
Süre |
Hedef: 5 ms Sınır: < 20 ms |
En yüksek çıkış ivmesi |
Hedef: Sınır: 0,5 G ile 1 G arasında |
Sıklık |
Hedef: 2 kat rezonans frekansı Sınır: < 500 Hz |
Düşük tik temel öğesi
Düşük tik ilkel öğesi, efektin daha dolgun olmasını sağlamak için daha düşük bir frekans aralığında çalışan, hafif tikin daha yumuşak ve zayıf bir versiyonudur. Bu öğe, dinamik geri bildirim için tekrar tekrar kullanılmak üzere tasarlanmış, daha düşük sıklıkta orta yoğunluklu bir tıklama olarak da tanımlanabilir. Aynı kılavuz, motor aşırı yüklemesi veya başlangıç için kare dalga kullanarak kısa yükselme süresi elde etme konusunda da geçerlidir. Şekil 8'de, düşük tik ilkelinin örnek çıkış hızlanma profili gösterilmektedir:
Şekil 8. Düşük tikli temel öğe için çıkış hızlandırma profili örneği
Parametre | Yönerge |
---|---|
Süre |
Hedef: 12 ms Sınır: < 30 ms |
En yüksek çıkış ivmesi |
Hedef: 1/4 Sınır: 0,2 G ile 0,5 G arasında |
Sıklık |
Hedef: 2/3 rezonans frekansı Sınır: < 100 Hz |
Chirp temel öğeleri
Chirp temel öğeleri, voltaj seviyesi ve titreşim frekansı için giriş sinyalleriyle tanımlanabilir. Motorun farklı frekans aralıklarında üretebileceği hızlanma, aktüatörün frekans tepki eğrisine bağlı olarak değişir. Frekans aralıkları ve voltaj seviyeleri, cihaz bazında ayarlanmalıdır.
Yavaş yükselme temel öğesi
Yavaş yükselme, yumuşak başlangıçlı ve genliği ile frekansı yavaş yavaş artan, titreşim yoğunluğu sürekli yükselen bir taramadır. Rezonans dışı çalışan daha düşük bir frekans aralığı kullanılarak hem genliğin hem de frekansın tutarlı bir şekilde taranmasıyla uygulanabilir. Şekil 9'da, giriş parametreleri ve bu uygulama için örnek bir çıkış hızlanma profili gösterilmektedir. (Kırmızı çizgi, soldaki genlik etiketleriyle eşleşir ve titreşim genliğinin zamanla nasıl değiştiğini gösterir. Mavi çizgi, sağdaki frekans etiketleriyle eşleşir ve titreşim frekansının zamanla nasıl değiştiğini gösterir.
Şekil 9. Giriş parametreleri ve yavaş yükselme öğesi için çıkış hızlanma profili örneği
Motorun frekans yanıtı sınırlıysa (rezonans frekansının yeterince uzağında değilse) alternatif bir uygulama, rezonans frekansının 1/2 katından 1 katına kadar olan bir sinüs süpürmesidir. Motor rezonansı, sinyal tepe noktasına ulaşılmasına katkıda bulunur.
Parametre | Yönerge |
---|---|
Süre |
Hedef: 500 ms Tolerans: 20 ms |
En yüksek çıkış ivmesi |
Hedef: 0,5 G Sınır: 0,5 G ile 1 G arasında |
Sıklık |
Hedef: Rezonans frekansının 1/2 ila 2/3'ü Alternatif: Rezonans frekansının 1/2'si |
Hızlı yükselme temel öğesi
Hızlı yükselme, yumuşak başlangıçlı ve titreşim yoğunluğunun tarama boyunca sürekli arttığı, daha hızlı bir genlik ve frekans taramasıdır. Çıkış hızlanması ve titreşim frekansı hedefleri, daha kısa sürede elde edilen yavaş yükselme hedefiyle aynı olmalıdır. 10. şekilde, titreşim giriş parametreleri ve yavaş yükselme temel öğesi için örnek bir çıkış ivme profili gösterilmektedir. (Kırmızı çizgi, soldaki genlik etiketleriyle eşleşir ve titreşim genliğinin zamanla nasıl değiştiğini gösterir. Mavi çizgi, sağdaki frekans etiketleriyle eşleşir ve titreşim frekansının zamanla nasıl değiştiğini gösterir.
10.şekil Giriş parametreleri ve hızlı yükselme öğesi için çıkış hızlanma profili örneği
Parametre | Yönerge |
---|---|
Süre |
Hedef: 150 ms Tolerans: 20 ms |
En yüksek çıkış ivmesi |
Hedef: Sınır: |
Sıklık |
Hedef: Alternatif: |
Hızlı düşme temel öğesi
Hızlı düşüş, yumuşak bir başlangıçla hızlı bir genlik ve frekans düşüşüdür. Motor, maksimum çıkış hızlanmasına ulaşmak için hızlanırken başlangıç noktası olarak daha yüksek bir frekans kullanabilirsiniz. Frekans, tarama boyunca tutarlı bir şekilde azalmalıdır. Yükselme süresi boyunca bile bu durum geçerlidir. Şekil 11'de, giriş parametreleri ve bu uygulama için örnek bir çıkış hızlanma profili gösterilmektedir. (Kırmızı çizgi, soldaki genlik etiketleriyle eşleşir ve titreşim genliğinin zamanla nasıl değiştiğini gösterir. Mavi çizgi, sağdaki frekans etiketleriyle eşleşir ve titreşim frekansının zamanla nasıl değiştiğini gösterir.
11.Şekil Giriş parametreleri ve hızlı düşme öğesi için çıkış hızlandırma profili örneği
Parametre | Yönerge |
---|---|
Süre |
Hedef: 100 ms Tolerans: 20 ms |
En yüksek çıkış ivmesi |
Hedef: 1 GB Sınır: 0,5 GB ile 2 GB arasında |
Sıklık |
Hedef: Rezonans frekansının 1 ila 2 katı |
Thud primitive
Gümleme, boş bir tahtaya vurmanın fiziksel hissini simüle eden, düşük ve vurmalı bir efektir. Bu temel öğe, efektin daha belirgin olması için düşük tick temel öğesine benzer şekilde düşük frekans aralığında çalışır. Güm sesini, daha düşük bir frekans aralığında (tercihen 100 Hz'den az) genlik ve frekans düşüşü olarak uygulayabilirsiniz. 12. şekilde, giriş parametreleri ve bu uygulama için örnek bir çıkış hızlanma profili gösterilmektedir. (Kırmızı çizgi, soldaki genlik etiketleriyle eşleşir ve titreşim genliğinin zamanla nasıl değiştiğini gösterir. Mavi çizgi, sağdaki frekans etiketleriyle eşleşir ve titreşim frekansının zamanla nasıl değiştiğini gösterir.
Şekil 12. Giriş parametreleri ve thud öğesi için çıkış hızlandırma profili örneği
Motorun frekans yanıtı sınırlıysa alternatif bir uygulama olarak rezonans frekansında tam yoğunluklu bir sürücü sinyaliyle başlayıp hâlâ algılanabilen en düşük frekansa düşmek mümkündür. Bu yaklaşım, titreşimin hissedilmesi için düşük frekansta sürücü sinyal yoğunluğunun artırılmasını gerektirebilir.
Parametre | Yönerge |
---|---|
Süre |
Hedef: 300 ms Tolerans: 20 ms |
En yüksek çıkış ivmesi |
Hedef: 0,25 G Sınır: 0,2 G ile 0,5 G arasında |
Sıklık |
Hedef: Rezonans frekansının 1/2 ila 1/3'ü Alternatif: Rezonans frekansının 1 katı ile 1/2 katı arasında |
Dönüş temel öğesi
Dönüş, ortada hafif bir vurguyla hızlı yukarı ve aşağı dönüşün dönme momentumunu simüle eder. Dönme, genlik ve frekansın bağımsız olarak, ters yönlerde süpürülmesi ve ardından ters hareketle uygulanabilir. Daha düşük bir frekans aralığı (tercihen 100 Hz'den az) kullanmanız önemlidir. 13. şekilde, giriş parametreleri ve bu uygulama için örnek bir çıkış hızlanma profili gösterilmektedir. (Kırmızı çizgi, soldaki genlik etiketleriyle eşleşir ve titreşim genliğinin zamanla nasıl değiştiğini gösterir. Mavi çizgi, sağdaki frekans etiketleriyle eşleşir ve titreşim frekansının zamanla nasıl değiştiğini gösterir.
Dönme ve dengesizlik hissi elde etmek için dönme öğesinin art arda iki kez veya kompozisyonlarda üç kez çağrılmasını öneririz.
Motorun frekans yanıtı sınırlıysa alternatif bir uygulama olarak rezonans frekansının 1/2 katından 1 katına hızlı bir sinüs taraması yapılıp geri dönülebilir. Motor rezonansı, sinyale otomatik olarak ortada bir vurgu verir.
Şekil 13. Giriş parametreleri ve spin öğesi için çıkış hızlandırma profili örneği
Parametre | Yönerge |
---|---|
Süre |
Hedef: 150 ms Tolerans: 20 ms |
En yüksek çıkış ivmesi |
Hedef: 0,5 G Sınır: 0,25 G ile 0,75 G arasında |
Sıklık |
Hedef: 2/3 ila 1/3, ardından rezonans frekansının 1/2'sine geri dönün. Alternatif: 2/3 ila 1 kat, ardından rezonans frekansının 1/2'sine geri dönme |