2010-06-24 13 views
6

Ich habe tatsächlich eine App, die ich mit zwei Geräten testen. Ein LG GW620 und ein Samsung Spica. Ich möchte, wenn Benutzer den Bildschirm berühren, das Gerät vibrieren.Android - Vibrationsgerät funktioniert nicht

In der Tat, auf dem LG GW620 vibriert das Gerät, wenn ich es berühre. Aber auf der Spica nicht ...

Ich suchte nach Einstellungen auf der Spica, aber Vibrator ist zu überprüfen, so verstehe ich nicht, warum es nicht vibriert.

In meiner app ich habe: <uses-permission android:name="android.permission.VIBRATE"></uses-permission>

und im Code:

Vibrator vibrator =(Vibrator)getSystemService(Context.VIBRATOR_SERVICE); 
      vibrator.vibrate(100); 

Aber ich denke, es ist nicht das Beste ist, das zu tun. Ich möchte das Gerät für jeden Klick vibrieren lassen, aber ich weiß nicht, ob ich für jeden OnClick einen Vibrator machen muss? Oder wenn ich nur einen Vibrator für alle Anwendungen machen könnte?
Und vor allem, warum es nicht auf Spica funktioniert?

+14

Dies ist der beste Fragetitel, den ich auf Stack Overflow gesehen habe. Die Komödie! – theorise

+2

Ich bin Französisch, ich habe gerade "Vibrator", weil es so in Android anrufen ... aber ich sehe Vibrator doppelt Bedeutung <_ < – Nanis

+5

Ihre Verwendung ist richtig, aber das hat tatsächlich eine doppelte Bedeutung (mindestens in Amerika). Ich würde mir darüber keine Sorgen machen, die Frage selbst ist klar. – Chimmy

Antwort

4

Lustig. In Ihrem onClick für den Button sollten Sie den Vibrator setzen. Und da es in Millisekunden ist, würde ich für eine halbe Sekunde statt für 0,1 Sekunden etwas wie 500 eingeben.

+0

ok, also muss ich das für jeden button/ImageView meiner anwendung machen? es geht nicht anders ? Weil ich 30 oder 40 Buttons in meiner App habe, wird es sehr lang sein. – Nanis

+1

Wenn Sie das 1.6 SDK (Version 4) verwenden, kann Views eine onClick-Methode in der XML-Datei enthalten. Für jede Schaltfläche können Sie also onClick festlegen, und in Ihrer Aktivität muss die Methode eine eindeutige Übereinstimmung mit onClick (View v) haben, wobei v die Schaltfläche ist, auf die geklickt wird. Für jede Schaltfläche set android: onClick = "onClick", wobei onClick der Name der onClick-Methode in Ihrer Aktivität ist. http://developer.android.com/reference/android/R.attr.html#onClick –

+0

Vielen Dank für Ihre Antwort, das ist hilfreich. Haben Sie eine Idee, warum Spica nicht vibriert, während LG GW620 tut? – Nanis

0

Fast alle Lösungen im Internet scheinen etwas zu vermissen. . (context) hat eine funktionierende Lösung . . .

Vibrator v = (Vibrator) getApplicationContext().getSystemService(Context.VIBRATOR_SERVICE); 
    v.vibrate(100);