Kotlinでバイブを実現したい

195 views
Skip to first unread message

リックス

unread,
Aug 3, 2020, 7:05:39 AM8/3/20
to android-g...@googlegroups.com
お世話になってます。

Kotlinで、バイブを実行させたいのですが
参考サイトを元にソースを作成すると
プログラムが落ちてしまします

どこがおかしいのでしょうか?


参考サイト

考えたソース

import android.os.Vibrator as Vibrator1

class MainActivity : AppCompatActivity(),View.OnClickListener,TextToSpeech.OnInitListener{

var vibrator = getSystemService(Context.VIBRATOR_SERVICE) as Vibrator1
val pattern = longArrayOf(3000, 1000, 2000, 5000, 3000, 1000) // OFF/ON/OFF/ON...


private val clickListener_EXE : View.OnClickListener = View.OnClickListener {

if (Build.VERSION.SDK_INT >= Build.VERSION_CODES.O) {
vibrator?.vibrate(VibrationEffect.createWaveform(pattern, -1))
} else {
vibrator?.vibrate(pattern, -1)
}
override fun onCreate(savedInstanceState: Bundle?) {
super.onCreate(savedInstanceState)
setContentView(R.layout.activity_main)
val button_EXE: Button = findViewById(R.id.exe_button)
} 

--
------------------------------------------------------------------------------------
〒630-8304
奈良県奈良市南肘塚町49-19
栢本 博文(かやもと ひろふみ)
090-5244-1408
--------------------------------------------------------------------------------------

Naoyuki Miyata

unread,
Aug 3, 2020, 7:18:58 AM8/3/20
to 日本Androidの会
落ちた時のLogcatを貼っていただければ原因がわかるかもしれません。

2020年8月3日(月) 20:05 リックス <lic...@gmail.com>:
--
このメールは Google グループのグループ「日本Androidの会」に登録しているユーザーに送られています。
このグループから退会し、グループからのメールの配信を停止するには android-group-j...@googlegroups.com にメールを送信してください。
このディスカッションをウェブ上で閲覧するには https://groups.google.com/d/msgid/android-group-japan/CABMY6JnQ1r2wpA3ds0_gt24fo%3DJzovQjD7c0MC6WEWeCcc2q_Q%40mail.gmail.com にアクセスしてください。

リックス

unread,
Aug 3, 2020, 7:24:23 AM8/3/20
to android-g...@googlegroups.com
分けて入れた部分を1つにすれば、バイブを鳴らすことはできました。

ただ、バイブが鳴るタイミングが遅れて鳴ります。
ボタンを押したときにバイブを鳴らしたいのですが、
以下のソースでは、遅れて振動します。

private val clickListener_EXE : View.OnClickListener = View.OnClickListener {
var vibrator = getSystemService(Context.VIBRATOR_SERVICE) as Vibrator1
val pattern = longArrayOf(3000, 1000, 2000, 5000, 3000, 1000) // OFF/ON/OFF/ON...
if (Build.VERSION.SDK_INT >= Build.VERSION_CODES.O) {
vibrator?.vibrate(VibrationEffect.createWaveform(pattern, -1))
} else {
vibrator?.vibrate(pattern, -1)
}
}


2020年8月3日(月) 20:18 Naoyuki Miyata <n.miyat...@gmail.com>:
このディスカッションをウェブ上で閲覧するには https://groups.google.com/d/msgid/android-group-japan/CAB5Gmbc8tn2V%2BvWS6_wPDs8QbLU%2Bz%3DV4vDyUOf4SZTB4itxsvg%40mail.gmail.com にアクセスしてください。
Reply all
Reply to author
Forward
0 new messages