Back to project page bluetooth-spp-terminal.
The source code is released under:
Apache License
If you think the Android project bluetooth-spp-terminal listed in this page is inappropriate, such as containing malicious code/tools or violating the copyright, please email info at java2s dot com, thanks.
package ru.sash0k.bluetooth_terminal.activity; //from w w w . ja va 2s .c o m import android.app.AlertDialog; import android.bluetooth.BluetoothAdapter; import android.content.Intent; import android.os.Bundle; import com.actionbarsherlock.app.SherlockActivity; import ru.sash0k.bluetooth_terminal.R; import ru.sash0k.bluetooth_terminal.Utils; /** * ????? ??????? ???????. ?????????????? BT-???????? * Created by sash0k on 09.12.13. */ public abstract class BaseActivity extends SherlockActivity { // Intent request codes static final int REQUEST_CONNECT_DEVICE = 1; static final int REQUEST_ENABLE_BT = 2; // Message types sent from the DeviceConnector Handler public static final int MESSAGE_STATE_CHANGE = 1; public static final int MESSAGE_READ = 2; public static final int MESSAGE_WRITE = 3; public static final int MESSAGE_DEVICE_NAME = 4; public static final int MESSAGE_TOAST = 5; BluetoothAdapter btAdapter; private static final String SAVED_PENDING_REQUEST_ENABLE_BT = "PENDING_REQUEST_ENABLE_BT"; // do not resend request to enable Bluetooth // if there is a request already in progress // See: https://code.google.com/p/android/issues/detail?id=24931#c1 boolean pendingRequestEnableBt = false; // ========================================================================== @Override protected void onCreate(Bundle state) { super.onCreate(state); getSupportActionBar().setHomeButtonEnabled(false); if (state != null) { pendingRequestEnableBt = state.getBoolean(SAVED_PENDING_REQUEST_ENABLE_BT); } btAdapter = BluetoothAdapter.getDefaultAdapter(); if (btAdapter == null) { final String no_bluetooth = getString(R.string.no_bt_support); showAlertDialog(no_bluetooth); Utils.log(no_bluetooth); } } // ========================================================================== @Override public void onStart() { super.onStart(); if (btAdapter == null) return; if (!btAdapter.isEnabled() && !pendingRequestEnableBt) { pendingRequestEnableBt = true; Intent enableIntent = new Intent(BluetoothAdapter.ACTION_REQUEST_ENABLE); startActivityForResult(enableIntent, REQUEST_ENABLE_BT); } } // ========================================================================== @Override public synchronized void onResume() { super.onResume(); } // ========================================================================== @Override public synchronized void onPause() { super.onPause(); } // ========================================================================== @Override protected void onSaveInstanceState(Bundle outState) { super.onSaveInstanceState(outState); outState.putBoolean(SAVED_PENDING_REQUEST_ENABLE_BT, pendingRequestEnableBt); } // ========================================================================== /** * ???????? ???????? * * @return - true, ????? ????? ? ?????? */ boolean isAdapterReady() { return (btAdapter != null) && (btAdapter.isEnabled()); } // ========================================================================== /** * ?????????? ?????????? ???? ?? ???????????????. * TODO: ??? ?????????????????? ????? ??????????? * * @param message - ?????????? */ void showAlertDialog(String message) { AlertDialog.Builder alertDialogBuilder = new AlertDialog.Builder(this); alertDialogBuilder.setTitle(getString(R.string.app_name)); alertDialogBuilder.setMessage(message); AlertDialog alertDialog = alertDialogBuilder.create(); alertDialog.show(); } // ========================================================================== }