1

皆さん、私はまだ Android と Java の初心者ですが、これまで見てきたすべてのことから、これは完全に機能するはずですが、機能しません! エミュレーターではなく、電話では.. vibrate(500); を使用してバイブレーターを使用しようとしています。..「アプリケーションが予期せず停止しました」というエラーが表示される

私は何が欠けていますか?

以下のコード:

package com.phys;

import android.app.Activity;
import android.content.Context;
import android.os.Bundle;
import android.os.Vibrator;
import android.view.View;
import android.view.View.OnClickListener;
import android.widget.Button;
import android.widget.TextView;

public class phys extends Activity {

 Vibrator vibr;
 Button but;
 TextView txt;
 int counter = 0;

    /** Called when the activity is first created. */
    @Override
    public void onCreate(Bundle savedInstanceState) {
        super.onCreate(savedInstanceState);
        setContentView(R.layout.main);

        vibr = (Vibrator)getSystemService(Context.VIBRATOR_SERVICE);
        but = (Button)findViewById(R.id.Button01);
        txt = (TextView)findViewById(R.id.txt);
        but.setOnClickListener(clk);
    }

    OnClickListener clk = new OnClickListener(){

  @Override
  public void onClick(View v) {
   // TODO Auto-generated method stub
   txt.setText(Integer.toString(counter));
   //do something else
   vibr.vibrate(500);
   counter++;
  }

    };
}
4

1 に答える 1

14

、DDMS、または Eclipse の DDMS パースペクティブを使用adb logcatして LogCat を確認し、「アプリケーションが予期せず停止しました」エラーに関連するスタック トレースを調べます。これにより、どこが間違っているかについての詳細情報が得られます。

問題は、VIBRATE許可がないことだと思います。その場合は、これを<manifest>要素の子としてAndroidManifest.xmlファイルに追加します。

<uses-permission android:name="android.permission.VIBRATE"/>
于 2010-08-30T22:16:55.860 に答える