@@ -26,57 +26,57 @@ import androidx.annotation.RequiresPermission
26
26
27
27
@RequiresApi(api = Build .VERSION_CODES .S )
28
28
class CustomVibrationCompositions : Activity () {
29
- var vibrator: Vibrator = getApplicationContext().getSystemService(Vibrator ::class .java)
29
+ var vibrator: Vibrator = getApplicationContext().getSystemService(Vibrator ::class .java)
30
30
31
- @RequiresPermission(Manifest .permission.VIBRATE )
32
- // [START android_ui_haptics_composed_vibration_effect]
33
- fun createComposedVibrationEffect () {
34
- vibrator.vibrate(
35
- VibrationEffect .startComposition()
36
- .addPrimitive(VibrationEffect .Composition .PRIMITIVE_SLOW_RISE )
37
- .addPrimitive(VibrationEffect .Composition .PRIMITIVE_CLICK )
38
- .compose()
39
- )
40
- }
41
- // [END android_ui_haptics_composed_vibration_effect]
31
+ @RequiresPermission(Manifest .permission.VIBRATE )
32
+ // [START android_ui_haptics_composed_vibration_effect]
33
+ fun createComposedVibrationEffect () {
34
+ vibrator.vibrate(
35
+ VibrationEffect .startComposition()
36
+ .addPrimitive(VibrationEffect .Composition .PRIMITIVE_SLOW_RISE )
37
+ .addPrimitive(VibrationEffect .Composition .PRIMITIVE_CLICK )
38
+ .compose()
39
+ )
40
+ }
41
+ // [END android_ui_haptics_composed_vibration_effect]
42
+
43
+ @RequiresPermission(Manifest .permission.VIBRATE )
44
+ // [START android_ui_haptics_gap_between_primitives]
45
+ fun gapBetweenPrimitives () {
46
+ val delayMs: Int = 100
47
+ vibrator.vibrate(
48
+ VibrationEffect .startComposition()
49
+ .addPrimitive(VibrationEffect .Composition .PRIMITIVE_SPIN , 0.8f )
50
+ .addPrimitive(VibrationEffect .Composition .PRIMITIVE_SPIN , 0.6f )
51
+ .addPrimitive(
52
+ VibrationEffect .Composition .PRIMITIVE_THUD , 1.0f , delayMs
53
+ )
54
+ .compose()
55
+ )
56
+ }
57
+ // [END android_ui_haptics_gap_between_primitives]
58
+
59
+ @RequiresPermission(Manifest .permission.VIBRATE )
60
+ private fun checkPrimitivesSupport () {
61
+ // [START android_ui_haptics_check_single_primitive_support]
62
+ val primitive: Int = VibrationEffect .Composition .PRIMITIVE_LOW_TICK
42
63
43
- @RequiresPermission(Manifest .permission.VIBRATE )
44
- // [START android_ui_haptics_gap_between_primitives]
45
- fun gapBetweenPrimitives () {
46
- val delayMs: Int = 100
64
+ if (vibrator.areAllPrimitivesSupported(primitive)) {
47
65
vibrator.vibrate(
48
66
VibrationEffect .startComposition()
49
- .addPrimitive(VibrationEffect .Composition .PRIMITIVE_SPIN , 0.8f )
50
- .addPrimitive(VibrationEffect .Composition .PRIMITIVE_SPIN , 0.6f )
51
- .addPrimitive(
52
- VibrationEffect .Composition .PRIMITIVE_THUD , 1.0f , delayMs
53
- )
54
- .compose()
67
+ .addPrimitive(primitive).compose()
55
68
)
69
+ } else {
70
+ // Play a predefined effect or custom pattern as a fallback.
56
71
}
57
- // [END android_ui_haptics_gap_between_primitives ]
72
+ // [END android_ui_haptics_check_single_primitive_support ]
58
73
59
- @RequiresPermission(Manifest .permission.VIBRATE )
60
- private fun checkPrimitivesSupport () {
61
- // [START android_ui_haptics_check_single_primitive_support]
62
- val primitive: Int = VibrationEffect .Composition .PRIMITIVE_LOW_TICK
63
-
64
- if (vibrator.areAllPrimitivesSupported(primitive)) {
65
- vibrator.vibrate(
66
- VibrationEffect .startComposition()
67
- .addPrimitive(primitive).compose()
68
- )
69
- } else {
70
- // Play a predefined effect or custom pattern as a fallback.
71
- }
72
- // [END android_ui_haptics_check_single_primitive_support]
73
-
74
- // [START android_ui_haptics_check_multiple_primitives_support]
75
- val supported: BooleanArray = vibrator.arePrimitivesSupported(
76
- VibrationEffect .Composition .PRIMITIVE_LOW_TICK ,
77
- VibrationEffect .Composition .PRIMITIVE_TICK ,
78
- VibrationEffect .Composition .PRIMITIVE_CLICK
79
- )
80
- // [END android_ui_haptics_check_multiple_primitives_support]
81
- }
74
+ // [START android_ui_haptics_check_multiple_primitives_support]
75
+ val supported: BooleanArray = vibrator.arePrimitivesSupported(
76
+ VibrationEffect .Composition .PRIMITIVE_LOW_TICK ,
77
+ VibrationEffect .Composition .PRIMITIVE_TICK ,
78
+ VibrationEffect .Composition .PRIMITIVE_CLICK
79
+ )
80
+ // [END android_ui_haptics_check_multiple_primitives_support]
82
81
}
82
+ }
0 commit comments