Warning: file_get_contents(/data/phpspider/zhask/data//catemap/4/webpack/2.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Design patterns 基本振动模式_Design Patterns_Vibration_Basic4android - Fatal编程技术网

Design patterns 基本振动模式

Design patterns 基本振动模式,design-patterns,vibration,basic4android,Design Patterns,Vibration,Basic4android,我正在尝试创建一个具有不同振动模式的应用程序 我已经看到PhoneVibrange类只有一个振动(TimeMs as Long)函数。 我还看到了另一个支持模式的java函数 (见此处:) 可以在Basic4Android上使用它吗?我如何解决这个问题? 问候, Nicola您可以使用此代码(需要电话库和反射库): 谢谢你,埃雷尔。我试试你的解决办法。您是否计划在下一版本的Basic4Android上添加完全振动函数?上述方法与Android API中提供的完全振动方法完全相同。是的,我指的是B

我正在尝试创建一个具有不同振动模式的应用程序

我已经看到PhoneVibrange类只有一个振动(TimeMs as Long)函数。 我还看到了另一个支持模式的java函数 (见此处:)

可以在Basic4Android上使用它吗?我如何解决这个问题? 问候,

Nicola

您可以使用此代码(需要电话库和反射库):


谢谢你,埃雷尔。我试试你的解决办法。您是否计划在下一版本的Basic4Android上添加完全振动函数?上述方法与Android API中提供的完全振动方法完全相同。是的,我指的是B4A函数,而不是使用反射。
Sub Process_Globals
    Dim pv As PhoneVibrate 'Required to add the Vibrate permission
End Sub

Sub Globals

End Sub
Sub Activity_Create(FirstTime As Boolean)
    Vibrate(500, 300)
    ToastMessageShow("Click anywhere to stop vibrate.", True)
End Sub

Sub Activity_Pause (UserClosed As Boolean)

End Sub
Sub Activity_Resume

End Sub

Sub Activity_Click
    CancelVibrate
End Sub

Sub Vibrate(On As Long, Off As Long)
    Dim r As Reflector
    r.Target = r.GetContext
    r.Target = r.RunMethod2("getSystemService", "vibrator", "java.lang.String")
    Dim pattern(2) As Long
    pattern(0) = On
    pattern(1) = Off
    r.RunMethod4("vibrate", Array As Object(pattern, 0), Array As String("[J", "java.lang.int"))
End Sub

Sub CancelVibrate
    Dim r As Reflector
    r.Target = r.GetContext
    r.Target = r.RunMethod2("getSystemService", "vibrator", "java.lang.String")
    r.RunMethod("cancel")
End Sub