使用运行cyanogenmod 7.03的HTC Desire来调试一些新的android蓝牙代码。 我正在使用BluetoothChat项目,只是使用一个按钮来打开/关闭蓝牙......
每次添加影响BluetoothAdapter的内容时,应用程序都会关闭
例如mBluetoothAdapter = BluetoothAdapter.getDefaultAdapter();
if (!mBluetoothAdapter.isEnabled())
导致我的应用程序关闭
这是我的代码,完全来自JocActivity.java - 我的主要和唯一的java文件: 其中很多都被注释掉了,因为我一直在尝试不同的东西,但它的基本设置使得当按下按钮时,会查询Bluetoothadapter。 我试图让Logcat工作,但它还没有告诉我:( 有小费吗? 我认为我的SDK可能是2.2兼容,但我的手机是2.3.3 我下载2.3.3但它的slowwwwww在这里:(
package test.joc;
import android.app.Activity;
import android.bluetooth.BluetoothAdapter;
import android.bluetooth.BluetoothDevice;
import android.content.Context;
import android.content.Intent;
import android.os.Bundle;
import android.util.Log;
import android.view.View;
import android.view.View.OnClickListener;
import android.widget.Button;
import android.widget.Toast;
public class JocActivity extends Activity implements OnClickListener{
/** Called when the activity is first created. */
// Debugging
private static final String TAG = "joc";
private static final boolean D = true;
// Intent request codes
private static final int REQUEST_CONNECT_DEVICE_SECURE = 1;
private static final int REQUEST_CONNECT_DEVICE_INSECURE = 2;
private static final int REQUEST_ENABLE_BT = 3;
// Local Bluetooth adapter
private BluetoothAdapter mBluetoothAdapter = null;
@Override
public void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.main);
Button button = (Button)findViewById(R.id.button1);
button.setOnClickListener(this);
// Get local Bluetooth adapter
mBluetoothAdapter = BluetoothAdapter.getDefaultAdapter();
// If the adapter is null, then Bluetooth is not supported
if (mBluetoothAdapter == null) {
Toast.makeText(this, "Bluetooth is not available", Toast.LENGTH_LONG).show();
finish();
return;
}
}
/* @Override
public void onStart() {
super.onStart();
if(D) Log.e(TAG, "++ ON START ++");
// If BT is not on, request that it be enabled.
// setupChat() will then be called during onActivityResult
if (!mBluetoothAdapter.isEnabled()) {
Intent enableIntent = new Intent(BluetoothAdapter.ACTION_REQUEST_ENABLE);
startActivityForResult(enableIntent, REQUEST_ENABLE_BT);
// Otherwise, setup the chat session
} else {
//if (mChatService == null) setupChat();
Context context = getApplicationContext();
CharSequence text = "Bluetooth enabled!";
int duration = Toast.LENGTH_SHORT;
Toast.makeText(context, text, duration).show();
}
}*/
// Implement the OnClickListener callback
public void onClick(View v) {
// do something when the button is clicked
Context context = getApplicationContext();
int duration = Toast.LENGTH_SHORT;
if(D) Log.e(TAG, "++ ON START ++");
//BluetoothAdapter.enable();
//Intent enableIntent = new Intent(BluetoothAdapter.ACTION_REQUEST_ENABLE);
//InstanceOfAnActivity.startActivity(enableIntent);
/*Intent btIntent = new Intent(BluetoothAdapter.ACTION_REQUEST_ENABLE);
btIntent.addFlags(Intent.FLAG_ACTIVITY_NEW_TASK);
context.startActivity(btIntent);*/
// If BT is not on, request that it be enabled.
// setupChat() will then be called during onActivityResult
// Get local Bluetooth adapter
mBluetoothAdapter = BluetoothAdapter.getDefaultAdapter();
if (!mBluetoothAdapter.isEnabled()) {/*
Intent enableIntent = new Intent(BluetoothAdapter.ACTION_REQUEST_ENABLE);
startActivityForResult(enableIntent, REQUEST_ENABLE_BT);
Toast.makeText(context, "Bluetooth Enabled", duration).show();
// Otherwise, setup the chat session
} else {
//if (mChatService == null) setupChat();*/
Toast.makeText(context, "Ready", duration).show();
}
}
}