0

我正在尝试从优秀的“低功耗蓝牙入门”一书中改编一个例子。

这是他们的MainActivity.java,这是他们的res/menu/main.xml

<item android:id="@+id/action_scan" 
    android:showAsAction="always" 
    android:title="Scan"></item>

<item android:id="@+id/action_stop" 
    android:showAsAction="always" 
    android:title="Stop"></item>

但是,在我自己的应用程序中,我想将其ListActivity用作 main 的基MainActivity.java类(因为我想在该主列表中显示找到的蓝牙设备)。

这导致我的应用程序崩溃并显示模糊的错误消息:

java.lang.RuntimeException:无法启动活动 ComponentInfo{de.afarber.mynotification/de.afarber.mynotification.MainActivity}:java.lang.NullPointerException

我想这是因为我希望“扫描”和“停止”按钮显示在 中ActionBar,但我没有ActionBarActivity用作基类。

有没有办法解决它并仍然使用ListActvivity

4

1 回答 1

0

好的,我在创建它之前尝试使用mBlewWrapper它:-)

if (mBleWrapper.checkBleHardwareAvailable() == false) {
    Toast.makeText(this, 
                   R.string.no_ble_hardware, 
                   Toast.LENGTH_LONG).show();
    finish();
}       

mBleWrapper = new BleWrapper(this, new BleWrapperUiCallbacks.Null() {
    @Override
    public void uiDeviceFound(final BluetoothDevice device, 
                              final int rssi, 
                              final byte[] record) {
        Log.d("uiDeviceFound", device.getName()+", "+
              rssi+", "+record.toString());
    }
});  

感谢 CommonWare 的评论并 +1。

于 2014-12-14T12:08:51.640 回答