package com.beemdevelopment.aegis.services; import android.annotation.SuppressLint; import android.app.PendingIntent; import android.content.Intent; import android.os.Build; import android.service.quicksettings.Tile; import android.service.quicksettings.TileService; import androidx.annotation.RequiresApi; import com.beemdevelopment.aegis.ui.MainActivity; @RequiresApi(api = Build.VERSION_CODES.N) public class LaunchScannerTileService extends TileService { @Override public void onStartListening() { super.onStartListening(); Tile tile = getQsTile(); if (tile != null) { tile.setState(Tile.STATE_INACTIVE); tile.updateTile(); } } @SuppressLint("StartActivityAndCollapseDeprecated") @Override public void onClick() { super.onClick(); Intent intent = new Intent(this, MainActivity.class); intent.putExtra("action", "scan"); intent.addFlags(Intent.FLAG_ACTIVITY_NEW_TASK | Intent.FLAG_ACTIVITY_CLEAR_TASK); intent.setAction(Intent.ACTION_MAIN); if (Build.VERSION.SDK_INT >= Build.VERSION_CODES.UPSIDE_DOWN_CAKE) { int flags = PendingIntent.FLAG_UPDATE_CURRENT | PendingIntent.FLAG_IMMUTABLE; PendingIntent pendingIntent = PendingIntent.getActivity(this, 0, intent, flags); startActivityAndCollapse(pendingIntent); } else { startActivityAndCollapse(intent); } } }