Skip to content

Commit 9bf466b

Browse files
committed
perf: updating the Android haptics utils
1 parent fd5e969 commit 9bf466b

1 file changed

Lines changed: 27 additions & 28 deletions

File tree

android/src/main/java/com/haptics/HapticsUtils.kt

Lines changed: 27 additions & 28 deletions
Original file line numberDiff line numberDiff line change
@@ -1,55 +1,54 @@
11
package com.haptics
22

33
import android.os.Build
4-
import com.haptics.HapticsVibrationType
54
import android.view.HapticFeedbackConstants
65

76
object HapticsUtils {
87
private data class HapticInfo(val constant: Int, val requiredApi: Int)
98

109
private val notificationTypes = mapOf(
1110
"success" to HapticsVibrationType(
12-
timings = longArrayOf(0, 25, 80, 35),
13-
amplitudes = intArrayOf(0, 120, 0, 180),
14-
oldFallback = longArrayOf(0, 25, 80, 35)
11+
timings = longArrayOf(0, 40, 100, 50),
12+
amplitudes = intArrayOf(0, 140, 0, 200),
13+
oldFallback = longArrayOf(0, 40, 100, 50)
1514
),
1615
"warning" to HapticsVibrationType(
17-
timings = longArrayOf(0, 20, 100, 50),
18-
amplitudes = intArrayOf(0, 200, 0, 255),
19-
oldFallback = longArrayOf(0, 20, 100, 50)
16+
timings = longArrayOf(0, 45, 120, 60),
17+
amplitudes = intArrayOf(0, 180, 0, 255),
18+
oldFallback = longArrayOf(0, 45, 120, 60)
2019
),
2120
"error" to HapticsVibrationType(
22-
timings = longArrayOf(0, 20, 50, 20, 50, 20),
23-
amplitudes = intArrayOf(0, 150, 0, 200, 0, 255),
24-
oldFallback = longArrayOf(0, 20, 50, 20, 50, 20)
21+
timings = longArrayOf(0, 40, 70, 40, 70, 45),
22+
amplitudes = intArrayOf(0, 160, 0, 200, 0, 255),
23+
oldFallback = longArrayOf(0, 40, 70, 40, 70, 45)
2524
)
2625
)
2726

2827
private val impactTypes = mapOf(
2928
"light" to HapticsVibrationType(
30-
timings = longArrayOf(0, 20),
31-
amplitudes = intArrayOf(0, 110),
32-
oldFallback = longArrayOf(0, 20)
29+
timings = longArrayOf(0, 35),
30+
amplitudes = intArrayOf(0, 130),
31+
oldFallback = longArrayOf(0, 35)
3332
),
3433
"soft" to HapticsVibrationType(
35-
timings = longArrayOf(0, 50),
36-
amplitudes = intArrayOf(0, 100),
37-
oldFallback = longArrayOf(0, 50)
34+
timings = longArrayOf(0, 20, 0, 45),
35+
amplitudes = intArrayOf(0, 80, 0, 140),
36+
oldFallback = longArrayOf(0, 65)
3837
),
3938
"medium" to HapticsVibrationType(
40-
timings = longArrayOf(0, 40),
39+
timings = longArrayOf(0, 45),
4140
amplitudes = intArrayOf(0, 180),
42-
oldFallback = longArrayOf(0, 40)
41+
oldFallback = longArrayOf(0, 45)
4342
),
4443
"rigid" to HapticsVibrationType(
45-
timings = longArrayOf(0, 30),
46-
amplitudes = intArrayOf(0, 220),
47-
oldFallback = longArrayOf(0, 30)
44+
timings = longArrayOf(0, 35),
45+
amplitudes = intArrayOf(0, 240),
46+
oldFallback = longArrayOf(0, 35)
4847
),
4948
"heavy" to HapticsVibrationType(
50-
timings = longArrayOf(0, 60),
51-
amplitudes = intArrayOf(0, 255),
52-
oldFallback = longArrayOf(0, 60)
49+
timings = longArrayOf(0, 50, 0, 35),
50+
amplitudes = intArrayOf(0, 255, 0, 180),
51+
oldFallback = longArrayOf(0, 85)
5352
)
5453
)
5554

@@ -85,12 +84,12 @@ object HapticsUtils {
8584

8685
fun getSelectionType(): HapticsVibrationType =
8786
HapticsVibrationType(
88-
timings = longArrayOf(0, 10),
89-
amplitudes = intArrayOf(0, 90),
90-
oldFallback = longArrayOf(0, 10)
87+
timings = longArrayOf(0, 35),
88+
amplitudes = intArrayOf(0, 110),
89+
oldFallback = longArrayOf(0, 35)
9190
)
9291

93-
fun getAndroidHapticsType(type: String): Int {
92+
fun getAndroidHapticsType(type: String): Int {
9493
val hapticInfo = ALL_HAPTIC_TYPES[type]
9594
?: throw IllegalArgumentException(
9695
"'type' must be one of ${ALL_HAPTIC_TYPES.keys.joinToString()}. Obtained '$type'."

0 commit comments

Comments
 (0)