安卓程序 加了个重力感应的应用 就出现了标题的错误。编译通过,在手机上运行就出错了。
手机本身是没问题的,我之前做个类似的程序(手贱源码给删了)。新手真心查不到自己啥地方做错了,还请给位指点下。
具体实现如下import android.hardware.Sensor;
import android.hardware.SensorEvent;
import android.hardware.SensorEventListener;
import android.hardware.SensorManager;public  class MainActivity extends Activity implements SensorEventListener{
 public void SensorActivity() {
        mSensorManager = (SensorManager)getSystemService(SENSOR_SERVICE);
        mAccelerometer = mSensorManager.getDefaultSensor(Sensor.TYPE_ACCELEROMETER);
    }
public void onResume() {

super.onResume();  mSensorManager.registerListener(this, mAccelerometer, SensorManager.SENSOR_DELAY_NORMAL);
}
public void onPause() {
               // 取消注册监听器
 mSensorManager.unregisterListener(this);
super.onPause();
} public void onAccuracyChanged(Sensor sensor, int accuracy) {
 
     }
    
public void onSensorChanged(SensorEvent event) {

      }
}完完全全文档剥下来的  这也会出错==!想请教下 Android如何查看错误呀 那个啥LogCat的 真心看不来。 

解决方案 »

  1.   

    贴上全部的package com.example.blueui;import android.os.Bundle;
    import android.app.Activity;
    import android.view.Menu;
    import android.annotation.SuppressLint;
    import android.app.Activity;
    import android.view.Menu;
    import android.bluetooth.BluetoothAdapter;
    import android.bluetooth.BluetoothDevice;
    import android.bluetooth.BluetoothSocket;
    import android.hardware.Sensor;
    import android.hardware.SensorEvent;
    import android.hardware.SensorEventListener;
    import android.hardware.SensorManager;
    import android.os.Bundle;
    import android.os.Handler;
    import android.view.MotionEvent;
    import android.view.View;
    import android.view.View.OnTouchListener;
    import android.widget.Button;
    import android.widget.ProgressBar;
    import android.widget.SeekBar;
    import android.widget.TextView;
    import android.widget.Toast;
    import java.io.IOException;
    import java.io.InputStream;
    import java.io.OutputStream;
    import java.util.UUID;//import com.ThinBTClient.www.ThinBTClient.MyThread;
    public  class MainActivity extends Activity implements SensorEventListener{
    private static final UUID MY_UUID = UUID.fromString("00001101-0000-1000-8000-00805F9B34FB");
      private static final String TAG = "BLUEUI";
      private static String address = "00:12:10:11:12:62";
      static byte[] ask = { 64, 83, -65 };
      private static byte[] getNumber;
      byte Back = -1;
      int Battery;
    //  int BtnHeight = 100;
     // int BtnWidth = 176;
      byte Direction = -93;
      byte Enter = -65;
      byte Fast = 2;
      byte Head = 64;
      byte Move = -94;
      byte Slow = 1;
      byte Stop = 0;
      int Velocity;
      private BluetoothSocket btSocket = null;
      int count = 0;
      final Handler handler = new Handler();
    //   private SensorEventListener lsn;
      private BluetoothAdapter mBluetoothAdapter = null;
      Button mButtonBack;
      Button mButtonFast;
      Button mButtonSlow;
      Button mButtonStop;   private OutputStream outStream = null;
      ProgressBar progressBar = null;
      SeekBar seekBarPWM;
      private Sensor mAccelerometer;
      private SensorManager mSensorManager;
      TextView textBattery;
      public void DisplayToast(String paramString)
      {
        Toast localToast = Toast.makeText(this, paramString, 1);
        localToast.setGravity(48, 0, 220);
        localToast.show();
      }      @Override
        public void onCreate(Bundle savedInstanceState) {
            super.onCreate(savedInstanceState);
            setContentView(R.layout.activity_main);
     
            this.mBluetoothAdapter = BluetoothAdapter.getDefaultAdapter();
            if (this.mBluetoothAdapter == null)
            {
             Toast.makeText(this, "蓝牙设备不可用,请打开蓝牙!", Toast.LENGTH_LONG).show();
              finish();
              return;
            }
            if (!mBluetoothAdapter.isEnabled()) {
             Toast.makeText(this,  "请打开蓝牙并重新运行程序!", Toast.LENGTH_LONG).show();
             finish();
    // mBluetoothAdapter.enable();
    return;
            }
            
        
        }
        public void SensorActivity() {
            mSensorManager = (SensorManager)getSystemService(SENSOR_SERVICE);
            mAccelerometer = mSensorManager.getDefaultSensor(Sensor.TYPE_ACCELEROMETER);
        }
     
        @Override
    public void onResume() {

    super.onResume();  mSensorManager.registerListener(this, mAccelerometer, SensorManager.SENSOR_DELAY_NORMAL);

    DisplayToast("正在尝试连接智能小车,请稍后····");
            BluetoothDevice device = mBluetoothAdapter.getRemoteDevice(address);        try {           btSocket = device.createRfcommSocketToServiceRecord(MY_UUID);        } catch (IOException e) {             DisplayToast("套接字创建失败!");
            }
            DisplayToast("成功连接智能小车!正在连接套接字");
            mBluetoothAdapter.cancelDiscovery();
            try {                btSocket.connect();
                    DisplayToast("连接成功建立,数据连接打开!");
                          } catch (IOException e) {                try {
                     btSocket.close();                } catch (IOException e2) {                        
                            DisplayToast("连接没有建立,无法关闭套接字!");
                    }
            }
       }

        @Override
    public void onPause() {
    // sensorManager.unregisterListener(lsn); // 取消注册监听器
     mSensorManager.unregisterListener(this);
    super.onPause();
    if (outStream != null) {
    try {
    outStream.flush();
    } catch (IOException e) {
    e.printStackTrace();
    }
    }
    try {
    btSocket.close();

    } catch (IOException e2) { DisplayToast("套接字关闭失败!");
    }
    }
        @Override
        public boolean onCreateOptionsMenu(Menu menu) {
            getMenuInflater().inflate(R.menu.activity_main, menu);
            return true;
        }
     public void onAccuracyChanged(Sensor sensor, int accuracy) {
     
         }
        
    public void onSensorChanged(SensorEvent event) {

          }
    }
        
      

  2.   

    找到错误了  
    public void SensorActivity() {
            mSensorManager = (SensorManager)getSystemService(SENSOR_SERVICE);
            mAccelerometer = mSensorManager.getDefaultSensor(Sensor.TYPE_ACCELEROMETER);
        }
    该在onCreate()里面的。