Я хочу подключиться к MI Band 2 автоматически при втором открытии приложения - PullRequest
0 голосов
/ 03 февраля 2019

Проблема в том, что каждый раз, когда я открываю свое приложение и хочу получить данные из MI Band 2, мне приходится нажимать кнопку MI Band 2, чтобы дать разрешение на сопряжение.Я хотел бы, чтобы касание кнопки давало разрешения только при первом открытии приложения, а при следующем открытии приложения MI Band 2 подключается автоматически. Спасибо.Я даю вам код ниже MainActivity.

    public class MainActivity extends AppCompatActivity implements BTMIBand2Helper.BLEAction {

    public String macSelectedDevice;
    Button btn_test,btn_test2,btn_test3;
    Handler handler = new Handler(Looper.getMainLooper());
    BTMIBand2Helper bthelper = null;

    private BottomNavigationView.OnNavigationItemSelectedListener mOnNavigationItemSelectedListener
    = new BottomNavigationView.OnNavigationItemSelectedListener() {

@Override
public boolean onNavigationItemSelected(@NonNull MenuItem item) {

    Fragment fragment = null;
    int i = item.getItemId();

    if (i == R.id.navigation_home) {
        fragment = new MIPulsera().newInstance();
    } else if (i == R.id.navigation_dashboard) {
        fragment = new Explorar().newInstance();
    } else if (i == R.id.navigation_notifications) {
        fragment = new Ajustes().newInstance();
    }

    if (fragment != null) {
        replaceFragment(fragment);
        return true;
    }

    return false;
}
    };



    @Override
    protected void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.activity_main);

BottomNavigationView navigation = (BottomNavigationView) findViewById(R.id.navigation);
                                navigation.setOnNavigationItemSelectedListener(mOnNavigationItemSelectedListener);

btn_test = (Button) findViewById(R.id.btn_test);
btn_test2 = (Button) findViewById(R.id.btn_test2);
btn_test3 = (Button) findViewById(R.id.btn_test3);

Bundle extras = getIntent().getExtras();
if (extras != null) {
    macSelectedDevice = extras.getString("MAC");
}

firstReplaceFragment();

bthelper = new BTMIBand2Helper(MainActivity.this, handler);
bthelper.addListener(this);
bthelper.connect(macSelectedDevice);

btn_test.setOnClickListener(new View.OnClickListener() {
    @Override
    public void onClick(View view) {
        bthelper.RequestAuthentication();
    }
});
btn_test2.setOnClickListener(new View.OnClickListener() {
    @Override
    public void onClick(View view) {
        bthelper.SendTextNotification("Izquierda");
    }
});

btn_test3.setOnClickListener(new View.OnClickListener() {
    @Override
    public void onClick(View view) {
        bthelper.SendTextNotification("Derecha");
    }
});

    }

    private void firstReplaceFragment() {
android.support.v4.app.FragmentTransaction fragmentTransaction =         getSupportFragmentManager().beginTransaction();
fragmentTransaction.replace(R.id.frame_layout,new MIPulsera().newInstance());
fragmentTransaction.commit();
    }

    private void replaceFragment(android.support.v4.app.Fragment fragment) {
android.support.v4.app.FragmentTransaction fragmentTransaction = getSupportFragmentManager().beginTransaction();
fragmentTransaction.replace(R.id.frame_layout,fragment);
fragmentTransaction.commit();
    }

    @Override

    public void onNotification(BluetoothGatt bluetoothGatt,         BluetoothGattCharacteristic characteristic){

UUID alertUUID = characteristic.getUuid();

if(alertUUID.equals(MIBand2Constants.UUID_BUTTON)){
    handler.post(new Runnable() {
        @Override
        public void run() {
            Toast.makeText(MainActivity.this, "Touch Button", Toast.LENGTH_LONG).show();
        }
    });
}

    }
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...