package com.dosse.airpods.ui; import android.bluetooth.BluetoothAdapter; import android.bluetooth.BluetoothManager; import android.content.Context; import android.content.Intent; import android.content.pm.PackageManager; import android.os.Bundle; import android.view.Menu; import android.view.MenuItem; import androidx.annotation.NonNull; import androidx.appcompat.app.AppCompatActivity; import com.dosse.airpods.R; import com.dosse.airpods.receivers.StartupReceiver; import com.dosse.airpods.utils.MIUIWarning; import com.dosse.airpods.utils.PermissionUtils; import java.util.Objects; public class MainActivity extends AppCompatActivity { @Override protected void onCreate(Bundle savedInstanceState) { super.onCreate(savedInstanceState); setContentView(R.layout.activity_main); // Check if Bluetooth LE is available on this device. If not, show an error BluetoothAdapter btAdapter = ((BluetoothManager)Objects.requireNonNull(getSystemService(Context.BLUETOOTH_SERVICE))).getAdapter(); if (btAdapter == null || (btAdapter.isEnabled() && btAdapter.getBluetoothLeScanner() == null) || (!getPackageManager().hasSystemFeature(PackageManager.FEATURE_BLUETOOTH_LE))) { startActivity(new Intent(MainActivity.this, NoBTActivity.class)); finish(); return; } if (!PermissionUtils.checkAllPermissions(this)) { startActivity(new Intent(MainActivity.this, IntroActivity.class)); finish(); } else { StartupReceiver.startPodsService(getApplicationContext()); //Warn MIUI users that their rom has known issues MIUIWarning.show(this); } } @Override public boolean onCreateOptionsMenu(Menu menu) { getMenuInflater().inflate(R.menu.menu_main, menu); return true; } @Override public boolean onOptionsItemSelected(@NonNull MenuItem item) { if (item.getItemId() == R.id.menu_ab_settings) { startActivity(new Intent(this, SettingsActivity.class)); // Settings icon clicked return true; } return false; } }